Spring框架介绍、获取搭建测试项目
- Spring下载
- 创建web项目ssm_spring
- 导包
导入我们下载好的release中的四个jar包,以及logging包(依赖包)
(1)
(2)
在 Siki学院_SSM框架Spring资料与源码\02_jar\spring_Jar\Spring依赖包\spring-framework-3.0.2.RELEASE-dependencies\org.apache.commons\com.springsource.org.apache.commons.logging\1.1.1 路径下找logging包
Spring约束引入方法
- 将约束引入到eclipse
windows->preferences->cata->xml catalog->add->file system
选择我们上面下载好的release 里面schema中的beans文件夹下的beans.xsd文件
导入之后 关闭再次进入preference,这里就出现了我们导入的所有约束(这里同理可以先将其他几个约束导入)
因为这个是将约束导入eclipse中,并没有应用于我们的项目中,所以第二次为项目引入约束的时候可以省略
- 将约束引入项目
(1)在applicationContext中创建一个beans 对
(2)点击下方的 Design视图,右键beans edit namespace
(3)先添加一个xsi
(4)再添加我们的beans.xsd
将自定义对象交给自己定义的Spring管理
- 创建com.chengyang.bean 包,在其中创建一个User类
package com.sikiedu.bean;
public class User {
private Integer u_id;
private String u_username;
private String u_password;
public Integer getU_id() {
return u_id;
}
public void setU_id(Integer u_id) {
this.u_id = u_id;
}
public String getU_username() {
return u_username;
}
public void setU_username(String u_username) {
this.u_username = u_username;
}
public String getU_password() {
return u_password;
}
public void setU_password(String u_password) {
this.u_password = u_password;
}
public String toString() {
return "User [u_id=" + u_id + ", u_username=" + u_username + ", u_password=" + u_password + "]";
}
}
- 在applicationContext.xml 中配置User对象
<beans
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.springframework.org/schema/beans"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd ">
<bean name="user" class="com.sikiedu.bean.User">
</bean>
</beans>
- 创建测试类com.chengyang.test/HelloSpring
package com.sikiedu.test;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.sikiedu.bean.User;
public class HelloSpring {
public void Test1() {
User u=new User();
u.setU_id(1);
System.out.println(u);
}
public void Test2() {
ApplicationContext ac=new ClassPathXmlApplicationContext("applicationContext.xml");
User u=(User)ac.getBean("user");
// User u=ac.getBean(User.class);
System.out.println(u);
}
}
User u=(User)ac.getBean(“user”);通过配置文件中的name属性获取User对象,不过需要进行强制类型转换。User u=ac.getBean(User.class);传递一个class对象,返回的是对应的User对象,不需要强制类型转换
Spring的IOC和DI
- IOC:反转控制
IOC的反转:创建对象这份工作由我们自己执行反转给spring帮我们执行;
IOC的控制:就是由spring帮我们负责创建销毁对象,掌控对象的生命周期等,我们在需要使用对象的时候跟Spring申请即可;
IOC是一种编程思想,也是一种新的设计模式,它需要DI(依赖注入)技术的支持; - DI:通过配置的方式给变量初始化值
通过property 属性给User对象的u_id属性赋值为2,当我们将这个User对象输出时u_id=2
<bean name="user" class="com.chengyang.bean.User" >
<property name="u_id" value="2"></property>
<property name="u_username" value="程杨"></property>
<property name="u_password" value="123"></property>
</bean>
STS插件安装
没有安装STS插件的时候,我们在输入class属性的的时候输入user没有提示
- 检查eclipse是否安装了STS插件
点击help->about 如果没有绿色的IDE图标就说明没有安装插件 - 安装STS插件
STS下载地址 下载自己eclipse对应的版本(help->about)
然后通过help->install new software 安装(具体安装这里不赘述,因为我已经安装了)