spring学习笔记 (7)使用mybatis的动态SQL

这篇博客介绍了如何在Spring项目中使用Mybatis进行动态SQL配置。内容包括准备工作,如mybatis-config和log4j配置,实体类创建,sqlsession工具类的设置,以及表结构。博主分享了CustomerMapper.xml的动态SQL配置和测试文件,虽然没有详细展开,但提供了注释以供理解。
摘要由CSDN通过智能技术生成

(一)准备

mybatis-config的配置文件以及用于日志方便查看测试效果的log4j配置文件均在笔记(6)中,可以查阅观看,这里不再列出。

  1. 实体类
package com.company.domain;

public class Customer {
   
    private int id;
    private String username;
    private String jobs;
    private String phone;

    public int getId() {
   
        return id;
    }

    public void setId(int id) {
   
        this.id = id;
    }

    public String getUsername() {
   
        return username;
    }

    public void setUsername(String username) {
   
        this.username = username;
    }

    public String getJobs() {
   
        return jobs;
    }

    public void setJobs(String jobs) {
   
        this.jobs = jobs;
    }

    public String getPhone() {
   
        return phone;
    }

    public void setPhone(String phone) {
   
        this.phone = phone;
    }

    @Override
    public String toString() {
   
        return "Customer{" +
                "id=" + id +
                ", username='" + username + '\'' +
                ", jobs='" + jobs + '\'' +
                ", phone='" + phone + '\'' +
                '}';
    }


}
  1. 设置创建sqlsession的工具类(笔记6中方法)
package com.company.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 org.apache.log4j.lf5.util.Resource;

import java.io.Reader;

/**
 * mybatis工具类
 */
public class MybatisUtil {
   
    private static SqlSessionFactory sqlSessionFactory=null;
    static {
   
        try{
   
            //获取mybatis配置信息
            Reader reader= Resources.getResourceAsReader("mybatis-config.xml");
            sqlSessionFactory =new SqlSessionFactoryBuilder().build(reader);
        }catch(Exception e){
   
            e.printStackTrace();
        }
    }
    /**
     * 生成sqlsession
     * @return
     */
    public static SqlSession getSqlsession(){
   
        return sqlSessionFactory.openSession();
    }

}

  1. 表结构
    在这里插入图片描述

(二)动态sql的配置说明与测试

mapper实现了集中基本的配置动态sql的元素,说明基本都写在配置文件与测试文件的注释中,这里不再单独说明
CustomerMapper.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">
<!--注意xml的层级结构-->
<mapper namespace="com.company.mapper.CustomerMapper">
    <!--使用sql元素设置常用查询字段-->
    <sql id="commonQuery">
        id,username,jobs,phone
    </sql>
    
    <!--设置插入-->
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值