Spring MVC + Mybatis 中使用junit
在Spring MVC + Mybatis的项目中我们有时候需要在测试代码中注入Dao操作数据库,对表进行增删改查,实现如下:
这是一般的maven项目项目结构

测试代码一般写在src/test/java包下。
这是一个普通的测试类,通过mybatis查询某个表的数据。
1 public class SpringMybatisTest {
2
3 @Resource
4 private static TestDao testDao;
5
6 @BeforeClass
7 public static void init(){
8 //初始化spring 获取上下文
9 ApplicationContext content = new ClassPathXmlApplicationContext("classpath*:spring/spring.xml");
10 testDao = content.getBean(TestDao.class);
11 }
12 @Test
13 public void test1(){
14 List<Map<Object,Object>> list = this.testDao.queryListMap();
15 for(Map<Object,Object> map : list){
16 for(Map.Entry<Object, Object> temp : map.entrySet()){
17 System.out.println("key:"+temp.getKey()+"----"+"value:"+temp.getValue());
18 }
19 }
20 }
21 }如果在初始化spring的时候有多个xml文件需要导入的时候,可以采用下面的方法:
1 | ApplicationContext content = new ClassPathXmlApplicationContext("classpath*:spring/root.xml"); |
在root.xml中引入所有的spring配置文件,具体如下:
1 2 3 4 5 6 7 | <?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"> <import resource="classpath*:spring/spring.xml"/> <import resource="classpath*:spring/spring-mvc.xml"/> </beans> |
TestDao接口代码:
1 2 3 4 | public interface TestDao { public List<Map<Object,Object>> queryListMap();} |
对应的xml文件sql:
1 2 3 | <select id="queryListMap" resultType="java.util.HashMap"> select * from test</select> |
test表很简单,如下:

运行测试方法,结果如下:

可以正常对数据库进行正常的访问,并不需要写到复杂的controller或者serverice中。
相关推荐
shirleypaddy 2020-10-19
qingmumu 2020-10-19
lustdevil 2020-10-18
ganlulululu 2020-10-12
lustdevil 2020-08-03
lustdevil 2020-07-18
lustdevil 2020-06-25
lustdevil 2020-06-21
zhengzf0 2020-06-21
宿命java 2020-06-15
JackYin 2020-06-14
dongxurr 2020-06-07
snowphy 2020-06-06
zhengzf0 2020-05-28
81901836 2020-05-26
Julywhj 2020-05-26