使用eclipse逆向mybatis代码

MyBatis的逆向工程能自动帮开发者生成数据库表对应的 pojo实体文件,自动生成映射文件
自定生成表的各种(CRUD)的sql语句, 但是只能做单表操作,联合查询还得开发者自己动

使用逆向工程得先在Eclipse安装逆向工程的插件

第一步:eclipse安装mybatis逆向工程插件

在线安装

在这里插入图片描述

–搜索mybatis

在这里插入图片描述

–然后一直安装。然后判断是否安装成功。有以下文件表示成功。没有则是失败。

在这里插入图片描述

离线安装

--下载插件包 下载地址:https://github.com/mybatis/generator/releases

在这里插入图片描述

–选择离线安装

在这里插入图片描述

–导入离线包

在这里插入图片描述

–选项

在这里插入图片描述

–然后就next,直到finish

第二步:新建一个普通java项目,导入mybatis.jar包和数据库驱动包

在这里插入图片描述

第三步:生成配置文件

在这里插入图片描述

–配置生成文件

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<generatorConfiguration>
  <context id="context1">
   <!-- 注释构建 -->
    <commentGenerator>
       <!-- 去掉所有的注释 -->
    	<property name="suppressAllComments" value="true"/>
    	<property name="suppressDate" value="true"/>
    </commentGenerator>
    
    <!-- 数据库四要素 -->
    <jdbcConnection connectionURL="jdbc:mysql://localhost:3306/gj1" 
    driverClass="com.mysql.jdbc.Driver" 
    password="123456" 
    userId="root" />
    <!-- 实体类 : pojo
    	targetPackage : 实体类生成后存放的包
    	targetProject : 存放的目录一般都放在 src下面
      -->
    <javaModelGenerator targetPackage="com.mybatis.pojo" targetProject="mybatis-generator/src" />
    <!-- 映射文件 -->
    <sqlMapGenerator targetPackage="com.mybatis.mapper" targetProject="mybatis-generator/src" />
    <!-- 操作接口 
    	type 生成映射的形式
    		ANNOTATEDMAPPER : 纯注解的,没有xml映射
    		XMLMAPPER : 生成的有xml映射文件
    -->
    <javaClientGenerator  targetPackage="com.mybatis.mapper" targetProject="mybatis-generator/src" type="ANNOTATEDMAPPER" />
    
    <!-- 要生成对应表的配置
    	tableName : 数据库表名
    	domainObjectName:生成的pojo类名
    	//如果下面全部是true,mybatis直接可以使用纯面向对象开发
    	enableCountByExample : 是否生成查询总数的 Example 
    	enableDeleteByExample : 是否生成删除的 Example 
    	enableSelectByExample : 是否生成查询集合的 Example 
    	enableUpdateByExample : 是否生成修改的 Example 
     -->
    <table  tableName="user" domainObjectName="User"  enableCountByExample="false" enableDeleteByExample="false" enableSelectByExample="true" enableUpdateByExample="false"></table>
    <table  tableName="employee" enableCountByExample="false" enableDeleteByExample="false" enableSelectByExample="true" enableUpdateByExample="false"></table>
    <table  tableName="department" enableCountByExample="false" enableDeleteByExample="false" enableSelectByExample="true" enableUpdateByExample="false"></table>
  </context>
</generatorConfiguration>

第三步:开始逆向工程

选中 generatorConfig.xml 逆向工程配置文件,点击鼠标右键

在这里插入图片描述

使用mybatis逆向工程的条件查询

	@Test
	public void testSelectAll() {
		// 1.创建SqlSession操作对象
		SqlSession session = MyBatisUtil.openSession();

		// 2.创建UserMapper接口的代理对象
		UserMapper userMapper = session.getMapper(UserMapper.class);

		//多行查询的条件对象,默认查询出所有对象
		UserExample example=new UserExample();
		/*
		 * criteria限制条件对象。默认可以拼接多个条件,但是多个条件之间默认都是AND
		 * 	如果想要多个条件之间为or。则需要两个条件的criteria对象不是同一个对象
		 */
		Criteria criteria = example.createCriteria();
		criteria.andUsernameLike("%女%");
		Criteria createCriteria = example.createCriteria();
		createCriteria.andAgeLessThan(100);
		example.or(createCriteria);
		List<User> list = userMapper.selectByExample(example);
		System.out.println(list);

		// 4.关闭session
		session.close();
	}

逆向功能的缺点

逆向功能不能逆向多表,只能逆向单表操作,多表之间有外键对应java关联关系没办法映射,需要开发者手动编写对应代码
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值