Struts2

匿名 (未验证) 提交于 2019-12-02 23:32:01

Struts2

个人总结:

跟servlet很相似,servlet是在web.xml里面配置,在XXXservlet类里写具体实现-----取调转

Struts2 是在 web.xml声明核心过滤器,具体的配置写在struts.xml里面,而具体实现写在action类里面,套路差不多,只是要注意写业务逻辑代码

 

使用框架步骤

一、新建web项目

二、添加Struts2框架支持文件

添加jar包

 

 

三、新建jsp页面

引入Struts标签库

<%@taglib prefix="s" uri="/struts-tags" %>

 

四、在web.xml中添加过滤器

<!-- struts2 核心过滤器 -->     <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>         <url-pattern>*.action</url-pattern>     </filter-mapping>

 

 

五、创建业务控制器XXXAction类

1、struts2可以在action中自动获得从页面传过来的值,前提是页面的传值的名称要在action类里面先声明变量,添加set、get方法。set是获得页面传的值,get是输出到页面显示。

2、调用action类里的方法

  •   在页面中可以用动态调用来分别调用action类里的不同方法。

页面跳转地址:  action = userAction!login.action

Web.xml里面配过滤器

<filter-mapping>        <filter-name>struts2</filter-name>        <url-pattern>*.action</url-pattern>  </filter-mapping>

 

  • 通配符来调用action类里的不同方法

页面跳转地址: action = loginAction!Login

在struts.xml里面

<action name="*Action" class="action.UserAction"method=”{1}”>      <resultname="success">/{1}_list.jsp</result>  </action>

 

六、编写struts.xml配置文件

<!DOCTYPE struts PUBLIC  "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"  "http://struts.apache.org/dtds/struts-2.0.dtd">     <struts>  <include file="struts-default.xml"/>           <constant name="struts.enable.DynamicMethodInvocation" value="true"></constant>  <package name="user" namespace="/" extends="struts-default">     <action name="userAction" class="action.UserAction">    <result name="loginError">/login.jsp</result>    <result name="success">/list.jsp</result>    <result name="update">/update.jsp</result>  </action>     </package>  </struts>

 

 

S标签:

<s:formaction="userAction!insert.action"method="post">

        <s:textfieldname="user.username"label="用户名"></s:textfield>

        <s:textfieldname="user.userpassword"label="用户密码"></s:textfield>

        <s:selectlist="groupList"label="部门"

                listKey="id"listValue="groupname"

                name="group.id">

        </s:select>

        <!-- select标签传值貌似不能直接传对象,我是传了对象的ID值过去在根据ID值查到这个对象在处理 -->

        <s:checkboxlistlist="roleList"label="角色"

                listKey="id"listValue="rolename"

                name="roleListArray"value="role"    >

        </s:checkboxlist>

        <!-- s:checkboxlist 传过去的是一个数组,数组的值默认是listKey的值 -->

        <s:submitvalue="submit"align="right"></s:submit>

    </s:form>

 

转载请标明出处:Struts2
文章来源: Struts2
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!