解读struts.xml文件自动加载方法的方式以及service层的自动注入
来源:互联网 发布:圣诞节怎么过知乎 编辑:程序博客网 时间:2024/06/12 23:45
关于动态调用action类中的方法
(如果不动态调用,那么就是默认调用action类中的execute()方法)方式一:
配置文件不用改,但是请求的路径要改为:action类名+!+方法名+.action比如,UserAction中有一个login方法,那么请求路径(表单中的action值)为:user!login.action
方式二:
需要修改配置文件,假设UserAction中有一个login方法,那么<action>节点就要加一个属性method,值等于login<action name="user" class="cn.struts2.action.UserAction" method="login"> ....(result节点) </action>
方式三:
使用通配符的方式,比如:<action name="user_*" class="cn.struts2.action.UserAction" method="{1}">
这里的*是通配符,可以匹配任意字符,而method的值{1}就是*的内容,
比如页面请求user_login.action,那么{1}就等于login,就是说method="login",那么根据第二种方式,就会执行UserAction中的login方法
同样,通配符可以用多个,
<action name="*_*" class="cn.struts2.action.UserAction" method="{2}">
页面上请求user_login同样可以调用login方法,但是这里method={2},通配符是匹配的字符串,
这里第一个*相当于user,第二个*相当于login,所以method="{2}"
所以,当请求的方法是第n个*的内容时,method={n}
spring配置 在*Action中自动注入service层中相应的*Service
(在application-core.xml文件中加入AOP编程添加事物)
<bean id="loginService" class="org.xxxxx.services.impl.LoginServiceImpl"></bean>
<bean id="loginAction" class="org.xxxxx.action.LoginAction">
</bean>
struts配置
<action name="login" class="org.xxxxx.action.LoginAction">
<result name="success">/result.jsp</result>
<result name="error">/login.jsp</result>
</action>
注意看以上两个红线部分,在struts.xml中action指定的class像上面这种方式指定全类路径名的话,这时,不论spring配置文件中的<bean id="loginAction" class="org.xxxxx.action.LoginAction"></bean>有没有指定<property name="loginService" ref="loginService"/>,只要有<bean id="loginService" .../>存在,并且这个ID的名字与Action中成员bean的名字一致,当实例化Action类时,会一并将loginService的实例注入
如果<action name="login" class="loginAction">这里的class指定spring配置文件中的bean的id,则不会出现loginService自动注入问题,而是根据<bean id="loginAction" class="org.xxxxx.action.LoginAction"></bean>有没有指定<property name="loginService" ref="loginService"/>来决定,有<property name="loginService" ref="loginService"/>的指定,则实例化Action类时,会一并将loginService实例注入,没有配置property,loginService则为空
- 解读struts.xml文件自动加载方法的方式以及service层的自动注入
- 【mybatis】mapper.xml文件自动扫描注入的方法
- struts2中的配置文件的<constant>标签(struts.xml自动加载)
- MyEclipse中配置struts.xml自动提示的方法
- MyEclipse中配置struts.xml自动提示的方法
- MyEclipse中配置struts.xml自动提示的方法
- 使用反射机制调用service层方法Autowired标签自动注入失败
- java-spring与mongodb的整合方式一 自动注入xml
- 自动注入properties文件 @Value的使用
- android自动加载模块.ko文件的小方法
- android自动加载模块.ko文件的小方法
- struts通过spring自动注入产生的错误
- 自动生成bean层dao层以及xml层工具
- tomcat自动加载应用程序的web.xml
- spring的applicationContext.xml如何自动加载
- 自动加载ThinkPHP的类库方式
- Spring的自动注入
- spring ioc容器注入的集中方式,以及属性注入的集中依赖,继承,使用SPEL表达式,ioc容器的生命周期,bean的几种工厂方法配置方式,bean的自动装配
- Hadoop编程、分布式文件系统结构与设计
- 回忆在iOS开发中常常使用的工具
- JS 父窗体与子窗体调用总结
- mkfs.ubifs和ubinize两个工具后,就可以制作UBIFS镜像了
- java中static{}语句块详解
- 解读struts.xml文件自动加载方法的方式以及service层的自动注入
- GWT整合JSP案例
- ORM中数据类型的无缝转换
- png图片里加自定义数据
- Hadoop小结
- 微信公众帐号开发教程第5篇-各种消息的接收与响应
- 游戏备案流程与所需材料是什么?
- 黑马程序员-----java内部类总结*
- android ViewFlipper的使用