企业网站建设的几种形式,做ppt很有创意的网站,软件开发公司地址,windows配置wordpressMyBatis 学习记录#xff08;六#xff09; MyBatis的逆向工程1、创建逆向工程添加依赖和插件创建逆向工程的配置文件执行MBG插件的generate目标最终生成的效果 2、QBC查询 MyBatis的逆向工程
**正向工程#xff1a;**先创建Java实体类#xff0c;由框架负责根据实体类生成… MyBatis 学习记录六 MyBatis的逆向工程1、创建逆向工程添加依赖和插件创建逆向工程的配置文件执行MBG插件的generate目标最终生成的效果 2、QBC查询 MyBatis的逆向工程
**正向工程**先创建Java实体类由框架负责根据实体类生成数据库表。Hibernate是支持正向工程 的。 **逆向工程**先创建数据库表由框架负责根据数据库表反向生成如下资源
Java实体类Mapper接口Mapper映射文件
1、创建逆向工程
添加依赖和插件 !-- 依赖MyBatis核心包 --dependencies!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --dependencygroupIdorg.mybatis/groupIdartifactIdmybatis/artifactIdversion3.5.6/version/dependency!-- junit测试 --dependencygroupIdjunit/groupIdartifactIdjunit/artifactIdversion4.12/versionscopetest/scope/dependency!-- MySQL驱动 --dependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion8.0.28/version/dependency!-- log4j日志 --dependencygroupIdlog4j/groupIdartifactIdlog4j/artifactIdversion1.2.17/version/dependencydependencygroupIdorg.junit.jupiter/groupIdartifactIdjunit-jupiter/artifactIdversionRELEASE/versionscopetest/scope/dependency!-- https://mvnrepository.com/artifact/com.github.pagehelper/pagehelper --dependencygroupIdcom.github.pagehelper/groupIdartifactIdpagehelper/artifactIdversion5.2.0/version/dependency/dependencies!-- 控制Maven在构建过程中相关配置 --build!-- 构建过程中用到的插件 --plugins!-- 具体插件逆向工程的操作是以构建过程中插件形式出现的 --plugingroupIdorg.mybatis.generator/groupIdartifactIdmybatis-generator-maven-plugin/artifactIdversion1.3.0/version!-- 插件的依赖 --dependencies!-- 逆向工程的核心依赖 --dependencygroupIdorg.mybatis.generator/groupIdartifactIdmybatis-generator-core/artifactIdversion1.3.2/version/dependency!-- 数据库连接池 --dependencygroupIdcom.mchange/groupIdartifactIdc3p0/artifactIdversion0.9.2/version/dependency!-- MySQL驱动 --dependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion8.0.28/version/dependency/dependencies/pluginplugingroupIdorg.apache.maven.plugins/groupIdartifactIdmaven-compiler-plugin/artifactIdconfigurationsource8/sourcetarget8/target/configuration/plugin/plugins/build创建逆向工程的配置文件
文件名必须是generatorConfig.xml
?xml version1.0 encodingUTF-8 ?
!DOCTYPE generatorConfiguration PUBLIC -//mybatis.org//DTD MyBatis Generator Configuration 1.0//ENhttp://mybatis.org/dtd/mybatis-generator-config_1_0.dtd
generatorConfiguration!--targetRuntime: 执行生成的逆向工程的版本MyBatis3Simple: 生成基本的CRUD清新简洁版MyBatis3: 生成带条件的CRUD奢华尊享版--context idDB2Tables targetRuntimeMyBatis3!-- 数据库的连接信息 --jdbcConnection driverClasscom.mysql.jdbc.DriverconnectionURLjdbc:mysql://localhost:3306/mybatisuserIdrootpassword123456/jdbcConnection!-- javaBean的生成策略--javaModelGenerator targetPackagecom.atguigu.mybatis.pojotargetProject.\src\main\javaproperty nameenableSubPackages valuetrue /property nametrimStrings valuetrue //javaModelGenerator!-- SQL映射文件的生成策略 --sqlMapGenerator targetPackagecom.atguigu.mybatis.mappertargetProject.\src\main\resourcesproperty nameenableSubPackages valuetrue //sqlMapGenerator!-- Mapper接口的生成策略 --javaClientGenerator typeXMLMAPPERtargetPackagecom.atguigu.mybatis.mapper targetProject.\src\main\javaproperty nameenableSubPackages valuetrue //javaClientGenerator!-- 逆向分析的表 --!-- tableName设置为*号可以对应所有表此时不写domainObjectName --!-- domainObjectName属性指定生成出来的实体类的类名 --table tableNamet_emp domainObjectNameEmp/table tableNamet_dept domainObjectNameDept//context
/generatorConfiguration执行MBG插件的generate目标 最终生成的效果 2、QBC查询
Test
public void testMBG() throws IOException {InputStream is Resources.getResourceAsStream(mybatis-config.xml);SqlSession sqlSession newSqlSessionFactoryBuilder().build(is).openSession(true);EmpMapper mapper sqlSession.getMapper(EmpMapper.class);EmpExample empExample new EmpExample();//创建条件对象通过andXXX方法为SQL添加查询添加每个条件之间是and关系empExample.createCriteria().andEnameLike(a).andAgeGreaterThan(20).andDidIsNotNull();//将之前添加的条件通过or拼接其他条件empExample.or().andSexEqualTo(男);ListEmp list mapper.selectByExample(empExample);for (Emp emp : list) {System.out.println(emp);
}
}