• MyBatis sql映射器 Mapper


    入门

      MyBatis基于动态代理机制,让我们无需再编写Dao的实现。

      传统Dao接口,现在名称统一以Mapper结尾,还有我们映射器配置文件要和映射器在同一个包.

       IDeptDao---->DeptMapper.java---DeptMapper.xml(namespace直接写DeptMapper.java的全限定名)

    1.创建个User类(首先得有个数据库中的表是User,并且还有对应的字段)

    public class User {
        private Long id;
        private String name;
    
       get和set和tostring此处省略。。。。(get和set和tostring是要的,太长了没复制 
    }

    2.个上面的类建个接口UserMapper

    import java.util.List;
    /**
    * 查询数据库中所有数据
    * @return
    */
    public interface UserMapper { 
      List
    <User> queryAll();
    }

    3.建个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">
    <!-- orm框架 sql的映射
    namespace:命名空间  namespace路径+ id值
              namespace怎么配置 包名.接口名 + queryAll
    -->
    <mapper namespace="cn.itsource._02mapper.UserMapper">
    <!-- 查询 queryAll()
    resultType 返回类型
    注意下面id的值必须和你接口中的方法名一致,如果有其他方法也要一一对应,否则会报错找不到方法
         下面resultType的值就是你执行了下面sql语句返回的数据类型

    -->
    <select id="queryAll" resultType="User"> select * from t_user </select> 

    </mapper>

    4.写一个测试类进行测试

    import org.apache.ibatis.session.SqlSession;
    import org.junit.Test;
    import util.MyBataisUtil;
    
    import java.util.List;
    
    public class UserImplTest {
    
        @Test
        public void querAll() {
            //MyBataisUtil.MYBATAIS.getSqlSession();通过单例模式封装好sqlSession
            SqlSession sqlSession = MyBataisUtil.MYBATAIS.getSqlSession();
            //sqlSession.getMapper(要动态代理的接口)返回动态代理类
            UserMapper mapper = sqlSession.getMapper(UserMapper.class);
            //用动态代理类来调用查询全部数据的方法
            List<User> users = mapper.queryAll();
            for (User user : users) {
                System.out.println(user);
            }
        }
    }
  • 相关阅读:
    input上传mp3格式文件,预览并且获取时间
    jquery 页面input上传图后显示
    将String类型的字符串拼接成以逗号分隔的字符输出
    layui select多选下拉显示 以及回显
    input输入框只能输入数字和英文逗号
    电脑开机右下角有小金锁,并且提示一分钟后重启电脑
    修改tomcat控制台的标题
    VC防止程序被多次运行 互斥体方法
    VC中遍历进程并获取进程信息
    VC中遍历目标进程中的模块
  • 原文地址:https://www.cnblogs.com/bigbigxiao/p/11946534.html
Copyright © 2020-2023  润新知