spring框架的搭建

 1.导包


spring-3.0.2 spring框架整合的其他jar包 当年市面上所有的包

spring-5.0.2 spring框架本身的包

打开对应spring框架包之后

libs:jar包 

schema:约束文件,spring框架约束文件有很多

 

Spring框架将功能进行了分层

Data...:dao层的功能

Web : 对应的是web层的功能

中间的部分是使用上面的两个层支持的jar包

下面的是spring核心包

   导入核心包:

     

还需要日志包,市面上有非常好的日志: apache logging log4j 去spring当年整合的文件夹中去找。

 

2. 创建一个对象 User

public class User {
    private String name;
    private Integer age;
    private String address; }
并且要写空的构造函数和属性的get,set方法 重写toString()

3. 书写配置文件

   配置文件吗,名字和位置都没有要求

   但是建议放在src路径下 applicationContext.xml

   导入约束

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd
       http://www.springframework.org/schema/context
       http://www.springframework.org/schema/context/spring-context.xsd">

</beans>

   配置bean类

<!--
    配置bean元素
      name  给对象起个名字
      class  类的完整路径名
      id: 唯一 里面不能出现特殊字符 struts2  "/sa"
-->

<bean name="workers" class="cn.hd.text_again.Workers" >
</bean>

<!--scope 对象的创建方式
        singleton 单例模式
        prototype  多例模式
        了解: 坚决不用
        request  web 环境下  对象的生命周期和request一样
        session web环境下  对象的生命周期和session一样
-->
<bean name="workers" class="cn.hd.text_again.Workers" scope="singleton">
</bean>

4. 书写测试类

 

Spring框架的思想

(1)Ioc(控制反转)由spring框架来帮我们创建对象

(2)di(依赖注入)为了实现ioc思想

   对象属性的注入

    

<bean name="user" class="cn.hd.injection.User">
     <property name="name" value="吕佳伟"></property>
     <property name="age" value="21"></property>
     <property name="address" value="河南"></property>

Spring 创建对象的方式

 (1)无参数的构造函数 (重点使用)

 (2)静态工厂实例化 (了解)

<bean name="workersFactory" class="cn.hd.text.WorkersFactory" factory-method="createWorkers"></bean>

  并且创建一个UserFactory 该类提供了一个静态的creatUser方法

public static User createUser(){
    System.out.println("静态工厂创建");
    return new User();
}

Workers workers1 = (Workers) ac.getBean("workersFactory");

 

 

(3) 实例化工厂创建(了解)

<bean name="workersFactory1" class="cn.hd.text.WorkersFactory" ></bean>
<bean name="user1" factory-bean="workersFactory1" factory-method="createWorkers1"></bean>

 

public User createUser1(){
    System.out.println("实例化工厂创建");
    return new User();
}

 

Workers workers1 = (Workers) ac.getBean("workersFactory");


spring 工厂    


BeanFactory:

  spring最原始的接口  创建实体bean类用的,适用于资源贫瘠

beanFactory:创建对象的方式 什么时候使用什么时候创建

applicationContext

     现在用的

     创建对象的方式是加载完配置文件后就创建

FileSystemXmlApplicationContext 从指定的绝对路径读取配置文件

ClassPathXmlAppcationContext  从类的路径读取配置文件


猜你喜欢

转载自blog.csdn.net/zyz0225/article/details/80907087