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 容器思想的工作机制。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。