struts基础
2016-09-08 19:36
176 查看
一, 搭建环境
1, 引入包
直接拖到lib中
build path引入包, 注意添加到deploymentassembly中
2, 添加前端控制器, 中心控制器 web.xml , 一个过滤器
3, 添加struts.xml
<?xmlversion="1.0" encoding="UTF-8" ?>
<!DOCTYPEstruts PUBLIC
"-//Apache Software Foundation//DTDStruts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<constantname="struts.enable.DynamicMethodInvocation" value="false"/>
<constantname="struts.devMode" value="true" />
<package name="default"namespace="/" extends="struts-default">
<actionname="userLogin"class="com.chinasofti.action.UserLoginAction"
method="login">
<resultname="success">success.jsp</result>
<resultname="failed">failed.jsp</result>
</action>
</package>
</struts>
4,添加一个Action , 可以是一个普通的java类
http://localhost:8888/day1-hellostruts/userLogin.action
/userLogin.action
/代表命名空间
userLogin.action action名称为userLogin-->
<actionname="userLogin"class="com.chinasofti.action.UserLoginAction"
method="login">
<resultname="success">success.jsp</result>
<resultname="failed">failed.jsp</result>
</action>
二,Action
1, 如何创建
普通的JAVA类
实现接口Action,重写execute方法
继承ActionSupport(现实开发中用这个)
可以使用struts框架提供的功能, 如:验证框架, 国际化。。。
当action配置中没有指定class时, 默认执行ActionSupport中的execute方法, 返回success
2, 作用
控制器: 中心控制器(web.xml中配置的StrutsPrepareAndExecuteFilter), 业务控制器(action)
Action业务控制器作用:
控制业务流程,调用真正业务处理层service
返回一个结果字符串,由中心控制器协调跳转
方法处理参数
3, 如何接收参数
用Action属性 (常用之一)
属性名要跟表单元素名称一致
提供setter, getter方法
用javabean(最常用的)
bean一定要有一个无参构建器, struts会自动构建对象
里面的属性必须提供 setter, getter方法
前台页面表单元素命名使用: entity.属性名 假设BEAN变量名称为entity
通过拦截器注入参数的
Action实现ModelDriver接口, 重写getModel() 方法
在方法中,实例化实体类, 提供属性, 不需setter, getter(了解就好)
4, method
一个Action可以有多个业务方法,会在struts.xml配置多个action
可以使用通配符 *
<!-- user_login 调用下面这个action中的login方法 user_register 调用下面这个action中的register方法
通过配置多个不同的result作为不同的方法的处理结果页面
-->
<action name="user_*"class="com.chinasofti.house.controller.UserAction"method="{1}">
<result name="success">houselist.do</result>
<resultname="failed">register.jsp</result>
<resultname="register">login.jsp</result>
</action>
5, 动态方法调用
DMI-- Dynamic Method Invocation
只需要配置一个action,里面有多个方法
启用动态调用--常量进行配置, 所有常量在struts2-core-xxx-jar 包中的org-apache-struts2 下面的default.properties文件中
struts.enable.DynamicMethodInvocation = true
action映射名称!方法名.action 调用: user!login.action user!register.action
1, 引入包
直接拖到lib中
build path引入包, 注意添加到deploymentassembly中
2, 添加前端控制器, 中心控制器 web.xml , 一个过滤器
3, 添加struts.xml
<?xmlversion="1.0" encoding="UTF-8" ?>
<!DOCTYPEstruts PUBLIC
"-//Apache Software Foundation//DTDStruts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<constantname="struts.enable.DynamicMethodInvocation" value="false"/>
<constantname="struts.devMode" value="true" />
<package name="default"namespace="/" extends="struts-default">
<actionname="userLogin"class="com.chinasofti.action.UserLoginAction"
method="login">
<resultname="success">success.jsp</result>
<resultname="failed">failed.jsp</result>
</action>
</package>
</struts>
4,添加一个Action , 可以是一个普通的java类
http://localhost:8888/day1-hellostruts/userLogin.action
/userLogin.action
/代表命名空间
userLogin.action action名称为userLogin-->
<actionname="userLogin"class="com.chinasofti.action.UserLoginAction"
method="login">
<resultname="success">success.jsp</result>
<resultname="failed">failed.jsp</result>
</action>
二,Action
1, 如何创建
普通的JAVA类
实现接口Action,重写execute方法
继承ActionSupport(现实开发中用这个)
可以使用struts框架提供的功能, 如:验证框架, 国际化。。。
当action配置中没有指定class时, 默认执行ActionSupport中的execute方法, 返回success
2, 作用
控制器: 中心控制器(web.xml中配置的StrutsPrepareAndExecuteFilter), 业务控制器(action)
Action业务控制器作用:
控制业务流程,调用真正业务处理层service
返回一个结果字符串,由中心控制器协调跳转
方法处理参数
3, 如何接收参数
用Action属性 (常用之一)
属性名要跟表单元素名称一致
提供setter, getter方法
用javabean(最常用的)
bean一定要有一个无参构建器, struts会自动构建对象
里面的属性必须提供 setter, getter方法
前台页面表单元素命名使用: entity.属性名 假设BEAN变量名称为entity
通过拦截器注入参数的
Action实现ModelDriver接口, 重写getModel() 方法
在方法中,实例化实体类, 提供属性, 不需setter, getter(了解就好)
4, method
一个Action可以有多个业务方法,会在struts.xml配置多个action
可以使用通配符 *
<!-- user_login 调用下面这个action中的login方法 user_register 调用下面这个action中的register方法
通过配置多个不同的result作为不同的方法的处理结果页面
-->
<action name="user_*"class="com.chinasofti.house.controller.UserAction"method="{1}">
<result name="success">houselist.do</result>
<resultname="failed">register.jsp</result>
<resultname="register">login.jsp</result>
</action>
5, 动态方法调用
DMI-- Dynamic Method Invocation
只需要配置一个action,里面有多个方法
启用动态调用--常量进行配置, 所有常量在struts2-core-xxx-jar 包中的org-apache-struts2 下面的default.properties文件中
struts.enable.DynamicMethodInvocation = true
action映射名称!方法名.action 调用: user!login.action user!register.action
相关文章推荐
- myeclipse安装SVN插件
- Struts2 自定义拦截栈
- java内存模型
- [转]Spring事务管理(详解+实例)
- Java制作证书的工具keytool用法总结
- Spring基础
- 史上最全最强SpringMVC详细示例实战教程
- SSM框架—详细整合教程(Spring+SpringMVC+MyBatis)
- Java中写文件操作
- 使用java 编程的注解的方式定制spring security
- java中通过IO流实现文件的复制
- 动态添加jar包并调用jar包里面的方法
- Java死锁的排查
- 第03章:java数据类型
- JAVA基础6.44——单例设计模式
- JNI开发第二篇通过反射实现C中调用java代码,并实现Log打印日志
- java的final用法
- netty-4.1.4 eventgroup相关类图
- Spring mvc 实例 --JSTL结合EL实现JSP获取后台List回显界面
- Eclipse 下载 开源项目 maven依赖丢失和 Deployment Assembly 丢失