struts的action属性自动注入原理

拦截器+反射,就是在request到达后台处理程序之间,加一层拦截器,截获到request对象,就可以通过 request.getParameters()获取请求参数,然后通过请求URL可以得知你要请求的是哪个action类的哪个方法,然后你 action中定义了跟request请求参数名称同名的属性,并提供get set,那么通过java反射机制调用action类的响应属性的set方 法就可以把参数值设置进去,也就是所谓的“action属性自动注入”。

时间: 2024-10-29 19:07:29

struts的action属性自动注入原理的相关文章

使用SMM框架开发企业级应用-----Spring集合注入和域属性自动注入byName和byType

Spring集合的注入 步骤一:导入依赖 步骤二:创建实体类 步骤三:创建大配置文件 步骤四:测试 域属性自动注入 byName与byType 步骤一:创建两个实体类 public class Student { private Integer stuid; private String stuName; private Teacher teacher; public Teacher getTeacher() { return teacher; } public void setTeacher(

Spring Boot自动注入原理

启用自动注入 使用注解@EnableAutoConfiguration开启自动注入功能. @EnableAutoConfiguration @AutoConfigurationPackage @Import(AutoConfigurationImportSelector.class) public @interface EnableAutoConfiguration { // ignore... } @AutoConfigurationPackage @Import(AutoConfigurat

spring的两种属性注入方式setter注入和构造器注入或者自动注入

1.这里的属性自动注入,与注解配置bean是两回事.这里的自动注入,指的是bean属性的自动注入. bean属性自动注入,包括byNAme和ByType两码事. 2.所有的applicationContext都实现了resourceLoader接口,通过resourceLoader可以获得resource实例,进而可以访问资源文件. 所以要在类中获得resource实例,必须实现applicationContextAware接口.

java的反射原理与Spring的自动注入(转载)

Java反射原理与Spring的自动注入 反射的定义 java的反射机制就是在运行状态中, 对于任意一个类都能够知道这个类的所有属性和方法; 对于任意一个对象,都能够调用它的任意一个方法和属性. 这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制. Sping的自动注入原理 一个Bean的类: public class User{ private String username; private String mobile; public String getUsernam

struts2与spring集成时,关于class属性及成员bean自动注入的问题

正常来说按照Spring官方配置,在struts2与spring整合时,struts配置文件中class属性指向spring配置的bean id,但是在class指向类路径时,依然能注入service. public class LoginAction extends ActionSupport{ private LoginService loginService; public void setLoginService(LoginService loginService) { System.o

struts2_4_为Action属性注入值

Struts2为Action中的属性提供了依赖注入功能,在struts2的配置文件中,可以为Action中的属性注入值,属性必须提供setter方法. 1)employeeAction类: public class employeeAction { private String savePath; public String getSavePath() { return savePath; } public void setSavePath(String savePath) { this.sav

spring mvc:属性无法自动注入

在使用spring mvc 3开发一个项目模块时,遇到这样一个奇怪的问题: 前端页面发送的请求中,所有参数都无法自动注入到指定的@ModelAttribute对象中,经过检查,参数名称与接受对象的属性名称保持一致. 测试其它类似的模块时发现并未出现同样的情况,说明后端应该是正常的,问题出现在前端. 经检查,该模块前端使用异步(ajax)的方式传递参数,设置了request的content-type为application/json,去除这个设置后正常.

struts之动态方法调用改变表单action属性

一.动态方法调用(DMI:Dynamic Method Invocation) ⒈struts2中同样提供了这个包含多个逻辑业处理的Action,这样就可以在一个Action中进行多个业务逻辑处理.例如:当用户通过不同的提交按钮来提交同一个表单的时候,系统通过不同的方法来处理用户不同的请求,这时候就需要让同一个Action中包含有多个控制处理的逻辑. ⒉动态方法调用有: ①.改变struts.xml中的action中的method属性. ②.改变form表单中的action属性来改变不同提交的请

action属性注入为null

一. 问题: 今天调试代码遇到问题,使用spring管理action,其中注入了部分原始类型的属性.配置示例如下: <bean class="test.login.test.LoginAction"> <property name="targetDomainUrl" value="www.test.com"/> <property name="loginUrl" value="login