博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JAVA入门[8]-测试mybatis
阅读量:6455 次
发布时间:2019-06-23

本文共 3052 字,大约阅读时间需要 10 分钟。

上一节通过mybatis-generator自动生成了CategoryMapper接口,pojo等类,接下来我们写几个简单的测试来进行调用。

一、添加依赖

com.alibaba
druid
${druid.version}
junit
junit
${junit.version}
test

 

二、测试SqlSessionFactroy

首先我们看下怎样实例化sqlSessionFactory,然后获取CategoryMapper。

1.新建文件resources/properties/config.property,用来保存数据库连接串和账号。

data_source_url=jdbc:mysql://localhost:3306/storedata_source_username=rootdata_source_password=root

 

2.在resources/spring目录新建spring的配置文件applicationContext.xml

3.配置数据连接。 在applicationContext.xml中添加bean节点dataSource,详细配置参考:

 

4.然后配置bean sqlSessionFactory和sqlSession。

4.测试

有了上面的配置,就可以直接以注解的方式实例化SqlSessionFactory.

@ContextConfiguration(locations = "classpath:spring/applicationContext.xml")@RunWith(SpringJUnit4ClassRunner.class)public class SqlSessionTests {    @Autowired    private SqlSession sqlSession;    @Test    public void testSqlSession(){        CategoryMapper categoryMapper= sqlSession.getMapper(CategoryMapper.class);        Category category= categoryMapper.selectByPrimaryKey(1);        if(category==null){            System.out.println("Do not exist");        }        else{            System.out.println(category.getName());        }    }}

 

三、测试直接实例化CategoryMapper

更加简洁的方式是直接通过注解实例化CategoryMapper

1.在applicationContext.xml新增bean节点

2.直接给CategoryMapper添加@Resource注解,来进行实例化。

@ContextConfiguration(locations = "classpath:spring/applicationContext.xml")@RunWith(SpringJUnit4ClassRunner.class)
public class CategoryDaoTests {
@Resource CategoryMapper categoryMapper; @Test public void test_selectById(){
Category category=categoryMapper.selectByPrimaryKey(1); System.out.println(category.getName());//Fish } @Test public void test_count(){
CategoryExample example=new CategoryExample(); long result=categoryMapper.countByExample(example); System.out.println(result); } @Test public void test_insert(){
System.out.println("before insert:count "+categoryMapper.countByExample(new CategoryExample())); Category category=new Category(); category.setName("Test"); categoryMapper.insert(category); System.out.println("after insert:count "+categoryMapper.countByExample(new CategoryExample())); } @Test public void test_delete(){
System.out.println("before insert:count "+categoryMapper.countByExample(new CategoryExample())); CategoryExample example=new CategoryExample(); example.createCriteria().andNameEqualTo("Test"); int result=categoryMapper.deleteByExample(example); System.out.println("删除条数:"+result); System.out.println("after insert:count "+categoryMapper.countByExample(new CategoryExample())); } }
 
http://www.cnblogs.com/janes/p/6433295.html
你可能感兴趣的文章
C程序设计学习笔记(完结)
查看>>
Django基础
查看>>
c#的DateTime的各种字符串格式
查看>>
ASP.NET MVC 视图(五)
查看>>
log4j 配置文件
查看>>
apxs:Error: Command failed with rc=65536;mod_evasive;apache2
查看>>
vmware12安装centos7系统详解
查看>>
Python——第一个python程序helloworld
查看>>
APP支付(.NET版)
查看>>
iOS开发笔记 5、开发工具Xcode,Inteface Builder
查看>>
selenium IDE 安装环境配置
查看>>
没办法淡定
查看>>
CSS知识点
查看>>
使用idea创建springboot项目并打成war包发布到tomcat8上
查看>>
依赖反转Ioc和unity,autofac,castle框架教程及比较
查看>>
Android—监听器
查看>>
ps填充颜色快捷键
查看>>
运算符
查看>>
Springmvc_3(ModeAndView)
查看>>
[算法]1 − 2 + 3 − 4 + …
查看>>