欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

初学Spring

程序员文章站 2022-07-12 16:08:11
...

初学Spring

Spring 之父Rod Johnson

初学Spring

spring核心功能

  1. IoC/DI(控制反转)

    功能:原先由程序员主动通过new来实例化对象,转交给Spring负责。

    作用:解除了对象管理和程序员之间的耦合,解耦

  2. AOP

  3. 声明式事务

  4. 环境搭建

    1. 导入jar包

      四个核心包(Beans,Core,Context,Spel)必须要有

      初学Spring

    2. 在src下创建applicationContext.xml(文件名和路径可以自定义)

      spring 的配置信息基于schema(DTD的升级版),

      配置文件中只需要引入基本的schema

      <?xml version="1.0" encoding="UTF-8"?>
      <beans xmlns="http://www.springframework.org/schema/beans"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://www.springframework.org/sc hema/beans
      http://www.springframework.org/schema/beans/spring-be ans.xsd">
      <!-- id 表示获取到对象标识
      class 创建哪个类的对象
      -->
      <bean id="peo" class="com.catjava.pojo.People"/>
      </beans>
      
    3. 编写测试方法

      ApplicationContext ac = new
      
      ClassPathXmlApplicationContext("applicationContext.xm l");
      People people = ac.getBean("peo",People.class);
      
      System.out.println(people);
      
spring的三种创建对象的方式
  1. 通过构造方法创建

    • 无参创建:默认情况是无参构建

      	public People() {
      		System.out.println("无参构造方法");
      	}
      
    • 有参创建:

      • 需要在类中提供有参构造方法

        public People(int years, String name, boolean sex) {
        		super();
        		this.years = years;
        		this.name = name;
        		this.sex = sex;
        	}
        
      • 在配置文件(我的是applicationContext.xml )中进行配置

          <bean id="people1" class="com.catjava.pojo.People">
            	<constructor-arg index="0" name="years" type="int" value="18"></constructor-arg>
            	<constructor-arg index="1" name="name" type="String" value="maoyan"></constructor-arg>
            	<constructor-arg index="2" name="sex" type="boolean" value="1"></constructor-arg>
            </bean>
        

        说明:

        index:参数的索引,从0开始

        name:参数名

        type:参数类型

        如果有多个构造方法都匹配,则执行最后一个

  2. 实例工厂创建

    • 先创建工厂

      public class PeopleFactory {
      	public People newInstance(){
      		return new People(19,"maoyan2",true);
      	}
      }
      
    • 在配置文件中配置工厂和所需要的对象

          <!-- 创建工厂对象 -->
          <bean id="factory" class="com.catjava.pojo.PeopleFactory">
          </bean>
          <bean id="people2" factory-bean="factory" factory-method="newInstance"></bean>
      

      factory-bean:指定工厂

      factory-method:指定方法

      在工厂中可以创建不同的方法去实例化不同的对象,这里只有一个方法,所以只指定了那一个方法

  3. 静态工厂创建

    • 不需要创建工厂,快速创建对象

    • 在实例工厂中添加一个静态方法

      public static People newInstance2() {
      		return new People(20,"maoyan3",false);
      	}
      
    • 配置配置文件

       <bean id="people3" class="com.catjava.pojo.PeopleFactory" factory-method="newInstance2"
          ></bean>
      
    • 调用方法

      People people2=PeopleFactory.newInstance2();
      
相关标签: 笔记 spring