您的位置:首页 > 编程语言 > Java开发

Spring入门简单总结

2016-01-05 18:26 351 查看

使用spring流程

1、spring的依赖包配置

* SPRING_HOME/dist/spring.jar

* SPRING_HOME/lib/log4j/log4j-1.2.14.jar

* SPRING_HOME/lib/jakarta-commons/commons-logging.jar

2、提供spring配置文件applicationContext.xml

3、提供log4j.properties配置文件

4、在spring中总共有 四种 方式进行依赖注入,常用的方法为set方法注入

Set注入

这是最简单的注入方式,假设有一个SpringAction,类中需要实例化一个SpringDao对象,那么就可以定义一个private的SpringDao成员变量,然后创建SpringDao的set方法(这是ioc的注入入口):

java对象代码

package com.bless.springdemo.action;
public class SpringAction {
//注入对象springDao
private SpringDao springDao;
//一定要写被注入对象的set方法
public void setSpringDao(SpringDao springDao) {
this.springDao = springDao;
}

public void ok(){
springDao.ok();
}
}


随后编写spring的xml文件,中的name属性是class属性的一个别名,class属性指类的全名,因为在SpringAction中有一个公共属性Springdao,所以要在标签中创建一个标签指定SpringDao。标签中的name就是SpringAction类中的SpringDao属性名,ref指下面,这样其实是spring将SpringDaoImpl对象实例化并且调用SpringAction的setSpringDao方法将SpringDao注入:

<!--配置bean,配置后该类由spring管理-->
<bean name="springAction" class="com.bless.springdemo.action.SpringAction">
<!--(1)依赖注入,配置当前类中相应的属性-->
<property name="springDao" ref="springDao"></property>
</bean>
<bean name="springDao" class="com.bless.springdemo.dao.impl.SpringDaoImpl"></bean>


另外三种分别为

构造器注入

静态工厂的方法注入

实例工厂的方法注入

详解:http://blessht.iteye.com/blog/1162131

总结

Spring IOC注入方式用得最多的是(1)(2)种,多谢多练就会非常熟练。

另外注意:通过Spring创建的对象默认是单例的,如果需要创建多实例对象可以在标签后面添加一个属性:

<bean name="..." class="..." scope="prototype">


5、让spring管理我们对象的创建和依赖,必须将依赖关系配置到spring的核心配置文件中

6、编写客户端

代码:

package com.houlu.spring.client;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import com.houlu.spring.dao.UserDao4MySqlImpl;
import com.houlu.spring.manager.UserManager;
import com.houlu.spring.manager.UserManagerImpl;

public class Client {

public static void main(String[] args){

BeanFactory factory = new ClassPathXmlApplicationContext("applicationContext.xml");
UserManager userManager = (UserManager)factory.getBean("UserManager");

userManager.addUser("张三", "123");
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  spring使用流程