Mybatis Map用法和对 实体类起别名的方法

在我之前的博客中 使用过List

List和Map的区别;

  List:是存储单列数据的集合,存储的数据是有序并且是可以重复的
  Map:存储双列数据的集合,通过键值对存储数据,存储 的数据是无序的,Key值不能重复,value值可以重复

List在使用时可以返回多组数据然后封装起来  通过for的增强型循环输出

Map时可以方便于  如果一组数据有多个字段  但是用的上的只有几个可以通过Map实现

 

其他代码可以前我    Mybatis 增删改查 基础小进阶

1 User getUserById2(Map<String,Object> map);
2 
3 
4  //万能的Map  可以避免在多过数据时 只需对某些数据修改时却需要整个User对象
5     int addUser2(Map<String,Object> map);

对应的XML

1 <select id="getUserById2" parameterType="map" resultType="com.zxy.pojo.User">
2         select * from mybatis.user where name = #{Username}
3 </select>
4 
5 
7 <insert id="addUser2" parameterType="map">
8         insert into mybatis.user(id,pwd) values (#{userId},#{userPwd})
9  </insert>

Test

@Test
        public void select(){
            SqlSession sqlSession = MybatisUtils.getSqlSession();
            UserMapper mapper = sqlSession.getMapper(UserMapper.class);
            HashMap<String, Object> map = new HashMap<>();
            map.put("Username","xxx");
            User user = mapper.getUserById2(map);
            System.out.println(user);
            sqlSession.close();
        }
@Test
 public void add(){
                SqlSession sqlSession = MybatisUtils.getSqlSession();
                UserMapper mapper = sqlSession.getMapper(UserMapper.class);
                Map<String, Object> map = new HashMap<String, Object>();
                map.put("userId",5);
                map.put("userPwd","1603933");
                mapper.addUser2(map);
                sqlSession.commit();
                sqlSession.close();

        }

 实体类起别名的方法

1.方法一

1  <typeAliases>
2         <typeAlias type="com.zxy.pojo.User" alias="user"/>
3     </typeAliases>

 

2.方法二      到实体类上一级目录    使用时 为什么实体类的小写

1 <typeAliases>
2         <package name="com.zxy.pojo"/>
3     </typeAliases>

 如果一定要修改 在实体类顶上用注解@Alias();   二者缺一不可

1 @Alias("user")
2 public class User {
3 }

 

使用    将  com.dao.User  替换成  user

1 <select id="getUserList" resultType="user" >
2         select * from mybatis.user;
3     </select>

 

posted @ 2022-10-17 14:18  西东怪  阅读(182)  评论(0编辑  收藏  举报
返回顶端