zoukankan      html  css  js  c++  java
  • generator逆向工程的使用

    搬运连接:https://blog.csdn.net/qq_39056805/article/details/80585941

    查询

      首先说一下查询的不足之处:不能指定查询的列,只能够查询所有列

        

    我们可以看到,有三个查询方法(一般来说只有两个查询方法,第二个查询方法只会在特定条件下出现)

    方法1:selectByExample(TbItemDescExample  example)        

    返回值:List<TbItemDesc>

    作用:通过特定限制条件查询信息,example用于生成一个Criteria对象来设置查询条件

    int countByExample(UserExample example) thorws SQLException    按条件计数
    int deleteByPrimaryKey(Integer id) thorws SQLException    按主键删除
    int deleteByExample(UserExample example) thorws SQLException    按条件查询
    String/Integer insert(User record) thorws SQLException    插入数据(返回值为ID)
    User selectByPrimaryKey(Integer id) thorws SQLException    按主键查询
    ListselectByExample(UserExample example) thorws SQLException    按条件查询
    ListselectByExampleWithBLOGs(UserExample example) thorws SQLException    按条件查询(包括BLOB字段)。只有当数据表中的字段类型有为二进制的才会产生。
    int updateByPrimaryKey(User record) thorws SQLException    按主键更新
    int updateByPrimaryKeySelective(User record) thorws SQLException    按主键更新值不为null的字段
    int updateByExample(User record, UserExample example) thorws SQLException    按条件更新
    int updateByExampleSelective(User record, UserExample example) thorws SQLException    按条件更新值不为null的字段
     
     
     

     具体可设置的条件很多很多,根据表的结构的不同会有不同的可限制条件,比如:

     使用案例

     public void testFindUserByName(){ 
       
            //通过criteria构造查询条件 
            UserExample userExample = new UserExample(); 
            userExample.setOrderByClause("username asc"); //asc升序,desc降序排列 
            userExample.setDistinct(false); //去除重复,true是选择不重复记录,false反之 
            UserExample.Criteria criteria = userExample.createCriteria(); //构造自定义查询条件 
            criteria.andUsernameEqualTo("张三"); 
       
            //自定义查询条件可能返回多条记录,使用List接收 
            List<User> users = userMapper.selectByExample(userExample); 
       
            System.out.println(users); 
        }

     代码解析

    Mybatis逆向工程会生成实例及实例对应的example(用于添加条件,相当于where后的部分)  
    xxxExample example = new xxxExample();  
    Criteria criteria = example.createCriteria();  
    方法说明:  
    // 1.添加升序排列条件,DESC为降序  
    example.setOrderByClause("字段名ASC")  
    // 2.去除重复,boolean类型,true为选择不重复的记录  
    example.setDistinct(false)  
    // 3.添加字段xxx为null的条件  
    criteria.andXxxIsNull  
    // 4.添加字段xxx不为null的条件  
    criteria.andXxxIsNotNull  
    // 5.添加xxx字段等于value条件  
    criteria.andXxxEqualTo(value)  
    // 6.添加xxx字段不等于value条件  
    criteria.andXxxNotEqualTo(value)  
    // 7.添加xxx字段大于value条件  
    criteria.andXxxGreaterThan(value)  
    // 8.添加xxx字段大于等于value条件  
    criteria.andXxxGreaterThanOrEqualTo(value)  
    // 9.添加xxx字段小于value条件  
    criteria.andXxxLessThan(value)  
    // 10.添加xxx字段小于等于value条件  
    criteria.andXxxLessThanOrEqualTo(value)  
    // 11.添加xxx字段值在List  
    criteria.andXxxIn(List)  
    // 12.不添加xxx字段值在List  
    criteria.andXxxNotIn(List)  
    // 13.添加xxx字段值在之间  
    criteria.andXxxBetween(value1,value2)  
    // 14.添加xxx字段值不在之间  
    criteria.andXxxNotBetween(value1,value2)  

    在example 除了这有的以外 AND OR, 还有联表查询,批量增删改?这些怎么写?

    //通过criteria构造查询条件

    UserExample userExample = new UserExample();

    userExample.setOrderByClause("username asc");//asc升序,desc降序排列

    userExample.setDistinct(false); //去除重复,true是选择不重复记录,false反之

    UserExample.Criteria criteria = userExample.createCriteria(); //构造自定义查询条件

    积极向上,奋发图强,向着哪个目标前进。
  • 相关阅读:
    深度解析U-Boot网络实现(长篇好文)
    优化嵌入式Linux的启动时间之内核
    优化嵌入式Linux的启动时间之文件系统
    Java安全之 ClassLoader类加载器
    Java 审计之xss审计要点
    Java审计之命令执行篇
    Java审计之文件操作漏洞
    Java 审计 之过滤器防御xss
    Java 审计之SSRF篇(续)
    Java 审计之SSRF篇
  • 原文地址:https://www.cnblogs.com/wzq-xf/p/11589700.html
Copyright © 2011-2022 走看看