• Struts2初体验


    1.使用Struts 2 开发程序的基本步骤

      加载Struts2 类库

      配置web.xml文件

         开发视图层页面

      开发控制层Action

      配置struts.xml文件

         部署、运行项目

     步骤1: 配置web.xml文件

      <filter>

        <filter-name>struts2</filter-name>

        <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>

      </filter>

      <filter-mapping>

         <filter-name>struts2</filter-name>

         <!-- 拦截所有的action -->

         <url-pattern>/*</url-pattern>

      </filter-mapping>

      

    步骤2:在src下创建名称为struts.xml的配置文件

    <?xml version="1.0" encoding="UTF-8" ?>

    <!DOCTYPE struts PUBLIC

    "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"

    "http://struts.apache.org/dtds/struts-2.3.dtd">

    <struts>

        <!-- 配置文件中只要添加以下配置,那么以后修改配置文件不用重启tomcat -->

        <constant name="struts.devMode" value="true" />

        <package name="default" namespace="/" extends="struts-default">

            <!-- 第一个action的例子 -->

            <action name="helloWorld" class="cn.happy.action.HelloWorldAction">

                <result name="success">

                   index.jsp

                </result>

            </action>

            <!-- 登录的action -->

        </package>

        <!-- Add packages here -->

    </struts>

    步骤3:编写HelloWorldAction

    package cn.happy.action;

    import com.opensymphony.xwork2.Action;

    public class HelloWorldAction implements Action{

    private String name ;

    private String message;

    public String execute() throws Exception {

    setMessage("Hello"+getName());

    return "success";

    }

    }

    步骤4:创建index.jsp页面

     <div>

    <h1>

    <!--显示Struts Action中message的属性内容-->

    <s:property value="message"/>

    </h1>

    </div>

    <div>

    <form action="helloWorld.action" method="post"

    请输入您的姓名:

    <input name="name" type="text" />

    <input type="submit" value="提交" />

    </form>

    </div>

    步骤5:通过浏览器访问

    2.登录案例强化:关于自动装配问题

       在开发中,通常会以JavaBean方式保存数据。所以可以有如下写法

    Action

    Jsp页面

    3.Struts2 访问servlet API

    servlet中可以通过servlet API来获取Session,在Struts中如何获取Session呢?

        解析:将用户名放入session 两种方案

    1. Servlet API解耦的访问方式

        --->01.使用ActionContext类获取ServletAPI对象对应的Map对象

        --->02.Struts2Action注入ServletAPI对象对应的Map对象

    2. Servlet API耦合的访问方式

    解耦方式:

    方案一: Servlet API进行封装   ,借助ActionContext

    提供了三个Map对象访问requestsessionapplication作用域

    通过ActionContext类获取这三个Map对象

    Object get("request")

    Map getSession()

    Map getApplication()

             案例:登录成功后,记录用户名到Session中,登录失败,跳会登录页面

             步骤一:书写Action

     

         方案二:向Action中注入ServletAPI对象对应的Map对象

           步骤一:书写Action

        

       耦合方式:

          方式一:通过ActionContext的子类ServletActionContext实现

     

    方式二:向Action实例注入Servlet API对象

     

    02.Struts中如何保存登陆用户名 ,用Session机制

    解析:在Servlet中如何获取到Session对象?

          ----->request.getSession()

    Struts中如何获取session对象

     --->ActionContext

    Struts中通过注入,核心接口 SessionAwaresetSession(Map<String,Object> map);

  • 相关阅读:
    javascript 下拉列表 自动取值 无需value
    gopkg:一种方便的go pakcage管理方式
    编译GDAL使用最新的HDF库配置文件
    leetcode:程序员面试技巧
    【Unity Shader实战】卡通风格的Shader(一)
    GDAL1.11版本对SHP文件索引加速测试
    【Unity Shaders】Shader学习资源和Surface Shader概述
    关于rowid的函数
    java基本类型的大小
    【转载】oracle之rowid详解
  • 原文地址:https://www.cnblogs.com/dongyuhan/p/7709976.html
Copyright © 2020-2023  润新知