博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
spring IOC简单应用(一)
阅读量:4261 次
发布时间:2019-05-26

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

一、IOC的优势

    1、本来是由应用程序管理的对象之间的依赖关系,现在交给容器进行管理;

     2、大量的减少了工厂类与单列类的数量,使得代码层次更加清晰;

     3、是一个轻量级容器,没有侵入性;

二、注入方式(常用)

    1、构造函数注入

public class UserServiceImpl implements UserService{	private UserDao dao;		public UserServiceImpl()	{}		public UserServiceImpl(UserDao dao)	{		this.dao = dao;	}	public void addUser(String name, String pass)	{		this.dao.addUser(name, pass);	}}
  2、spring的配置文件applicationContext.xml

  3、java应用客户端调用代码

public class Client{	public static void main(String[] args)	{		ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");        UserService service = (UserService)context.getBean("userService");        service.addUser("zhangsan", "lisi");	}}

  2、set方法注入

      
public class UserServiceImpl implements UserService{	private UserDao dao;	public void addUser(String name, String pass)	{		this.dao.addUser(name, pass);	}	public UserDao getDao()	{		return dao;	}	public void setDao(UserDao dao)	{		this.dao = dao;	}}
   2、spring的配置文件applicationContext.xml

  3、java应用客户端调用代码

public class Client{	public static void main(String[] args)	{		ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");        UserService service = (UserService)context.getBean("userService2");        service.addUser("zhangsan", "lisi");	}}

 3、常用属性注入

     1、spring自带的属性类型转换(包括对 int  string  list  set   map  )

public class Bean{	private String strValue;	private int intValue;	private List listValue;	private Set setValue;	private String[] arrayValue;	private Map mapValue;	//...setter/getter...}
               spring 配置文件中的注入

123
121212
111
222
333
  2、spring并不能对Date类型进行属性转换,需要自定义属性类型转换器(继承PropertyEditorSupport)  了,  自定义属性编辑器:
Date
(自定义的需要继承
PropertyEditorSupport
)重写
setAsText
()方法
/** * spring 没有提供对日期类型的自动转换器,需要我们 * 自己编写一个类型转换器。 */public class UtilDatePropertyEditor extends PropertyEditorSupport{	public void setAsText(String text) throws IllegalArgumentException	{		try		{			Date date = new SimpleDateFormat("yyyy-mm-dd").parse(text);			this.setValue(date);		} catch (ParseException e)		{			e.printStackTrace();		}	}}
       然后在属性文件中进行配置该转换器(applicationContext.xml)

     当在配置文件中配置好了之后,spring会自动的去寻找对应的类型转换对日期进行转换通过我们自定义的转换器。
    

     

转载地址:http://fexei.baihongyu.com/

你可能感兴趣的文章
浅谈医学大数据(中)
查看>>
阿里巴巴数据产品经理工作总结
查看>>
大数据的特点及作用
查看>>
IBM朱辉:大数据分析的5个高复制使用场景及案例分享(含PPT)
查看>>
“医学数据银行”——临床大数据科研协作平台
查看>>
人工智能、机器学习、统计学、数据挖掘之间有什么区别?
查看>>
大数据架构师基础:hadoop家族,Cloudera系列产品介绍
查看>>
Java返回对象快捷键
查看>>
Hadoop web页面的授权设定
查看>>
Hadoop大数据平台运维工程师须掌握的基本命令集分享
查看>>
Linux启动Tomcat服务
查看>>
文件下载问题
查看>>
ASP.NET返回上一页的方法小集
查看>>
神经网络中 BP 算法的原理与 Python 实现源码解析
查看>>
腾讯实习生面试总结
查看>>
Jfinal中的render
查看>>
STL中的Allocator
查看>>
STL中的Iterator
查看>>
C语言拾遗
查看>>
数据库查询语句拾遗
查看>>