叙:上一章节了解了spring框架,明白了spring框架的是干什么的以及有什么优点,本章及是电虫学习如何搭建的spring框架,从无到有,从最初的框架文件的下载到一个spring的小demo的运行成功~废话不多说,盘它!
Spring框架的搭建
在开始前先创建好一个空项目,我的名为:spring_1
1、下载Spring框架文件包
首先,我们要知道spring的架包是什么样的以及我们需要什么样的架包,如下图所示:
以上是spring的架包文件,这是3和4的版本的了,比较老旧了,大家可以下载点新的版本的,其中的文件存储的路径、结构等均是大同小异的,不会存在太大问题~
(pass:第二个spring-framework-3.0.2.RELEASE-dependencies.zip 大家就不用下载了,这个是比较老的版本的一个,在spring3.0.2版本之后就已经不发行了,其中用到的一些文件什么的已经归档到一个架包文件spring-framework-4.2.4.RELEASE-dist.zip 中了,不影响使用的;)
spring架包下载地址:
https://repo.spring.io/libs-release-local/org/springframework/spring/
2、导入基础jar包
首先,我们要知道一个spring项目中哪些架包是基础架包,现在初步学习spring首先导入的就是基础架包文件~spring项目的构成图如下所示:
从图中标注的红色文字可知,Beans、Core、Context、SpEL这四个是spring项目的基础支撑,因此我们要先导入的就是这四个架包文件;
这些jar包所在位置均为之前下载的spring-framework文件内,将下载好的spring-framework-4.2.4.RELEASE-dist.zip文件解压,找到libs文件夹,其中存放的均是应用于各个情况下的jar包,找到如下图所示的sigejar包,并打开后可看到如下所示的四个架包文件~
pass:不必在意版本号的不同,只要文件名字和文件类型相同即可~
令:如果使用的spring架包文件版本不高,不到五以上的话会存在日志的问题,高版本的架包中包含的已经有了日志处理,而低版本的还需要手动导入一个日志包~导入过程如下所示:
在spring-framework-3.0.2.RELEASE-dependencies.zip文件夹下的org.apache.commons\com.springsource.org.apache.commons.logging\1.1.1路径下找到com.springsource.org.apache.commons.logging-1.1.1.jar文件,将其放入建立的项目中~
3、创建spring的核心配置文件
Spring框架的核心配置文件创建的要求就是没有任何要求,对于配置文件的名称、存放位置等均不做过多的要求,很随意,但是经过长时间的演变还是有一些约定俗成的规矩的,毕竟一个系统的开发需要团队相互配合,不可能每个人都随心所欲让后来者费劲寻找一个配置文件~
第一点:名称
一般写为:applicationContext.xml
第二点:存放位置
一般仍然存放在项目的src文件夹下
创建后如下图所示:
创建完之后先放在这,不用管,等着导入约束后才进行操作~
4、导入约束
spring的约束导入和struts2的以及hibernate的军不一样,连约束文件的类型都变化了,而且导入约束比较繁琐,要是详细讲的话需要的篇幅较大,因此就先不在本章节中写,大家可以点击下面的链接,这个链接就是专门讲如何导入spring的约束的;
Spring约束导入直通车:
https://blog.csdn.net/qq_40762011/article/details/87629461
5、创建一个对象
Spring框架是一个放置对象的容器,因此创建一个对象进行后续的演示,创建一个User对象,其对象属性如下所示:
User对象:
package com.java.entity;
public class User {
private String name;
private Integer password;
private String dir;
private Integer age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getPassword() {
return password;
}
public void setPassword(Integer password) {
this.password = password;
}
public String getDir() {
return dir;
}
public void setDir(String dir) {
this.dir = dir;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
}
6、将对象放入spring容器中
将User对象放入到spring容器中的配置就是在核心配置文件中,其配置代码如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<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-4.2.xsd ">
<!-- 将user对象放到spring容器中 -->
<bean name="user" class="com.java.entity.User"></bean>
</beans>
只是用了一个标签,其属性有两个,一个是name,一个是class,从上面的代码中不难看出来其作用,介绍如下:
- name属性及其属性值:给这个对象在spring核心配置文件中设置个牌号,方便以后使用name的属性值进行调用;
- class属性及其属性值:User对象的全路径;
7、测试框架搭建结果
创建个Action类(DemoAction.java),在这个里面来获取并打印User对象信息,其代码如下所示:
public class DemoAtion {
@Test
public void test1(){
ApplicationContext c = new ClassPathXmlApplicationContext("applicationContext.xml");
User user = (User) c.getBean("user");
System.out.println(user);
}
}
运行结果如下图所示: