博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java框架学习日志-3
阅读量:7035 次
发布时间:2019-06-28

本文共 1616 字,大约阅读时间需要 5 分钟。

hot3.png

这章主要是补充一些ioc创建对象的方式,ioc容器在写好<bean></bean>的时候就已经创建对象了。在之前的例子中,一直都是无参的构造方法。下面给出有参的构造方法的对象的创建,没有什么难点重点,只是记录一下。

有参构造函数构造方法有几种。
第一种方法,通过参数下标来设置。
java代码:

package cn.sxt.ov;public class User {    private String name;    private int age;    /**有参数函数构造方法*/    public User(String name,int age){        this.name=name;        this.age=age;    }    public void show(){        System.out.println("俺是"+name+",今年"+age);    }}

xml文件写法:

constructor-arg关键字就是用来构造有参函数时传参数的。index是参数的下标,从0开始,<constructor-arg index="0" value="张三"/>就是第一个参数传张三。

第二种,通过名字来传参数,就和以前给变量赋值一样:

第三种,通过参数类型来设置

通过参数类型来设置,如果有一样的类型,就按照先后顺序,注意String可以换成java.lang.String。但是int换成java.lang.Integer或者Integer就会报错。不知道为什么。

通过工厂方法来创建对象

这里只需要简单了解一下就行了。知道有这么个东西,因为spring本身就提供了工厂类,可以用轮子,干嘛造轮子。

静态工厂:

先写一个简单的静态工厂,这是一个简单的静态工厂,通过newInstance方法来创建对象

package cn.sxt.factory;import cn.sxt.ov.User;public class UserFactory {    private static User newInstance(String name,int age,String sex){        return new User(name,age,sex);    }}

xml代码

结果:

动态工厂

新建动态工厂

package cn.sxt.factory;        import cn.sxt.ov.User;public class UserDynamicFactory {    private  User newInstance(String name,int age,String sex){        return new User(name,age,sex);    }}

xml文件,这里需要改一下静态工厂代码,将静态工厂的class改成factory-bean,然后引用动态工厂的id。

注意这里的值还是在user1里面设置的。

转载于:https://my.oschina.net/u/4000133/blog/2987695

你可能感兴趣的文章
存储器容量扩展的问题
查看>>
数据结构之集合实现
查看>>
(转)企业如何留住人才
查看>>
使用MockMvc测试SpringMVC Controller
查看>>
Ubuntu 13.04 server 安装 Apache2+PHP5+MySQL
查看>>
NSURLRequestCachePolicy 缓存策略
查看>>
006.MySQL优化方案-自查询:in/exists/from
查看>>
mysql中int、bigint、smallint 和 tinyint的区别详细介绍
查看>>
Windows活动目录系列---配置AD域服务的信任(2)
查看>>
Indirect以及sumifs函数+多重合并数据透视表
查看>>
与外包人员合作时,如何管理代码?
查看>>
忘记windows12密码修复
查看>>
RAC安装与配置
查看>>
我的友情链接
查看>>
分布式一致性,技术选型之路
查看>>
简单方便的表单验证
查看>>
Linux中用户管理
查看>>
CVS 中文手册
查看>>
debugger markup language帮助文档(DML)
查看>>
Eric S. Raymond五部曲
查看>>