1Mybatis框架的简介
MyBatis前身是iBatis,是Apache的一个开源项目
半自动化的ORM实现(ORM)————》对象关系映射 对数据库进行操作
Dao层
动态SQL
小巧灵活,
2 搭建MyBatis开发环境
我这里是通过idea中创建Maven项目来进行搭建MyBatis
步骤如下
而在maven中我们不需要取网上下载架包,我们在搭建maven环境时,我们就可以访问阿里云仓库,idea在里面自动下载架包,这个我们就要在pom.xml配置文件中写我们需要导包的版本
下面是演示如何创建Maven项目并自动导包
1
file-new -project
2
3
4这个很重要,这个是你在网上下载的Maven架包的路径所在的setting.xml文件和你创建下载仓库路径,这个不推荐放在c盘,在不选择的情况下,是默认的,默认这个在导包时非常的缓慢,因为它是在外国网站下载等
5一直按finish就创建成功了
6 在pom.xml中写要导入包的版本如下junit ,mysql,mybatis,log4j
创建的包名和路径
1 数据库的配置文件 database.properties
driver=com.mysql.jdbc.Driver
#在和mysql传递数据的过程中,使用unicode编码格式,并且字符集设置为utf-8,
# userSSl=false时 是为了MySQL在高版本需要指明是否进行SSL连接。
# zeroDateTimeBehavior=convertToNull是为了 处理JAVA连接MySQL数据库,在操作各项值均为为0(或者有0不正确的数据??)的timestamp等(日期为0000-00-00。。。。)类型时不能正确处理,而是默认抛出一个异常,
url=jdbc:mysql://127.0.0.1:3306/smbms?useUnicode=true&characterEncoding=utf-8&useSSL=false&zeroDateTimeBehavior=convertToNull
user=root
password=hukaixin150
2编写Mybits核心配置文件mybatis-config.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!-- 引入 database.properties 文件-->
<properties resource="database.properties"/>
<!--自动映射级别 autoMappingBehavior
value在默认情况下(PARTIAL),若是普通数据类型的属性,会自动匹配,对有内部嵌套的(association 或collection)
value 为FULL时,自动匹配所有
value -->
<settings>
<setting name="autoMappingBehavior" value="FULL"/><!--自动映射级别-->
</settings>
<!--取别名-->
<typeAliases>
<package name="cn.kgc.pojo"/><!--对我们的配置文件中用到这个路径时,就可以不加,比如说我们UserMapp.xml文件中用到的User-->
</typeAliases>
<environments default="development">
<environment id="development">
<!--配置事务管理,采用JDBC的事务管理 -->
<transactionManager type="JDBC"></transactionManager>
<!-- POOLED:mybatis自带的数据源,JNDI:基于tomcat的数据源 -->
<dataSource type="POOLED">
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${user}"/>
<property name="password" value="${password}"/>
</dataSource>
</environment>
</environments>
<!-- 将mapper文件加入到配置文件中 -->
<mappers>
<mapper resource="mapper/UserMapper.xml"/><!--引入UserMapper.xml配置文件-->
<mapper resource="mapper/ProviderMapper.xml"/>
<mapper resource="mapper/BillMapper.xml"/>
</mappers>
</configuration>
3 pojo实体类 如User如下
package cn.kgc.pojo;
import java.util.Date;
import java.util.List;
public class User {
private Integer id; //id
private String userCode; //用户编码
private String userName; //用户名称
private String userPassword; //用户密码
private Integer gender; //性别
private Date birthday; //出生日期
private String phone; //电话
private String address; //地址
private Integer userRole; //用户角色
private Integer createdBy; //创建者
private Date creationDate; //创建时间
private Integer modifyBy; //更新者
private Date modifyDate; //更新时间
private String userRoleName;//role表中的roleName//用户角色名称
private Role role;//用户角色,用对象来封装
private List<Address> addressList;//用户的地址
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getUserCode() {
return userCode;
}
public void setUserCode(String userCode) {
this.userCode = userCode;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getUserPassword() {
return userPassword;
}
public void setUserPassword(String userPassword) {
this.userPassword = userPassword;
}
public Integer getGender() {
return gender;
}
public void setGender(Integer gender) {
this.gender = gender;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birthday = birthday;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public Integer getUserRole() {
return userRole;
}
public void setUserRole(Integer userRole) {
this.userRole = userRole;
}
public Integer getCreatedBy() {
return createdBy;
}
public void setCreatedBy(Integer createdBy) {
this.createdBy = createdBy;
}
public Date getCreationDate() {
return creationDate;
}
public void setCreationDate(Date creationDate) {
this.creationDate = creationDate;
}
public Integer getModifyBy() {
return modifyBy;
}
public void setModifyBy(Integer modifyBy) {
this.modifyBy = modifyBy;
}
public Date getModifyDate() {
return modifyDate;
}
public void setModifyDate(Date modifyDate) {
this.modifyDate = modifyDate;
}
public String getUserRoleName() {
return userRoleName;
}
public void setUserRoleName(String userRoleName) {
this.userRoleName = userRoleName;
}
public Role getRole() {
return role;
}
public void setRole(Role role) {
this.role = role;
}
public List<Address> getAddressList() {
return addressList;
}
public void setAddressList(List<Address> addressList) {
this.addressList = addressList;
}
}
4 Dao成接口,与mapper包里的配置文件对应,如UserMapper接口 与UserMapper.xml对应,相当于夫妻关系
如下UserMapper接口 和UserMapper配置文件
UserMapper接口
package cn.kgc.dao;
import cn.kgc.pojo.User;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface UserMapper {
//UserMapper配置文件中查询的总数
public Integer count();
//查询表中所有数据
public List<User> selectUser();
//模糊查询
public List<User> selectUserInfo(String userName);
//多条件查询 - ----对象进行封装参数
public List<User> selectUserInfo1(User user);
// 多条件查询 ---map进行封装参数
public List<User> selectUserInfoMap(Map map);
//多条件查询,两个表中数据 配置文件要映射, 通过userName何userRole
public List<User> selectUserrole(@Param("userName") String userName,
@Param("userRole") Integer userRole);
//多条件查询,两个表中数据 配置文件要映射, map进行封装参数
public List<User> selectUserRoleInfo(Map map);
//添加用户信息
public int addUser(User user);
/**
* 修改用户信息
* @param user
* @return
*/
public int updateUser(User user);
/**
* 删除用户信息
* @param id
* @return
*/
public int deleteUser(Integer id);
/**
* 结果映射
* 使用association处理一对一关联关系
* @param roleId
* @return
*/
public List<User> selectUserRole(@Param("userRole")Integer roleId);
/**
* 结果映射
* 通过collection处理一对多关联关系
* @param userId
* @return
*/
public List<User> selectAddress(@Param("id")Integer userId);
/**
* 根据用户角色,获取表中信息
* 参数为数组
* @param roleIds
* @return
*/
public List<User> selectUserRoleId_foreach_array(Integer[] roleIds);
/**根据用户角色,获取表中信息
* 参数为集合
* @param rolelist
* @return
*/
public List<User> selecUserRoleId_foreach_list(List<Integer> rolelist);
/**
*
* @param roleMap
* @return
*/
public List<User> selectUserRoleId_foreach_map(Map<String,Object> roleMap);
/**
* choose相当于我们的switch语句
* @param userName
* @param userCode
* @return
*/
public List<User> selectUser_choose(@Param("userName") String userName,
@Param("userCode") String userCode,
@Param("userRole") Integer userRole);
/**
* 动态sql进行分页查询
* @param userName
* @param roleId
* @param currenPageNo
* @param pageSize
* @return
*/
public List<User> selectUser_fenye(@Param("userName") String userName,
@Param("userRole") Integer roleId,
@Param("from") Integer currenPageNo,
@Param("PageSize") Integer pageSize);
}
UserMapper.xml配置文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.kgc.dao.UserMapper"><!-- 区分不同的mapper,与cn.kgc.dao下UserMapper对应 -->
<!--手动映射-->
<resultMap id="userList" type="User">
<result property="id" column="id" />
<result property="userCode" column="userCode"/>
<result property="userName" column="userName"/>
<result property="address" column="address"/>
<result property="userRoleName" column="roleName"/>
</resultMap>
<resultMap id="roleResult" type="Role">
<id property="id" column="r_id"/>
<result property="roleCode" column="roleCode"/>
<result property="roleName" column="roleName"/>
</resultMap>
<!--手动映射 通过association来处理一一映射-->
<resultMap id="userRoleResult" type="User">
<result property="id" column="id"/>
<result property="userCode" column="userCode"/>
<result property="userName" column="userName"/>
<result property="userRole" column="userRole"/>
<association property="role" javaType="Role" resultMap="roleResult"/>
</resultMap>
<!--Address表中的映射,关联着User表,通过collection来处理映射,
一对多的关系,比如一个人有多个房子,房子是一个表中的一个属性,
这个人是另外一个表的属性,这俩个表是要有关联的-->
<resultMap id="addressResult" type="Address">
<id property="id" column="a_id"/>
<result property="contact" column="contact"/>
<result property="addressDesc" column="addressDesc"/>
<result property="postCode" column="postCode"/>
</resultMap>
<resultMap id="addressListResult" type="User">
<result property="id" column="id"/>
<result property="userCode" column="userCode"/>
<result property="userName" column="userName"/>
<result property="userRole" column="userRole"/>
<collection property="addressList" resultMap="addressResult"/>
</resultMap>
<!-- sql语句 -->
<!-- 查询用户表的总数 -->
<select id="count" resultType="int"><!--id是select的属性,resultType是返回的属性 -->
select count(1) from smbms_user
</select>
<!--查询所有信息-->
<select id="selectUser" resultType="User">
select * from smbms_user
</select>
<!--模糊查询-->
<select id="selectUserInfo" resultType="User" parameterType="String">
select * from smbms_user where userName like concat("%",#{userName},"%")
</select>
<!--多条件查询-->
<select id="selectUserInfo1" parameterType="User" resultType="User">
select * from smbms_user where
userName like concat("%",#{userName},"%") and userCode like concat("%",#{userCode},"%")
</select>
<!--多条件查询,map封装数据-->
<select id="selectUserInfoMap" parameterType="Map" resultType="User">
select * from smbms_user
<trim prefix="where" prefixOverrides="and | or" >
<if test="userName!=null and userName!=''">
and userName like concat("%",#{userName},"%")
</if>
<if test="userRole!=null ">
and userRole like concat("%",#{userRole},"%")
</if>
</trim>
</select>
<!--多条件查询,-->
<select id="selectUserrole" resultMap="userList">
select u.*, r.roleCode,r.roleName from smbms_user u,smbms_role r
where u.userRole=r.id
<if test="userRole!=null">
and userRole=#{userRole}
</if>
<if test="userName!=null and userName!=''">
and userName like concat("%",#{userName},"%")
</if>
</select>
<!--联表查询通过手动映射-->
<select id="selectUserRoleInfo" parameterType="Map" resultMap="userList">
select u.*, r.roleCode,r.roleName from smbms_user u,smbms_role r where userName like concat("%",#{userName},"%") and userRole=#{userRole} and u.userRole=r.id
</select>
<!--添加用户休息-->
<insert id="addUser" parameterType="User">
insert into smbms_user (userCode,userName,userPassword,phone,address) values (#{userCode},#{userName},#{userPassword},#{phone},#{address})
</insert>
<!--修改用户-->
<!--if +set-->
<update id="updateUser" parameterType="User">
update smbms_user
<trim prefix="set" suffixOverrides="," suffix=" where id=#{id}">
<if test="userName!=null">userName=#{userName},</if>
<if test="userCode!=null">userCode=#{userCode},</if>
<if test="phone!=null">phone=#{phone},</if>
</trim>
</update>
<!--删除用户通过id-->
<delete id="deleteUser" parameterType="integer">
delete from smbms_user where id=#{id}
</delete>
<!--查询多表,association来处理映射-->
<select id="selectUserRole" parameterType="integer" resultMap="userRoleResult">
select u.*,r.id as r_id,r.roleCode,r.roleName
from smbms_user u,smbms_role r
where u.userRole=#{userRole} and u.userRole=r.id
</select>
<!--查询多表,collection处理一对多映射-->
<select id="selectAddress" parameterType="integer" resultMap="addressListResult">
select u.*,a.id as a_id,a.contact,a.addressDesc,a.postCode
from smbms_user u,smbms_address a
where u.id=#{id} and u.id=a.userId
</select>
<!---->
<resultMap id="userMapByRole" type="User">
<id property="id" column="id"/>
<result property="userCode" column="userCode"/>
<result property="userName" column="userName"/>
</resultMap>
<select id="selectUserRoleId_foreach_array" resultMap="userMapByRole" >
select * from smbms_user where userRole in
<foreach collection="array" item="roleIds"
open="(" separator="," close=")">
#{roleIds}
</foreach>
</select>
<select id="selecUserRoleId_foreach_list" resultMap="userMapByRole">
select * from smbms_user where userRole in
<foreach collection="list" item="rolelist"
open="(" separator="," close=")">
#{rolelist}
</foreach>
</select>
<select id="selectUserRoleId_foreach_map" resultMap="userMapByRole">
select * from smbms_user where gender=${gender}
and userRole in
<foreach collection="Rolelist" item="roleMap"
open="(" separator="," close=")">
#{roleMap}
</foreach>
</select>
<select id="selectUser_choose" resultType="User">
select * from smbms_user where 1=1
<choose>
<when test="userName!=null and userName=''">
and userName like concat("%",#{userName},"%")
</when>
<when test="userRole!=null ">
and userRole like concat("%",#{userRole},"%")
</when>
<when test="userCode!=null and userCode=''">
and userCode like concat("%",#{userCode},"%")
</when>
</choose>
</select>
<select id="selectUser_fenye" resultMap="userList">
select u.*, r.roleCode,r.roleName from smbms_user u,smbms_role r
where u.userRole=r.id
<if test="userRole!=null">
and userRole=#{userRole}
</if>
<if test="userName!=null and userName=''">
and userName like concat("%",#{userName},"%")
</if>
order by creationDate DESC limit #{from},#{PageSize}
</select>
</mapper>
5创建工具类,
静态方法 //读取配置文件 //创建sqlSessionFactory对象,来完成对配置文件的处理
方法二 //创建SqlSession
方法三 //关闭Sqlsession
package cn.kgc.util;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import java.io.IOException;
import java.io.InputStream;
/**
* mybatis框架的工具类
*/
public class MybatisUtil {
private static SqlSessionFactory sqlSessionFactory;
//静态代码块
static {
String resource = "mybatis-config.xml";
InputStream inputStream=null;
try {
//读取配置文件
inputStream =Resources.getResourceAsStream(resource);
//2创建sqlSessionFactory对象,来完成对配置文件的处理
sqlSessionFactory=new SqlSessionFactoryBuilder().build(inputStream);
} catch (IOException e) {
e.printStackTrace();
}
}
//3创建SqlSession
public static SqlSession getSqlSession(boolean autocommit){
SqlSession sqlSession=sqlSessionFactory.openSession(autocommit);
return sqlSession;
}
//关闭Sqlsession
public static void closeSqlSession(SqlSession sqlSession){
sqlSession.close();
}
}
6 写测试类
package cn.kgc.dao;
import cn.kgc.pojo.Address;
import cn.kgc.pojo.User;
import cn.kgc.util.MybatisUtil;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.apache.log4j.Logger;
import org.junit.Test;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class UserMapperTest{
//创建控制台打印,这个要导入log4j,和引入配置文件log4j.properties
private Logger logger=Logger.getLogger(UserMapperTest.class);
@Test
public void test1() throws IOException {
/* String resource = "mybatis-config.xml";
//获取输入流
InputStream is = Resources.getResourceAsStream(resource);
//2创建sqlSessionFactory对象,来完成对配置文件的处理
SqlSessionFactory factory= new SqlSessionFactoryBuilder().build(is);
//3创建SqlSession
SqlSession sqlSession=factory.openSession();
//4调用mapper文件来对数据进行操作,必须将mapper文件引入到mybatis-config.xml
Integer count=sqlSession.selectOne("cn.kgc.dao.UserMapper.count");
System.out.println(count);
sqlSession.close();*/
}
@Test
public void test2() throws IOException{
//通过写完工具类来调用
SqlSession sqlSession=MybatisUtil.getSqlSession(true);//在调用这个方法时,先执行了其的静态代码块
Integer count= sqlSession.selectOne("cn.kgc.dao.UserMapper.count");//cn.kgc.dao.UserMapper.count这个路径,是在UserMapper里定义了的,
//System.out.println(count);
logger.info(count);
MybatisUtil.closeSqlSession(sqlSession);
}
@Test
public void test3() throws IOException{
//调用接口
SqlSession sqlSession=MybatisUtil.getSqlSession(true);
Integer count=sqlSession.getMapper(UserMapper.class).count();
System.out.println(count);
MybatisUtil.closeSqlSession(sqlSession);
}
@Test
public void text4() throws IOException{
//调用接口
SqlSession sqlSession=MybatisUtil.getSqlSession(true);
List<User> list =sqlSession.getMapper(UserMapper.class).selectUser();
for(User lists:list){
System.out.println(lists.getUserName());
}
}
@Test
public void test4(){
SqlSession sqlSession=MybatisUtil.getSqlSession(true);
Integer count=sqlSession.getMapper(ProviderMapper.class).count();
System.out.println(count);
MybatisUtil.closeSqlSession(sqlSession);
}
@Test
public void test5(){
SqlSession sqlSession=MybatisUtil.getSqlSession(true);
List<User> list=sqlSession.getMapper(UserMapper.class).selectUserInfo("超");
for(User user:list){
System.out.println(user.getUserName());
}
MybatisUtil.closeSqlSession(sqlSession);
}
@Test
public void test6() {
SqlSession sqlSession=MybatisUtil.getSqlSession(true);
User user =new User();
user.setUserName("超");
user.setUserCode("o");
List<User> list=sqlSession.getMapper(UserMapper.class).selectUserInfo1(user);
for(User lists: list){
System.out.println(lists.getUserName()+lists.getUserCode());
}
MybatisUtil.closeSqlSession(sqlSession);
}
@Test
public void test7() {
SqlSession sqlSession=MybatisUtil.getSqlSession(true);
Map<String,String> map=new HashMap();
map.put("userName","超");
map.put("userRole",null);
List<User> list=sqlSession.getMapper(UserMapper.class).selectUserInfoMap(map);
for(User lists: list){
/* System.out.println(lists.getUserName()+lists.getUserCode()+lists.getPhone());*/
logger.info(lists.getPhone());
}
MybatisUtil.closeSqlSession(sqlSession);
}
@Test
public void tes(){
SqlSession sqlSession=MybatisUtil.getSqlSession(true);
String userName="超";
Integer userRole=null;
List<User> list=sqlSession.getMapper(UserMapper.class).selectUserrole(userName,userRole);
for(User lists: list){
System.out.println(lists.getUserName()+lists.getUserCode()+lists.getUserRole()+lists.getUserRoleName());
}
MybatisUtil.closeSqlSession(sqlSession);
}
@Test
public void test8() {
SqlSession sqlSession=MybatisUtil.getSqlSession(true);
Map<String,String> map=new HashMap();
map.put("userName","超");
map.put("userRole","3");
List<User> list=sqlSession.getMapper(UserMapper.class).selectUserRoleInfo(map);
for(User lists: list){
System.out.println(lists.getUserName()+lists.getUserCode()+lists.getUserRole()+lists.getUserRoleName());
}
MybatisUtil.closeSqlSession(sqlSession);
}
@Test
public void test9(){
SqlSession sqlSession=MybatisUtil.getSqlSession(true);
User user =new User();
user.setUserCode("xiaohua");
user.setUserName("小花");
user.setUserPassword("475698");
user.setPhone("15279008800");
user.setAddress("Tcl");
int result=sqlSession.getMapper(UserMapper.class).addUser(user);
if(result>0){
logger.info("添加成功");
}
MybatisUtil.closeSqlSession(sqlSession);
}
@Test
public void test10(){
SqlSession sqlSession=MybatisUtil.getSqlSession(true);
User user=new User();
user.setUserName("zhuzhu2222");
user.setPhone("1695fsfsf");
user.setId(16);
user.setUserCode("住址");
int result=sqlSession.getMapper(UserMapper.class).updateUser(user);
if(result>0){
logger.info("修改成功");
}
MybatisUtil.closeSqlSession(sqlSession);
}
@Test
public void test11(){
SqlSession sqlSession=MybatisUtil.getSqlSession(true);
int result=sqlSession.getMapper(UserMapper.class).deleteUser(17);
if(result>0){
logger.info("删除成功");
}
MybatisUtil.closeSqlSession(sqlSession);
}
@Test
public void test12(){
SqlSession sqlSession=MybatisUtil.getSqlSession(true);
List<User> list=sqlSession.getMapper(UserMapper.class).selectUserRole(3);
for(User user:list){
logger.info(user.getUserName()+user.getUserRole()+user.getRole().getRoleCode()+user.getRole().getRoleName());
}
MybatisUtil.closeSqlSession(sqlSession);
}
@Test
public void test13(){
SqlSession sqlSession=MybatisUtil.getSqlSession(true);
List<User> list=sqlSession.getMapper(UserMapper.class).selectAddress(1);
for(User user : list){
logger.info("userName:"+user.getUserName()+"\n id:"+user.getId());
for(Address address: user.getAddressList()){
logger.info( "contact:"+address.getContact()+"addressDesc:\n"+address.getAddressDesc()+"\n postCode:"+address.getPostCode());
}
}
MybatisUtil.closeSqlSession(sqlSession);
}
@Test
public void test14(){
SqlSession sqlSession=MybatisUtil.getSqlSession(true);
Integer[] roleIds =new Integer[]{2,3};
List<User> list=sqlSession.getMapper(UserMapper.class).selectUserRoleId_foreach_array(roleIds);
for(User lists: list){
System.out.println(lists.getUserName()+lists.getUserCode());
}
MybatisUtil.closeSqlSession(sqlSession);
}
@Test
public void test15(){
SqlSession sqlSession=MybatisUtil.getSqlSession(true);
ArrayList<Integer> rolelist=new ArrayList<>();
rolelist.add(2);
rolelist.add(3);
List<User> list=new ArrayList<>();
list=sqlSession.getMapper(UserMapper.class).selecUserRoleId_foreach_list(rolelist);
for(User lists: list){
logger.info(lists.getUserName()+lists.getUserCode());
}
MybatisUtil.closeSqlSession(sqlSession);
}
@Test
public void test16(){
SqlSession sqlSession=MybatisUtil.getSqlSession(true);
ArrayList<Integer> rolelist=new ArrayList<>();
Map<String,Object> roleMap=new HashMap<>();
rolelist.add(2);
rolelist.add(3);
roleMap.put("gender",1);
roleMap.put("Rolelist",rolelist);
List<User> list=new ArrayList<>();
list=sqlSession.getMapper(UserMapper.class).selectUserRoleId_foreach_map(roleMap);
for(User lists: list){
logger.info(lists.getUserName()+lists.getUserCode());
}
MybatisUtil.closeSqlSession(sqlSession);
}
@Test
public void test17(){
SqlSession sqlSession=MybatisUtil.getSqlSession(true);
String userName="超";
String userCode="0";
Integer userRole=1;
List<User> list=sqlSession.getMapper(UserMapper.class).selectUser_choose(userName,userCode,userRole);
for(User lists: list){
logger.info(lists.getUserName()+lists.getUserCode());
}
}
@Test
public void test18(){
SqlSession sqlSession=MybatisUtil.getSqlSession(true);
String userName="";
Integer userRole=3;
Integer from=0;
Integer pageSize=3;
List<User> list=sqlSession.getMapper(UserMapper.class).selectUser_fenye(userName,userRole,from,pageSize);
for(User user:list){
logger.info(user.getUserName()+user.getUserRole());
}
}
}