Spring 添加属性集中常见方法
//创建容器,索要对象,
package cn.lijun.Test;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import cn.lijun.domain.Qiang;
import cn.lijun.domain.User;
public class TestDemo {
// @Test
//
// public void fun1(){
// //1创建容器对象
// ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
// //2 向容器要对象
// User bean = (User)ac.getBean("user");
// System.out.println(bean);
//
// }
// @Test
// public void fun2(){
// //1创建容器对象
// ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
// //2 向容器要对象
// User bean = (User)ac.getBean("user1");
// System.out.println(bean);
//
// }
// @Test
// public void fun3(){
// //1创建容器对象
// ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
// //2 向容器要对象
// User bean = (User)ac.getBean("user2");
// System.out.println(bean);
//
// }
// @Test
// public void fun3(){
// //1创建容器对象
// ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
// //2 向容器要对象
// User bean = (User)ac.getBean("user3");
// System.out.println(bean);
//
// }
@Test
public void fun4(){
//1创建容器对象
ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
//2 向容器要对象
Qiang bean = (Qiang)ac.getBean("qi");
System.out.println(bean);
}
}
//存储属性的集中方法
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.springframework.org/schema/beans"
xmlns:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.2.xsd ">
<!-- 1 set注入方式 -->
<bean name="user" class="cn.lijun.domain.User">
<property name="name" value="qiang"></property>
<property name="age" value="18"></property>
<!-- 为引用类型注入 为car 注入 属性 -->
<property name="car" ref="car"></property>
</bean>
<!-- 将car对象配置到容器中 -->
<bean name="car" class="cn.lijun.domain.Car">
<property name="name" value="兰博基尼"></property>
<property name="color" value="红色"></property>
</bean>
<!-- 2 构造函数注入 -->
<bean name="user1" class="cn.lijun.domain.User">
<constructor-arg name="name" value="sdfjkah"></constructor-arg>
<constructor-arg name="age" type="java.lang.Integer" value="99"></constructor-arg>
<constructor-arg name="car" ref="car" ></constructor-arg>
</bean>
<!-- p名称空间注入 走set方法 -->
<bean name="user2" class="cn.lijun.domain.User" p:name="ashjkhkasf" p:age="999" p:car-ref="car">
</bean>
<!-- spel注入 spring Exception Language spring 表达式语言 -->
<bean name="user3" class="cn.lijun.domain.User">
<property name="name" value="#{user.name}"></property>
<property name="age" value="#{user2.age}"></property>
<property name="car" ref="car"></property>
</bean>
<!-- 复杂类型注入 -->
<bean name="qi" class="cn.lijun.domain.Qiang">
<!-- 一个数组中 只准备注入一个值 直接用value/ref -->
<property name="arr">
<array>
<value>qiang</value>
<value>ashj</value>
<ref bean="user2"></ref>
</array>
</property>
<property name="map">
<map>
<entry key="url" value="jdbc:mysql:///crm"></entry>
<entry key="user" value-ref="user3"></entry>
</map>
</property>
<property name="list">
<list>
<value>rose</value>
<value>asfhjksjkdfjhjasdfdjk</value>
<ref bean="user2"></ref>
</list>
</property>
<property name="prop">
<props>
<prop key="drivarClass">com.jdbc.nysql.Driver</prop>
<prop key="userName">root</prop>
<prop key="password">root</prop>
</props>
Spring 添加属性集中常见方法的更多相关文章
- JS函数可以再添加属性(包括方法)
1 前言 JS函数可以再添加属性(包括方法),这个有点有趣,记录一下. 2 代码 <!DOCTYPE html> <html> <head> <title&g ...
- UIPickerView常见属性、常见方法(包括代理方法和数据源方法)的一些说明
一.UIPickerView 1.UIPickerView的常见属性 // 数据源(用来告诉UIPickerView有多少列多少行) @property(nonatomic,assign) id< ...
- 275 原型与原型链:显式原型prototype ,隐式原型__proto__,隐式原型链,原型链_属性问题,给原型对象添加属性/方法
1.所有函数都有一个特别的属性 prototype : 显式原型属性 [普通构造函数的实例对象没有prototype 属性,构造函数有__proto__属性,原型对象有__proto__属性 ] 2. ...
- 我的Python学习笔记(四):动态添加属性和方法
一.动态语言与静态语言 1.1 动态语言 在运行时代码可以根据某些条件改变自身结构 可以在运行时引进新的函数.对象.甚至代码,可以删除已有的函数等其他结构上的变化 常见的动态语言:Object-C.C ...
- 属性添加get和set方法
出错信息: Struts Problem Report Struts has detected an unhandled exception: Messages: File: com/myHibern ...
- spring mvc: 属性方法名称解析器(多动作控制器)MultiActionController/ControllerClassNameHandlerMapping/PropertiesMethodNameResolver
spring mvc: 属性方法名称解析器(多动作控制器) 加入控制器是StudentContrller.java,里面有3个方法 index,add,remove 那么访问地址是: http://l ...
- ios动态添加属性的几种方法
http://blog.csdn.net/shengyumojian/article/details/44919695 在ios运行过程中,有几种方式能够动态的添加属性. 1-通过runtime动态关 ...
- prototype为对象添加属性和方法
可以通过prototype来为已经定义好的的"类"添加属性和方法.这里来了解一下prototype的基础知识.prototype是"构造函数"的属性,不是实例的 ...
- javascript面向对象(给对象添加属性和方法的方式)
1.在定义对象时,直接把属性和方法添加 <script type="text/JavaScript"> //给对象直接在定义时添加属性和方法 var g ...
随机推荐
- Lattice并购案&我国FPGA发展路径
FPGA作为通信.航天.军工等领域的关键核心器件,是保障国家战略安全的重要支撑基础.近年来,随着数字化.网络化和智能化的发展,FPGA的应用领域得到快速扩张.美国在FPGA领域拥有绝对的垄断优势,已成 ...
- if else和switch case那个效率更高一点
switch...case写法: switch (表达式){ case 值1 : 语句1 break; case 值2 : 语句2 break; ... default : 语句n break; } ...
- 一切为了落地,为什么要把PP.io设计成三个阶段!
之前的一篇文章,我讲解了PP.io的三个阶段:“强中心”,“弱中心”,“去中心”.今天来解释下,我为什么要分三个阶段逐步实现PP.io去中心化存储网络: 简单地说,就是在区块链不可能三角理论中,我暂时 ...
- 知识点:synchronized 原理分析
synchronized 原理分析 1. synchronized 介绍 在并发程序中,这个关键字可能是出现频率最高的一个字段,他可以避免多线程中的安全问题,对代码进行同步.同步的方式其实就是隐式的加 ...
- C语言数据结构基础学习笔记——基础线性表
线性表是指具有相同数据类型的n(n>=0)个数据元素的有限序列,它具有一个表头元素和一个表尾元素,并且每一个数据元素最多只有一个直接前驱和一个直接后继. 线性表的顺序存储也叫作顺序表,它的特性是 ...
- JAVA中循环删除list中元素的方法总结(同上篇)
印象中循环删除list中的元素使用for循环的方式是有问题的,但是可以使用增强的for循环,然后今天在使用时发现报错了,然后去科普了一下,再然后发现这是一个误区.下面就来讲一讲..伸手党可直接跳至文末 ...
- python中定义的颜色
平时学习工作中,我们经常会接触到一些大佬写的Python实用工具,运行起来总会显示出五颜六色的背景,相关的定义在matplotlib模块中,为方便使用,这里给大家展示一下在这个模块中都定义了哪些选颜色 ...
- oracle入坑日记<五>数据表
1 数据表 1.1.数据表是存放数据字段信息的地方:在Oracle,数据表拥有者单位是用户,同时数据表属于表空间.如: 登录my_user用户在orcl表空间下创建的表就是 my_user用户在o ...
- (转)适用微信小程序的table表格(带隔行变色)
原文地址 table.wxml <view class="table"> <view class="tr bg-w"> <view ...
- django之signal机制再探
djangobb中的signal post_save信号调用send函数时,为什么它会对与topic.post相关的其他models进行修改?同一个信号,例如post_save(保存过后的处理),是所 ...