猫颜 发表于 2020-3-7 10:20

初学Spring

初学Spring4Spring 之父Rod Johnsonhttps://bkimg.cdn.bcebos.com/pic/63d0f703918fa0ecf02c6612269759ee3c6ddbc2?x-bce-process=image/resize,m_lfit,w_268,limit_1/format,f_jpgspring核心功能
[*]IoC/DI(控制反转)功能:原先由程序员主动通过new来实例化对象,转交给Spring负责。作用:解除了对象管理和程序员之间的耦合,解耦
[*]AOP
[*]声明式事务
[*]环境搭建
[*]导入jar包四个核心包(Beans,Core,Context,Spel)必须要有
[*]在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.bjsxt.pojo.People"/>
</beans>
[*]编写测试方法ApplicationContext ac = new

ClassPathXmlApplicationContext("applicationContext.xm l");
People people = ac.getBean("peo",People.class);

System.out.println(people);

spring的三种创建对象的方式
[*]通过构造方法创建
[*]无参创建:默认情况是无参构建    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:参数类型如果有多个构造方法都匹配,则执行最后一个


[*]实例工厂创建
[*]先创建工厂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:指定方法在工厂中可以创建不同的方法去实例化不同的对象,这里只有一个方法,所以只指定了那一个方法

[*]静态工厂创建
[*]不需要创建工厂,快速创建对象
[*]在实例工厂中添加一个静态方法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();
[*]

猫颜 发表于 2020-3-7 10:22

话说为啥我发帖的时候使用了md,发出来咋不一样???

ljhtoljh 发表于 2020-3-7 11:06

猫颜 发表于 2020-3-7 10:22
话说为啥我发帖的时候使用了md,发出来咋不一样???

这种就别发论坛了,简直是文字垃圾。。。去csdn/博客园吧

KamiMao 发表于 2020-3-7 12:29

页: [1]
查看完整版本: 初学Spring