mybatis简单案例源码详细【注释全面】——Dao层接口(UserMapper.java)

简介: mybatis简单案例源码详细【注释全面】——Dao层接口(UserMapper.java)
/**  
* @Title: IUserDao.java
* @Package org.dao
* @Description: TODO该方法的主要作用:
* @author A18ccms A18ccms_gmail_com  
* @date 2017-10-5 下午8:59:34
* @version V1.0  
*/
package org.dao;
import java.util.Date;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.annotations.Param;
import org.entity.Users;
 /**   
 *    
 * 项目名称:ssm_chop1   
 * 类名称:IUserDao   
 * 类描述:   
 * 创建人:Mu Xiongxiong  
 * 创建时间:2017-10-5 下午8:59:34   
 * 修改人:Mu Xiongxiong   
 * 修改时间:2017-10-5 下午8:59:34   
 * 修改备注:   
 * @version    
 *    
 */
public interface UserMapper {
  /**
   * 
  * @Description: 该方法的主要作用:查询所有的记录数
  * @Title: count
  * @param  @return 设定文件  
  * @return  返回类型:int   
  * @throws
   */
  int count();
  /**
   * 
  * @Description: 该方法的主要作用:查询所有的用户
  * @Title: getUserList
  * @param  @return 设定文件  
  * @return  返回类型:List<Users>   
  * @throws
   */
  List<Users> getUserList();
  
  /**
   * 
  * @Description: 该方法的主要作用:根据用户名进行模糊查询信息
  * @Title: getUsersByName
  * @param  @param name
  * @param  @return 设定文件  
  * @return  返回类型:Users   
  * @throws
   */
  Users getUsersByName(String name);
  
  /**
   * 
  * @Description: 该方法的主要作用:查询用户列表(参数是对象)
  * @Title: getUserListByUser
  * @param  @return 设定文件  
  * @return  返回类型:List<Users>   
  * @throws
   */
  List<Users> getUserListByUser(Users users);
  
  /**
   * 
  * @Description: 该方法的主要作用:查询用户列表(参数是Map集合)
  * @Title: getUsersListByMap
  * @param  @param userMap
  * @param  @return 设定文件  
  * @return  返回类型:List<Users>   
  * @throws
   */
  List<Users> getUsersListByMap(Map<String, String> userMap);
  /**
   * 
  * @Description: 该方法的主要作用:通过用户表和角色表进行连接查询
  * @Title: getUserListAndRole
  * @param  @param users
  * @param  @return 设定文件  
  * @return  返回类型:List<Users>   
  * @throws
   */
  List<Users> getUserListAndRole(Users users);
  /**
   * 
  * @Description: 该方法的主要作用:添加用户
  * @Title: saveUser
  * @param  @param users
  * @param  @return 设定文件  
  * @return  返回类型:int   
  * @throws
   */
  int saveUser(Users users);
  
  /**
   * 
  * @Description: 该方法的主要作用:根据编号修改
  * @Title: updateUser
  * @param  @param users
  * @param  @return 设定文件  
  * @return  返回类型:int   
  * @throws
   */
  int updateUser(Users users);
  
  /**
   * 
  * @Description: 该方法的主要作用:根据编号进行删除数据
  * @Title: delUser
  * @param  @param id
  * @param  @return 设定文件  
  * @return  返回类型:int   
  * @throws
   */
  int delUser(int id);
  
  /**
   * 
  * @Description: 该方法的主要作用:根据id查询用户信息
  * @Title: getUsersById
  * @param  @param id
  * @param  @return 设定文件  
  * @return  返回类型:Users   
  * @throws
   */
  Users getUsersById(int id);
  
  /**
   * 
  * @Description: 该方法的主要作用:根据用户角色获取用户信息
  * @Title: getUsersByRoleId
  * @param  @param id
  * @param  @return 设定文件  
  * @return  返回类型:Users   
  * @throws
   */
  List<Users> getUsersByRoleId(@Param("userrole")int id);
   
   /**
    * 
   * @Description: 该方法的主要作用:根据用户名和角色编号动态查询用户信息
   * @Title: getUsersListByUserNameAndRole_if
   * @param  @param userName
   * @param  @param usertole
   * @param  @return 设定文件  
   * @return  返回类型:List<Users>   
   * @throws
    */
   List<Users> getUsersListByUserNameAndRole_if(@Param("userName")String userName,@Param("userrole")Integer usertole);
   
   /**
    * 
   * @Description: 该方法的主要作用:动态根据用户名和角色id查询用户列表,where and|or
   * @Title: getUsersListByUserNameAndRole_ifAndwhere
   * @param  @param userName
   * @param  @param usertole
   * @param  @return 设定文件  
   * @return  返回类型:List<Users>   
   * @throws
    */
   List<Users> getUsersListByUserNameAndRole_ifAndwhere(@Param("userName")String userName,@Param("userrole")Integer usertole);
   /**
    * 
   * @Description: 该方法的主要作用:使用if+set动态修改用户表信息
   * @Title: updateUser_ifAndSet
   * @param  @param users
   * @param  @return 设定文件  
   * @return  返回类型:int   
   * @throws
    */
   int updateUser_ifAndSet(Users users);
   
   /**
    * 
   * @Description: 该方法的主要作用:使用trim进行查询用户信息
   * @Title: getUsersListByUserNameAndRole_ifAndwhere_trim
   * @param  @param userName
   * @param  @param usertole
   * @param  @return 设定文件  
   * @return  返回类型:List<Users>   
   * @throws
    */
   List<Users> getUsersListByUserNameAndRole_ifAndwhere_trim(@Param("userName")String userName,@Param("userrole")Integer usertole);
   
   /**
    * 
   * @Description: 该方法的主要作用:使用trim代替set进行动态修改用户信息
   * @Title: updateUser_ifAndTrim
   * @param  @param users
   * @param  @return 设定文件  
   * @return  返回类型:int   
   * @throws
    */
   int updateUser_ifAndTrim(Users users);
   
   /**
    * 
   * @Description: 该方法的主要作用:根据用户角色列表,获取该角色刘表下用户列表信息foreach_array
   * @Title: getUsersByRoleId_foreach_array
   * @param  @param roleids
   * @param  @return 设定文件  
   * @return  返回类型:List<Users>   
   * @throws
    */
   List<Users> getUsersByRoleId_foreach_array(Integer [] roleids);
   
   /**
    * 
   * @Description: 该方法的主要作用:根据用户角色列表,获取该角色刘表下用户列表信息foreach_list
   * @Title: getUsersByRoleId_foreach_list
   * @param  @param roleids
   * @param  @return 设定文件  
   * @return  返回类型:List<Users>   
   * @throws
    */
   List<Users> getUsersByRoleId_foreach_list(List<Integer> roleids);
   
   /**
    * 
   * @Description: 该方法的主要作用:根据用户角色列表和性别(多参数),获取该角色刘表下用户列表信息foreach_map
   * @Title: getUsersByRoleId_foreach_map
   * @param  @param roleids
   * @param  @return 设定文件  
   * @return  返回类型:List<Users>   
   * @throws
    */
   List<Users> getUsersByRoleId_foreach_many_map(Map<String, Object> conditionmap);
   
   /**
    * 
   * @Description: 该方法的主要作用:根据用户角色列表(单参数),获取该角色刘表下用户列表信息foreach_map
   * @Title: getUsersByRoleId_foreach_one_map
   * @param  @param conditionmap
   * @param  @return 设定文件  
   * @return  返回类型:List<Users>   
   * @throws
    */
   List<Users> getUsersByRoleId_foreach_one_map(Map<String, Object> conditionmap);
   
   /**
    * 
   * @Description: 该方法的主要作用:查询用户列表,使用choose
   * @Title: getUsersList_choose
   * @param  @param userName
   * @param  @param userrole
   * @param  @param userCode
   * @param  @return 设定文件  
   * @return  返回类型:List<Users>   
   * @throws
    */
   List<Users> getUsersList_choose(@Param("userName")String userName,
                   @Param("userrole")Integer userrole,
                   @Param("userCode")String userCode,
                   @Param("creationDate")Date creationDate
                    );
   /**
    * 
   * @Description: 该方法的主要作用:分页显示用户信息
   * @Title: getUserList_page
   * @param  @return 设定文件  
   * @return  返回类型:List<Users>   
   * @throws
    */
   List<Users> getUserList_page(@Param("from")Integer from,@Param("pageSize")Integer pageSize);
}


相关文章
|
7月前
|
SQL 存储 Java
Mybatis源码解析:详述初始化过程
以上就是MyBatis的初始化过程,这个过程主要包括SqlSessionFactory的创建、配置文件的解析和加载、映射文件的加载、SqlSession的创建、SQL的执行和SqlSession的关闭。这个过程涉及到了MyBatis的核心类和接口,包括SqlSessionFactory、SqlSessionFactoryBuilder、XMLConfigBuilder、XMLMapperBuilder、Configuration、SqlSession和Executor等。通过这个过程,我们可以看出MyBatis的灵活性和强大性,它可以很好地支持定制化SQL、存储过程以及高级映射,同时也避免了几
136 20
|
SQL XML Java
mybatis-源码深入分析(一)
mybatis-源码深入分析(一)
|
8月前
|
Java 编译器
课时7:Java程序基本概念(注释)
课时7介绍了Java程序中的注释。编程语言有其语法和语义,注释有助于理解代码需求,防止断档。Java支持三类注释:单行(//)、多行(/* */)和文档注释(/** */)。注释不会被编译器编译。范例中展示了如何在代码中使用注释,并强调了注释对项目文档管理的重要性。
167 3
|
10月前
|
算法 Java API
Java 方法注释:规范、实用和高质量的写法
本文深入探讨了如何编写高质量的 Java 方法注释
580 11
|
SQL Java 数据库连接
【MyBatisPlus·最新教程】包含多个改造案例,常用注解、条件构造器、代码生成、静态工具、类型处理器、分页插件、自动填充字段
MyBatis-Plus是一个MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。本文讲解了最新版MP的使用教程,包含多个改造案例,常用注解、条件构造器、代码生成、静态工具、类型处理器、分页插件、自动填充字段等核心功能。
1830 5
【MyBatisPlus·最新教程】包含多个改造案例,常用注解、条件构造器、代码生成、静态工具、类型处理器、分页插件、自动填充字段
|
11月前
|
Java
Java 中的注释
1. 单行注释:// 2. 多行注释:/* */ 3. 文档注释::/** **/
|
Java 数据库连接 Maven
mybatis使用一:springboot整合mybatis、mybatis generator,使用逆向工程生成java代码。
这篇文章介绍了如何在Spring Boot项目中整合MyBatis和MyBatis Generator,使用逆向工程来自动生成Java代码,包括实体类、Mapper文件和Example文件,以提高开发效率。
587 2
mybatis使用一:springboot整合mybatis、mybatis generator,使用逆向工程生成java代码。
|
前端开发 Java Apache
Springboot整合shiro,带你学会shiro,入门级别教程,由浅入深,完整代码案例,各位项目想加这个模块的人也可以看这个,又或者不会mybatis-plus的也可以看这个
本文详细讲解了如何整合Apache Shiro与Spring Boot项目,包括数据库准备、项目配置、实体类、Mapper、Service、Controller的创建和配置,以及Shiro的配置和使用。
3024 2
Springboot整合shiro,带你学会shiro,入门级别教程,由浅入深,完整代码案例,各位项目想加这个模块的人也可以看这个,又或者不会mybatis-plus的也可以看这个
|
Java 测试技术 程序员
💡Java 零基础 | 深入理解注释的重要性与应用
【10月更文挑战第10天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
220 5
|
缓存 Java 数据库连接
使用MyBatis缓存的简单案例
MyBatis 是一种流行的持久层框架,支持自定义 SQL 执行、映射及复杂查询。本文介绍了如何在 Spring Boot 项目中集成 MyBatis 并实现一级和二级缓存,以提高查询性能,减少数据库访问。通过具体的电商系统案例,详细讲解了项目搭建、缓存配置、实体类创建、Mapper 编写、Service 层实现及缓存测试等步骤。
162 2