创建一个Spring框架
第一步:首先是导包
libs/spring-beans-3.2.2.RELEASE.jar
libs/spring-context-3.2.2.RELEASE.jar
libs/spring-context-support-3.2.2.RELEASE.jar
libs/spring-core-3.2.2.RELEASE.jar
libs/spring-expression-3.2.2.RELEASE.jar
这些包都是在你下载好的spring文件中的libs文件中挑选这五个,
但是你发现在你执行的时候你会发现会出现错误,提示找不到什么类,那是你少导了一个日志包文件,
commons-logging-1.1.1.jar
只需这样就可以了
第二部:创建service和dao接口类
并在serviceImpl和daoImpl实现类里创建构造方法,更方便的看清执行的过程
public HelloDaoImpl() {
System.out.println("HELLO__WORD 构造方法");
}
@Override
public void sayHello() {
System.out.println("HELLO SPRING");
}
在这里值得注意的是必须在serviceImpl里写上dao的注入方法,即set方法,
要不然会出现bug,
private HelloDao helloDao;
public HelloServiceImpl() {
System.out.println("HELLO 构造方法");
}
public void setHelloDao(HelloDao helloDao) {
System.out.println("控制反转:应用程序本身不在负责创建helloDao对象,而是由spring容器负责创建、管理、维护,这样控制权转移,称为反转。"+ "可以通过依赖注入方式 注入该HelloDao对象");
this.helloDao = helloDao;
}
@Override
public void sayHello() {
helloDao.sayHello();
}
第三步:写spring配置文件
在这里可以提示一下,spring和struts2不一样。spring的配置文件名称不一定非要写Spring.xml,
创建spring文件的时候,如果不知道头文件怎么写的话,可以这样查找:
首先找到你的下载的spring版本文件夹:
F:\spring-framework-3.2.2.RELEASE-dist\spring-framework-3.2.2.RELEASE\docs\spring-framework-reference\html\index.jsp
在这个首页
配置元数据点进去就可以查看里面有配置文件的信息,
首先创建一个总的spring.xml文件
<import resource="spring-dao.xml"/>
<import resource=”spring-service” />
在创建spring-dao.xml 和 spring-service.xml
spring-dao.xml
<bean>
id="helloDaoImpl" class="www.csdn.spring01.dao.HelloDaoImpl" scope="singleton"></bean>
spring-service.xml
<bean
id="helloServiceImpl" class="www.csdn.spring01.service.HelloServiceImpl" scope="singleton" lazy-init="default">
<property name="helloDao" ref="helloDaoImpl"></property>
</bean>
这些名字都是有定义的,
属性的名字对应的是serviceImpl里的helloDao,这个ref所代表的是spring-dao里的id;是这样的关联
spring容器
bean 属性
id: 标识 唯一
class: 类
scope:作用域 singleton prototype request session
lazy-init:default=false ,false ,true
lazy-init结合scope=singleton使用
scope="singleton" lazy-init="default" -->说明:容器已经加载就实例化对象
scope="singleton" lazy-init="true" -->说明:容器已经加载当使用到该对象的时候,实例化该对象
这样一个简单的spring框架出来了