Spring简介
1.什么是Spring
spring是分层的JavaSE及JavaEE利用于全栈的轻量级开源框架,以IoC
(Inverse Of Control:管制反转/反转管制)和AOP
(Aspact Oriented Programming:面向切面编程)为外围,提供了体现层SpringMVC和长久层Spring JDBC以及业务层事务管理等泛滥模块的企业级利用技术,还能整合开源世界中泛滥驰名的第三方框架和类库,逐步成为应用最多的JavaEE企业应用开源框架。
2.Spring的劣势
- Spring 无处不在
- Spring 是易扩大的,不便集成各种优良框架
- Spring 不便解耦,易于开发(简化开发)
- Spring 速度快
- Spring 是平安的
- Spring 社区很宏大,备受反对
- Spring框架源码是经典学习范例
环境的搭建
1 创立Maven我的项目
创立好后我的项目工程报错,那是因为短少web.xml文件。所以须要生成web.xml文件。
2 我的项目工程的目录构造
3 增加pom.xml文件(引入junit、spring的jar包)
<dependencies> <!-- 增加junit的jar包 --> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.10</version> </dependency> <!-- 增加spring的jar包 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>4.1.3.RELEASE</version> </dependency></dependencies>
4 在applicationContext.xml中增加文件头信息:
<?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/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> </beans>
5 创立UserDao接口
在UserDao接口中增加一个办法
package com.yanan.dao;/** * 测试接口 * @author 慕客 * */public interface UserDao { public void add();}
6 创立UserDaoImpl实现类
该实现类实现了UserDao接口
package com.yanan.dao.impl;import com.yanan.dao.UserDao;/** * 该实现类实现了UserDao接口 * @author 慕客 * */public class UserDaoImpl implements UserDao{ @Override public void add() { System.out.println("UserDaoImpl.add办法执行了......"); }}
7配置applicationContext.xml文件
将UserDao接口的实现类的实例交给Spring容器创立,在外围配置文件中增加如下内容:
<!-- 将UserDao接口的实现类的实例交给spring创立 --><bean id="userDao" class="com.yanan.dao.impl.UserDaoImpl"></bean>
8 创立测试类
9 编写测试类
package com.yanan.test;import org.junit.Test;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;import com.yanan.dao.UserDao;import com.yanan.dao.impl.UserDaoImpl;/** * 测试类 * @author 慕客 * */public class UserDaoTest { @Test public void test1() { // 定义Spring配置文件的门路 String xmlPath = "applicationContext.xml"; // 初始化 Spring 容器,加载配置文件 ApplicationContext applicationContext = new ClassPathXmlApplicationContext(xmlPath); // 通过 IoC 容器获取 userDao 实例。applicationContext.getBean(全限定类名.class) UserDao userDaoImpl = (UserDao) applicationContext.getBean(UserDaoImpl.class); // 调用 UserDao 的 add() 办法 userDaoImpl.add(); }}
后果展现
由以上代码能够看出,在程序执行时,对象的创立并不是通过 new
一个类实现的,而是由 Spring 容器治理实现的。这就是 Spring IoC 容器思维的工作机制。