总是看到一些人写文章的时候会将一些无用的jar包带到工程中去,导致maven工程看起来很大很繁琐,所以整理下,做个系列出来。
参考而已:看官不喜勿喷!!
有时间想到了就会更新
编程环境:jdk1.8 ; maven3
编译器工具:idea
本文最终的项目 目录结构如下:
一:idea 搭建maven项目
就是搭建一个maven工程,不做赘述;
不会的话请百度“如何使用+(你的编译期名字)+ 搭建maven工程”;
二:
2.1 pom引入spring依赖
其实如果想仅仅使用spring的功能这些包就够了
spring-core
spring-beans
spring-context
spring-tx
<!-- 统一版本号 -->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<spring.version>4.1.7.RELEASE</spring.version>
<mybatis.version>3.4.5</mybatis.version>
</properties>
<dependencies>
<!-- spring依赖 -->
<!-- 核心包 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
<!-- pring IOC的基础实现,包含访问配置文件、创建和管理bean等-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>${spring.version}</version>
</dependency>
<!-- 这个jar文件为Spring核心提供了大量扩展。可以找到使用Spring ApplicationContext特性时所需的全部类,JDNI所需的全部类,UI方面的用来与模板(Templating)引擎如Velocity、FreeMarker、JasperReports集成的类,以及校验Validation方面的相关类。 -->
<!-- Spring 扩展服务 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
<!-- 为JDBC、Hibernate、JDO、JPA等提供的一致的声明式和编程式事务管理-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>${spring.version}</version>
</dependency>
</dependencies>
2.2 新建建applicationContext.xml或者叫作spring.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"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.2.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd">
<!-- 搜索spring控件 -->
<context:component-scan base-package="com.newStar"/>
</beans>
2.3 新建类
Service01.java
package com.newStar.service;
import org.springframework.stereotype.Service;
/**
* com.newStar.service
*
* @Author : liuxinxing
* @Description :基础的服务01
* @Date : 2019/1/2
*/
@Service
public class Service01 {
public Boolean showMsg(String msg) {
System.out.println(msg);
return true;
}
}
Service02.java
package com.newStar.service;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
/**
* com.newStar.service
*
* @Author : liuxinxing
* @Description :用来调用服务01
* @Date : 2019/1/2
*/
@Service
public class Service02 {
//注入服务01
@Resource
Service01 service01;
public void excute(String msg){
Boolean aBoolean = service01.showMsg(msg);
System.out.println(aBoolean);
}
}
三:如何验证搭建成功?
1.引入单元测试包
<!--单元测试-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>2.5</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.4</version>
</dependency>
2.建测试类
因为以后很多类都要做单元测试,
类似这样的重复代码会写很多。所以抽取出来做通用类BaseTest
@RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations ={"/applicationContext.xml"})
BaseTest.java
package com.newStar;
/**
* com.newStar.service
*
* @Author : liuxinxing
* @Description : 基础测试类
* @Date : 2019/1/2
*/
import org.junit.runner.RunWith;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations ={"/applicationContext.xml"})
public class BaseTest {
}
Service02Test.java
package com.newStar.service;
import com.newStar.BaseTest;
import org.junit.Test;
import javax.annotation.Resource;
/**
* com.newStar.service
*
* @Author : liuxinxing
* @Description : 基础基础测试类来 启动spring容器
* 可以实现spring的功能
* @Date : 2019/1/2
*/
public class Service02Test extends BaseTest{
@Resource
Service02 service02;
@Test
public void testExcute() {
service02.excute("hahha");
}
}
启动testExcute()这个方法就OK啦!
其他类似如此;
下一篇是引入spring MVC