Spring 入门笔记

来源:互联网 发布:淘宝职业打假起诉法院 编辑:程序博客网 时间:2024/05/09 17:16

Spring 入门笔记

首先应该知道什么是spring?
Spring就是javaEE,JavaSE中的一站式轻量级的框架,并且Spring对软件开发中的各层都用对应的解决方案;
Spring常用核心模块有:
Ioc模块 (控制反转)
AOP模块(面向切面编程)
其次怎么去使用Spring框架?
1、导入Spring依赖的基础jar包
核心包:
spring-beans-3.2.0.RELEASE.jar
spring-context-3.2.0.RELEASE.jar
spring-core-3.2.0.RELEASE.jar
spring-expression-3.2.0.RELEASE.jar
记录日志包:
com.springsource.org.apache.commons.logging-1.1.1.jar
com.springsource.org.apache.log4j-1.2.15.jar
2、创建Spring的配置文件
一般在src下创建applicationContext.xml文件,
引用基本的约束头:
<beans xmlns=”http://www.springframework.org/schema/beans”
xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
xsi:schemaLocation=”
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd“>

接下来使用Spring去创建这个Service对象
public class Demo {

@Testpublic void Test1() {    // 创建工厂类    ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationcontext.xml");    UserService userService = (UserService) applicationContext.getBean("userService");    userService.add();}

}

那么什么是Ioc?
由Spring创建对象的过程称之为Ioc(控制反转),对象的创建过程全部交给Spring管理.
DI依赖注入
如果Spring创建对象时,这个对象有属性,那么Spring可以在创建这个对象时,可以顺便给这个属性注入初始化的值,这个注入过程就叫做依赖注入
1.spring创建bean的方式。
1.使用静态的工厂方法去创建 bean
首先要创建工厂类,在工厂类中创建静态方法,通过这个方法创建需要的实体对象。
然后在spring的配置文件中,指定工厂类以及创建对象的具体的方法
<bean name=”userService” class=”com.hk.spring.SpringBeanFactory”
factory-method=”getUserserviceBean”/>
2.使用实例工厂方法去创建bean
创建工厂类,然后创建提供对象的实例方法。
spring要讲工厂先实例化
<bean name=”springBeanFactory2” class=”com.hk.spring.SpringBeanFactory2”></bean>
使用spring创建的工厂对象去创建所需要的实例对象。
<bean name=”userService” factory-bean=”springBeanFactory2” factory-method=”getUserServiceBean”/>
注意:在创建所需对象的bean的配置,要使用factory-bean,而不是class

3.spring使用无参的构造函数创建bean,要求bean必须提供无参的构造函数。1)这种方式使用最为普遍,但是这种方式使用对bean有要求,要求bean中的一定要提供相应无参的构造方法。2)spring中bean标签中的属性name和id,其中一半情况下name和id二选一就可以,id的约束性比较强,id要求,值的开头字符可以使用数字,下划线,字母,冒号等name没有这个要求。二者有相同点,就是在一个配置文件中,name的值或者是id的值,不能重复。scope属性:表示类的作用范围。    singleton:表示创建出来的实例都是单例的 默认情况下,采用的是singleton这个模式    prototype:表示创建出来的实例都是多例的,每次getBean得到的都是一个独立的方法。    request : 在web环境中,创建的实例,在这个实例存放入request域中    session : 在web环境中,创建的实例,在这个实例存放入session域中大部分都使用singleton 
原创粉丝点击