`

Spring配置文件中传值

阅读更多

通过spring提供方法,在配置文件中取传值

 

  • 调用get方法 

      targetObject :指定调用的对象

      propertyPath:指定调用那个getter方法

    例1:

public class Test1 {

	private String name = "nihao";

	public String getName() {
		return name;
	}

}

 

	<bean id="t1" class="i.test.Test1" />

	<!-- name = t1.getName() -->
	<bean id="name"
		class="org.springframework.beans.factory.config.PropertyPathFactoryBean"
		p:targetObject-ref="t1" p:propertyPath="name" />

  

   例2:

public class Test3 {

	private Test1 t1 = new Test1();
	private String name;

	public void setName(String name) {
		this.name = name;
	}

	public Test1 getT1() {
		return t1;
	}

}

  

	<!-- 将t1的name属性值赋给t3的name -->
	<bean id="t3" class="i.test.Test3">
		<property name="name">
			<!-- 执行t3.getT1().getName() -->
			<bean id="t3.t1.name"
				class="org.springframework.beans.factory.config.PropertyPathFactoryBean" />

		</property>
	</bean>

  

 

  • 访问类的Filed属性
public class Test3 {
	public  String name = "nihao";
	public  static final int MAX_LENGTH = 10;
}

 

	<bean id="t3" class="i.test.Test3" />

	<!-- 访问成员Field 需要实例 -->
	<bean id="name"
		class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean"
		p:targetObject-ref="t3" p:targetField="name" />

  

	<!-- 访问静态field只需要类路径 -->
	<bean id="length"
		class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean"
		p:targetClass="i.test.Test3" p:targetField="MAX_LENGTH" />

	<!-- 或者 -->
	<bean id="length"
		class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean"
		p:staticField="i.test.Test3.MAX_LENGTH" />

  

 

  •  调用类的方法
public class Test3 {
	public void execute(String str, int i) {
		System.err.println(str + "--" + i);
	}
}

 

	<bean id="t3" class="i.test.Test3" />

	<bean
		class="org.springframework.beans.factory.config.MethodInvokingFactoryBean"
		p:targetObject-ref="t3" p:targetMethod="execute">
		<property name="arguments">
			<list>
				<value>nihao</value>
				<value>56</value>
			</list>
		</property>
	</bean>

 

分享到:
评论

相关推荐

    JSP Spring配置文件中传值的实例详解

    JSP Spring配置文件中传值的实例详解 通过spring提供方法,在配置文件中取传值  调用get方法   targetObject :指定调用的对象  propertyPath:指定调用那个getter方法  例1: public class Test1 { ...

    spring注解出现中文乱码

    SPRING注解json传值,界面出现中文乱码!

    零配置springmvc4+hibernate4

    tomcat+myeclipse+mysql,自动建表,已写好登陆注册,无需再写配置文件!html(或jsp)+jquery1.8+json传值

    Springboot 2020年开发脚手架管理系统(10.75G)

    第06讲_配置文件自由切换及从配置文件读取值并显示在页面.mp4 第07讲_引入springboot自带日志进行打印日志及freemark语法讲_解.mp4 第08讲_freemark基础语法详细讲_解及演示操作.mp4 第09讲_采用注解方式利用实体...

    【SpringBoot】四、SpringBoot中整合Freemarker

    FreeMarker 是一款模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本( HTML 网页、电子邮件、配置文件、源代码等)的通用工具。 它不是面向最终用户的,而是一个 Java 类库,是一款程序员可以嵌入他们...

    ssm框架库存管理系统导入可用带sql

    先是加入webservice配置文件,然后在pom.xml中引入两个关于cxf的jar包,在web.xml配置文件中引入关于cxf两组标签2.然后在cmd窗口反向生成实体类和包结构等等一系列的操作)。以上就是我在项目中作出的一些小功能。我...

    helloword.rar

    最近学习java,学习使用Springmvc,作为练习写了一个 通过IDEA新建Spring MVC项目设置运行、调试相关配置导入Spring MVC 相关类库添加 Controller修改 url-attern(web.xml)配置 component-scan(dispatcher-...

    asp.net知识库

    革新:.NET 2.0的自定义配置文件体系初探 关于如何在ASP.NET 2.0中定制Expression Builders 怎么在ASP.NET 2.0中使用Membership asp.net 2.0-实现数据访问(1) ASP.NET 2.0 新特性 .NET 2.0里使用强类型数据创建...

    Java JDK 7学习笔记(国内第一本Java 7,前期版本累计销量5万册)

    著作:《java jdk 5.0学习笔记》、《java se 6技术手册》、《spring技术手册》等 译作:《ajax实战手册》、《jquery实战手册(第2版)》 个人网站:http://openhome.cc 目录 《java jdk 7学习笔记》 chapter1 ...

Global site tag (gtag.js) - Google Analytics