IDEA+Maven搭建Spring环境的详细教程
1. Spring简介
Spring是一个轻量级控制反转(IoC)和面向切面(AOP)的容器框架。
2. Spring的优势
1.方便解耦, 简化开发: 通过Spring提供的IOC容器, 可以将对象间的依赖关系交由Spring进行控制, 避免硬编码所造成的过度耦合。
2.AOP编程的支持: 通过AOP功能方便进行面向切面编程, 许多不容易用传统OOP实现的功能可以通过AOP轻松实现。
3.声明式事物编程: 通过声明方式灵活的进行事务管理, 提高开发效率和质量。
4.方便程序测试: 可以用非容器依赖的编程方式进行几乎所有的测试工作。
3. 搭建开发环境
3.1 创建项目
使用IDEA + Maven搭建。
- File --> new Project 。
- 选择Maven, 然后next。
4. 根据需要设置一些参数,然后点Finish。
Name: 项目名称。
Location: 存储路径。
GroupId: 项目组织名称, 通常是域名。
ArtifactId: 项目名称。
Version: 版本。
3.2 编写测试用例
在pom.xml中添加Spring和junit的依赖。
<dependencies> <!-- scope: 依赖范围, 有以下几种: 1. compile,可以不写,默认的范围,适用于所有阶段,会随着项目一起发布。 2. provided,类似compile,期望JDK、容器或使用者会提供这个依赖。如servlet.jar。 3. runtime,只在运行时使用,如JDBC驱动,适用运行和测试阶段。 4. test,只在测试时使用,用于编译和运行测试代码。不会随项目发布。 5. system,类似provided,需要显式提供包含依赖的jar,Maven不会在Repository中查找它。 --> <!-- Spring --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.2.10.RELEASE</version> </dependency> <!-- junit --> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency> </dependencies>
编写Java代码
// UserDao接口 public interface UserDao { public void selectUser(); } // UserDao实现类 public class UserDaoImpl implements UserDao { public void selectUser() { System.out.println("UserDaoImpl.selectUser()"); } }
编写Spring配置文件
<?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"> <!-- 这个配置相当于UserDao userDao = new UserDaoImpl(); --> <bean id="userDao" class="spring.dao.impl.UserDaoImpl"></bean> </beans>
编写测试用例
// 测试类 public class UserDaoTest { @Test public void test() { BeanFactory factory = new ClassPathXmlApplicationContext("applicationContext.xml"); UserDao userDao = (UserDao) factory.getBean("userDao"); userDao.selectUser(); } }
运行测试用例
到此这篇关于IDEA+Maven搭建Spring环境的详细教程的文章就介绍到这了,更多相关IDEA+Maven搭建Spring环境内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
赞 (0)