zoukankan      html  css  js  c++  java
  • Mybatis实战

    Mybatis实战
    1、使用spring-mabatis 工具自动生成数据库相关代码和xml文件
    1.1 在数据库中生成数据库表(设计时确定表名称和字段类型)
    1.2 配置工具中的generatorConfig1.xml,确定目标文件
    1.3 执行工具cmd

    2、在配置 TableName***DoMapper.xml 中增加你的sql脚本和java函数名,注意函数的输入/输出参数

    2.1 查询操作传递多个参数时,建议利用hashmap做,parameterType="map"
    <select id="selectByDate" parameterType="map" resultMap="campaignStats">
    <![CDATA[
    Select * FROM CampaignStats Where statsDate >= #{start} AND statsDate <= #{end}
    ]]>
    </select>

    对应的 Java 代码为
    public List<DpCampaignStats> selectByDate(Date start, Date end){
    SqlSession session = sqlSessionFactory.openSession();
    try {
    Map<String, Date> map = new HashMap<String, Date>();
    map.put("start", start);
    map.put("end", end);
    List<DpCampaignStats> list = session.selectList("DpCampaignStats.selectByDate", map);
    return list;
    } finally {
    session.close();
    }
    }

    2.2 查询操作返回list类型而定义 resultMap, id 是唯一标识
    select id="selectUsers" parameterType="string" resultMap="resultListUser"
    //函数参数类型String,返回类型是list
    #{name}中name大小写敏感。

    2.3 联合查询
    多对一的实现:
    场景:在读取某个用户发表的所有文章
    <!-- User 联合文章进行查询 方法之一的配置 (多对一的方式) -->
    <resultMap id="resultUserArticleList" type="Article">
       <id property="id" column="ai d" />
       <result property="title" column="title" />
       <result property="content" column="content" />
       <association property="user" javaType="User">
       <id property="id" column="id" />
       <result property="userName" column="userName" />
       <result property="userAddress" column="userAddress" />
    </association>
    </resultMap>
    <select id="getUserArticles" parameterType="int" resultMap="resultUserArticleList">
         select user.id,user.userName,user.userAddress,article.id aid,article.title,article.content from user,article
         where user.id=article.userid and user.id=#{id}
    </select>
    用 association 来得到关联的用
    3、数据源配置
    webapp/WEB-INF/web.xml -> classpath:spring/applicationContext.xml,classpath:spring/spring-jdbc.xml,classpath:spring/spring-timer.xml
    spring-jdbc.xml -> classpath:application.properties (数据库配置)

     
  • 相关阅读:
    大数据技术之_16_Scala学习_04_函数式编程-基础+面向对象编程-基础
    大数据技术之_16_Scala学习_03_运算符+程序流程控制
    大数据技术之_16_Scala学习_01_Scala 语言概述
    通过创建一个简单的骰子游戏来探究 Python
    在Linux系统中创建SSH服务器别名
    DNS原理及劫持问题
    详细介绍:Kubernetes1.4版本的新功能
    Linux系统中五款好用的日志分析工具
    wc命令——Linux系统高效数据统计工具
    Linux系统内核正式进入5.0版本时代
  • 原文地址:https://www.cnblogs.com/jing1617/p/6423143.html
Copyright © 2011-2022 走看看