spring的三种实例化方式
来源:互联网 发布:1钻淘宝店铺转让 编辑:程序博客网 时间:2024/06/17 13:45
一、用构造器实例化
首先创建实体类 (AdressBean ,OrderBean)因为要用到数据拼接所以创建两个。
public class AdressBean { private Integer aid; private String adress; public AdressBean() { super(); // TODO Auto-generated constructor stub } public AdressBean(Integer aid, String adress) { super(); this.aid = aid; this.adress = adress; } public Integer getAid() { return aid; } public void setAid(Integer aid) { this.aid = aid; } public String getAdress() { return adress; } public void setAdress(String adress) { this.adress = adress; } @Override public String toString() { return "AdressBean [aid=" + aid + ", adress=" + adress + "]"; } //静态工厂方法实例化要用到的 public static AdressBean factory() { return new AdressBean(); } //实例方法实例化要用到的 public AdressBean getfactory() { return new AdressBean(); }
public class OrderBean { private Integer oid; private String name; private AdressBean adress; public AdressBean getAdress() { return adress; } public void setAdress(AdressBean adress) { this.adress = adress; } public OrderBean() { super(); // TODO Auto-generated constructor stub } public OrderBean(Integer oid, String name, AdressBean adress) { super(); this.oid = oid; this.name = name; this.adress = adress; } public Integer getOid() { return oid; } public void setOid(Integer oid) { this.oid = oid; } public String getName() { return name; } public void setName(String name) { this.name = name; } @Override public String toString() { return "OrderBean [oid=" + oid + ", name=" + name + ", adress=" + adress + "]"; } public static OrderBean factory() { return new OrderBean(); } public OrderBean getfactory() { return new OrderBean(); }
接下来为spring.xml中的配置
<!-- 依赖注入1.set方法实例化 --> <bean id="order" class="org.hopu.bean.OrderBean"> <property name="oid" value="1"></property> <property name="name" value="小可爱"></property> <property name="adress" ref="adress"></property> </bean> <bean id="adress" class="org.hopu.bean.AdressBean"> <property name="aid" value="131"></property> <property name="adress" value="河南教育学院"></property> </bean> <!-- 接下来为构造方法实例化,实体类中一定要有**构造方法**--> <bean id="order1" class="org.hopu.bean.OrderBean"> <constructor-arg index="0" value="2"></constructor-arg> <constructor-arg index="1" value="小心心"></constructor-arg> <!-- 此处为拼接数据 --> <constructor-arg index="2" ref="adress1"></constructor-arg> </bean> <bean id="adress1" class="org.hopu.bean.AdressBean"> <constructor-arg index="0" value="131"></constructor-arg> <constructor-arg index="1" value="金水区"></constructor-arg> </bean>
通过测试得出
public void test() { ApplicationContext context = new ClassPathXmlApplicationContext("test.xml"); Object o = context.getBean("order"); System.out.println(o); }
二、静态工厂实例化
通过在实体类中定义的静态方法
<!-- 静态工厂实例化 --> <bean id="order2" class="org.hopu.bean.OrderBean" factory-method="factory"> <property name="oid" value="3"></property> <property name="name" value="比心心"></property> <!-- 此处为拼接数据 --> <property name="adress" ref="adress2"></property> </bean> <bean id="adress2" class="org.hopu.bean.AdressBean" factory-method="factory"> <property name="aid" value="131"></property> <property name="adress" value="郑州市"></property> </bean>
测试方法同上,我在这里就不贴了
三、实例工厂实例化
通过实体类中定义的方法
<!-- 实例工厂实例化 --> <bean id="order3" class="org.hopu.bean.OrderBean"></bean> <bean id="order3.1" factory-bean="order3" factory-method="getfactory"> <property name="oid" value="4"></property> <property name="name" value="啦啦啦"></property> <!-- 此处为拼接数据 --> <property name="adress" ref="adress3.1"></property> </bean> <bean id="adress3" class="org.hopu.bean.AdressBean"></bean> <bean id="adress3.1" factory-bean="adress3" factory-method="getfactory"> <property name="aid" value="131"></property> <property name="adress" value="河南省"></property> </bean>
以上为spring实例化的三种方式。
阅读全文
0 0
- spring的三种实例化方式
- Spring(三)Spring三种实例化JavaBean的方式
- spring实例bean的三种方式
- Spring的三种实例化Bean的方式
- Spring的三种实例化Bean的方式
- Spring的三种实例化Bean的方式
- Spring的三种实例化Bean的方式
- spring的三种实例化bean的方式
- Spring的三种实例化Bean的方式
- Spring实例化bean的三种方式
- 实例化Spring Ioc容器的三种方式
- spring实例化bean的三种方式
- Spring 三种实例化bean的方式
- Spring三种实例化Bean的方式
- Spring中实例化Bean的三种方式
- spring三种实例化bean的方式
- spring实例化bean的三种方式
- spring实例化bean的三种方式
- Banner轮播图
- POI批量导入到数据库详解
- 程序的内存分配之堆和栈的区别
- java中Class对象详解和类名.class, class.forName(), getClass()区别
- ionic侧拉菜单
- spring的三种实例化方式
- SVN密码忘记了怎么找回
- react native 之 webstorm开发(windows)
- oracle学习
- 模拟实现printf函数,完成函数调用
- 持续集成/发布-自动部署
- ionic滚动条
- imageloader的使用
- 案列:抓取基金网站JS形式的数据