系列教程javao2o商城之(三)mybatisgenerator及配置验证

MyBatis Generator(MBG)是MyBatis MyBatis 和iBATIS的代码生成器。它将为所有版本的MyBatis以及版本2.2.0之后的iBATIS版本生成代码。它将内省数据库表(或许多表),并将生成可用于访问表的工件。这减少了设置对象和配置文件以与数据库表交互的初始麻烦。MBG寻求对简单CRUD(创建,检索,更新,删除)的大部分数据库操作产生重大影响。您仍然需要为连接查询或存储过程手动编写SQL和对象代码。

1.mybatis generator安装使用

1.pom.xml引入

    
      org.mybatis.generator
      mybatis-generator-maven-plugin
      1.3.2
      
          true
          true
      
      
          
              Generate MyBatis Artifacts
              
                  generate
              
          
      
  

2. 在src/main/resources下新增 generatorConfig.xml 文件




    
    
    
    
        
            
            
            
        
        
        
        
        
        
            
        
        
        
            
            
            
            
        
        
        
            
        
        
        
            
        
        
        
                          
        
        

其中classPathEntry的值是数据库驱动的地址对应maven里面的jar包,不过这里因为mysql驱动的问题(否则会一直提示找不到主键),要降版本,上一节mysql-connector-java的版本是8.多的,降成现在这个。并且把jdbc.properties换成jdbc.driver=com.mysql.jdbc.Driver

3.使用

1.添加maven配置

系列教程javao2o商城之(三)mybatisgenerator及配置验证_第1张图片

2.输入 mybatis-generator:generate -e

系列教程javao2o商城之(三)mybatisgenerator及配置验证_第2张图片

2.验证配置

1.创建地区表

CREATE TABLE `tb_area` (
  `area_id` int(2) NOT NULL AUTO_INCREMENT,
  `area_name` varchar(200) NOT NULL,
  `priority` int(2) NOT NULL DEFAULT '0',
  `create_time` datetime DEFAULT NULL,
  `last_edit_time` datetime DEFAULT NULL,
  PRIMARY KEY (`area_id`),
  UNIQUE KEY `UK_AREA` (`area_name`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;

2.点击之前配置的maven

3.你会发现mybatis generator 会自动生成 entity dao map 文件,是不是爽的飞起,不用自己写maper.xml了

系列教程javao2o商城之(三)mybatisgenerator及配置验证_第3张图片

4.测试一个返回列表(因为mybatis generator不会自动生成查询所有数据的mybatis,所以自己写一个)

1.在dao层的AreaMapper里面添加 queryAreaList这个方法

package wang.beastxw.javao2o.dao;

import wang.beastxw.javao2o.entity.Area;

import java.util.List;

public interface AreaMapper {
    List queryAreaList();

    int deleteByPrimaryKey(Integer areaId);

    int insert(Area record);

    int insertSelective(Area record);

    Area selectByPrimaryKey(Integer areaId);

    int updateByPrimaryKeySelective(Area record);

    int updateByPrimaryKey(Area record);
}

2.在mapper的AreaMapper.xml下添加

5.写测试类

1.新建文件如下

系列教程javao2o商城之(三)mybatisgenerator及配置验证_第4张图片

2.BaseTest

package wang.beastxw.javao2o;

import org.junit.runner.RunWith;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

/**
 * 配置spring 和 junit 整合 , junit 启动时加载springIOC 容器
 */

@RunWith(SpringJUnit4ClassRunner.class)
// 告诉 junit spring 配置文件在哪里
@ContextConfiguration({"classpath:spring/spring-dao.xml","classpath:spring/spring-service.xml"})
public class BaseTest {

}

3.AreaDaoTest

先在数据库里tb_area这个表里增加一点数据

package wang.beastxw.javao2o.dao;

import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import wang.beastxw.javao2o.BaseTest;
import wang.beastxw.javao2o.entity.Area;

import java.util.List;

public class AreaDaoTest extends BaseTest {
    @Autowired
    AreaMapper areaMapper;

    @Test
    public void TestQueryAreaList() {
        List areaList = areaMapper.queryAreaList();
    }
}

4.点击debug 看数据是不是和数据库里一致

系列教程javao2o商城之(三)mybatisgenerator及配置验证_第5张图片

3.源码

uri: https://github.com/Hericium/j...
分支: feature/startmvc

4.添加群聊一起学习(698615299)!

系列教程javao2o商城之(三)mybatisgenerator及配置验证_第6张图片

你可能感兴趣的:(spring-mvc,mybatis)