好友
阅读权限 10
听众
最后登录 1970-1-1
猫颜
发表于 2020-3-7 10:20
初学Spring4 Spring 之父Rod Johnson spring核心功能 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();
免费评分
查看全部评分
发帖前要善用【论坛搜索 】 功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。