147_Java_SpringMybatis_Mybatis_Generator

      網(wǎng)友投稿 642 2025-04-04

      MyBatis-逆向工程


      MyBatis Generator:簡稱MBG,是一個專門為MyBatis框架使用者定制的代碼生成器,

      可以快速的根據(jù)表生成對應(yīng)的映射文件,接口,以及bean類。支持基本的增刪改查,以及QBC風格的條件查詢。

      但是表連接、存儲過程等這些復(fù)雜sql的定義需要我們手工編寫

      ? 官方文檔地址

      http://www.mybatis.org/generator/

      ? 官方工程地址

      https://github.com/mybatis/generator/releases

      MBG使用步驟:

      1 編寫MBG的配置文件(重要幾處配置)

      1)jdbcConnection配置數(shù)據(jù)庫連接信息

      2)javaModelGenerator配置javaBean的生成策略

      3)sqlMapGenerator 配置sql映射文件生成策略

      4)javaClientGenerator配置Mapper接口的生成策略

      5)table 配置要逆向解析的數(shù)據(jù)表 tableName:表名 domainObjectName:對應(yīng)的javaBean名

      2 運行代碼生成器生成代碼

      147_Java_SpringMybatis_Mybatis_Generator

      public class MyBatisTest { public SqlSessionFactory getSqlSessionFactory() throws IOException { String resource = "mybatis-config.xml"; InputStream inputStream = Resources.getResourceAsStream(resource); return new SqlSessionFactoryBuilder().build(inputStream); } @Test public void testMbg() throws Exception { List warnings = new ArrayList(); boolean overwrite = true; File configFile = new File("mbg.xml"); ConfigurationParser cp = new ConfigurationParser(warnings); Configuration config = cp.parseConfiguration(configFile); DefaultShellCallback callback = new DefaultShellCallback(overwrite); MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings); myBatisGenerator.generate(null); } @Test public void testMyBatis3Simple() throws IOException{ SqlSessionFactory sqlSessionFactory = getSqlSessionFactory(); SqlSession openSession = sqlSessionFactory.openSession(); try{ EmployeeMapper mapper = openSession.getMapper(EmployeeMapper.class); List list = mapper.selectByExample(null); for (Employee employee : list) { System.out.println(employee.getId()); } }finally{ openSession.close(); } } @Test public void testMyBatis3() throws IOException{ SqlSessionFactory sqlSessionFactory = getSqlSessionFactory(); SqlSession openSession = sqlSessionFactory.openSession(); try{ EmployeeMapper mapper = openSession.getMapper(EmployeeMapper.class); //xxxExample就是封裝查詢條件的 //1、查詢所有 //List emps = mapper.selectByExample(null); //2、查詢員工名字中有e字母的,和員工性別是1的 //封裝員工查詢條件的example EmployeeExample example = new EmployeeExample(); //創(chuàng)建一個Criteria,這個Criteria就是拼裝查詢條件 //select id, last_name, email, gender, d_id from tbl_employee //WHERE ( last_name like ? and gender = ? ) or email like "%e%" Criteria criteria = example.createCriteria(); criteria.andLastNameLike("%e%"); criteria.andGenderEqualTo("1"); Criteria criteria2 = example.createCriteria(); criteria2.andEmailLike("%e%"); example.or(criteria2); List list = mapper.selectByExample(example); for (Employee employee : list) { System.out.println(employee.getId()); } }finally{ openSession.close(); } } }

      Generator Java MyBatis

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔相應(yīng)法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔相應(yīng)法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:求和:不求人超越函數(shù)(01)
      下一篇:Excel中表格進行凍結(jié)首行和列的操作技巧(Excel表格怎么凍結(jié)首行)
      相關(guān)文章
      亚洲阿v天堂在线2017免费| 国产精品亚洲小说专区| 亚洲精品国产高清嫩草影院| 亚洲熟妇AV日韩熟妇在线| 久久精品国产亚洲av麻豆蜜芽| 久久久无码精品亚洲日韩京东传媒 | 久久久久亚洲精品天堂久久久久久| 国产亚洲精品欧洲在线观看| 在线视频亚洲一区| 亚洲国产综合精品中文字幕 | 亚洲日本乱码在线观看| 337p日本欧洲亚洲大胆裸体艺术 | 亚洲国产精品13p| 亚洲黄片毛片在线观看| 婷婷综合缴情亚洲狠狠尤物| 婷婷亚洲天堂影院| 亚洲色偷偷综合亚洲AV伊人| 国产亚洲色婷婷久久99精品91| 狠狠色婷婷狠狠狠亚洲综合| 亚洲日韩欧洲无码av夜夜摸| 亚洲av无码成h人动漫无遮挡 | 亚洲国产综合91精品麻豆| 亚洲一本综合久久| 亚洲欧洲精品在线| 国产精品亚洲四区在线观看| 亚洲老熟女五十路老熟女bbw| 精品国产日韩亚洲一区在线| 亚洲国产精品综合久久网络| 中文字幕亚洲专区| 久久91亚洲精品中文字幕| 97se亚洲综合在线| 亚洲一区二区三区免费观看| 亚洲kkk4444在线观看| 亚洲精品色在线网站| 亚洲午夜无码片在线观看影院猛 | 国产亚洲精品精华液| 精品日韩亚洲AV无码一区二区三区 | 亚洲乱码中文字幕手机在线| 亚洲精品卡2卡3卡4卡5卡区| 亚洲乱亚洲乱淫久久| 亚洲乱码一二三四五六区|