酸爽!IDEA 中这么玩 MyBatis,让编码速度飞起!

点击上方“码农突围”,马上关注

这里是码农充电第一站,回复“666”,获取一份专属大礼包
真爱,请设置“星标”或点个“在看”

酸爽!IDEA 中这么玩 MyBatis,让编码速度飞起!_第1张图片

来源:cnblogs.com/java-class/p/6237564.html

  • 1. 搭建 MyBatis Generator 插件环境

    • a. 添加插件依赖 pom.xml

    • b. 配置文件 generatorConfig.xml

    • c. 数据库配置文件 jdbc.properties

    • d. 配置插件启动项

  • 2.项目实战

    • a. 比如在一个项目 我们要删除某个小组下某个用户的信息

    • b. 根据小组ID(非主键 更新小组信息)

    • c. 各种查询


IDEA 逆向 MyBatis 工程时,不像支持 Hibernate 那样有自带插件,需要集成第三方的 MyBatis Generator。

MyBatis Generator的详细介绍 http://mybatis.github.io/generator/index.html

本篇博客图解 MyBatis Generator 的使用过程,并结合实战说明逆向工程的使用方式。

1. 搭建 MyBatis Generator 插件环境

a. 添加插件依赖 pom.xml

          
            
                org.mybatis.generator
                mybatis-generator-maven-plugin
                1.3.2
                
                    src/main/resources/generatorConfig.xml
                    true
                    true
                
                
                    
                        Generate MyBatis Artifacts
                    
                
                
                    
                        org.mybatis.generator
                        mybatis-generator-core
                        1.3.2
                    
                
            

b. 配置文件 generatorConfig.xml




    
     

    
        
        
            
            
        

        
        
        

        
        

        
        
            
            
            
            
            
            
            
            
        

        
        
            
        

        
        
            
        

        
            
        
    


c. 数据库配置文件 jdbc.properties

jdbc_driverLocation=D:\\Program Files\\Repository\\mysql\\mysql-connector-java\\5.1.38\\mysql-connector-java-5.1.38.jar
jdbc_driverClass=com.mysql.jdbc.Driver
jdbc_url=jdbc:mysql://localhost:3306/db_test?useUnicode=true&characterEncoding=utf-8
jdbc_user=root
jdbc_pwd=123456
validationQuery = select 1

d. 配置插件启动项

酸爽!IDEA 中这么玩 MyBatis,让编码速度飞起!_第2张图片

2.项目实战

User类就是普通的实体类,定义了数据库对应的字段,以及set/get方法

Mybatis 引入了 Example 类,用来封装数据库查询条件。

a. 比如在一个项目 我们要删除某个小组下某个用户的信息

    public int deleteUserApplyInfo(long user_id,long team_id){
        StudyTeamUserApplyInfoExample ue = new StudyTeamUserApplyInfoExample();
        ue.createCriteria().andUserIdEqualTo(new BigDecimal(user_id)).andTeamIdEqualTo(new BigDecimal(team_id));
        return studyTeamUserApplyInfoDAO.deleteByExample(ue);
    }

b. 根据小组ID(非主键 更新小组信息)

   public int updateStudyTeamInfo(StudyTeamInfo st){
        StudyTeamInfoExample ste = new StudyTeamInfoExample();
        ste.createCriteria().andTeamIdEqualTo(st.getTeamId());
        return studyTeamInfoDAO.updateByExampleSelective(st,ste);
    }

c. 各种查询

(1)模糊查询并且排序

public List getStudyTeamInfoByName(String team_name){
        StudyTeamInfoExample se = new StudyTeamInfoExample();
        se.createCriteria().andTeamNameLike("%"+team_name+"%").andEnableEqualTo((short)1);
        se.setOrderByClause("team_score desc");
        List ls = studyTeamInfoDAO.selectByExample(se);
        if(ls!=null&&ls.size()>0){
            return ls;
        }
        return null;
    }

(2)大于等于某个分数 并且小于某个分数的查询

public StudyTeamLevel getStudyTeamLevel(long score){
        StudyTeamLevelExample le = new StudyTeamLevelExample();
        le.createCriteria().andNeedScoreLessThanOrEqualTo(score).andUpScoreGreaterThan(score);
        List ls = studyTeamLevelDAO.selectByExample(le);
        if(ls!=null&&ls.size()>0){
            return ls.get(0);



---END---
重磅!码农突围-技术交流群已成立
扫码可添加码农突围助手,可申请加入码农突围大群和细分方向群,细分方向已涵盖:Java、Python、机器学习、大数据、人工智能等群。一定要备注:开发方向+地点+学校/公司+昵称(如Java开发+上海+拼夕夕+猴子),根据格式备注,可更快被通过且邀请进群
▲长按加群
推荐阅读•  史上最烂的项目:苦撑 12 年,600 多万行代码•  互联网公司忽悠员工的黑话,套路太深了。。。•  阿里官方Redis开发规范!•  10M/S!百度网盘偷偷更新,终于实现免费不限速了!•  微服务之间最佳调用方式是什么?•  牛逼!36岁阿里 P8宣布退休!六年实现“财务自由”,裸辞环游世界!最近面试BAT,整理一份面试资料《Java面试BAT通关手册》,覆盖了Java核心技术、JVM、Java并发、SSM、微服务、数据库、数据结构等等。获取方式:点“在看”,关注公众号并回复 BAT 领取,更多内容陆续奉上。如有收获,点个在看,诚挚感谢明天见(。・ω・。)ノ♡

你可能感兴趣的:(酸爽!IDEA 中这么玩 MyBatis,让编码速度飞起!)