Java Mybaits 示例

Java Mybaits 项目结构示例

在学习springboot的时候使用生成工具自动生成的mybatis代码,后面对mybatis产生了兴趣,这里是我学习的时候参照教程整理的基础文件和结构

参考文献有

  • 官方文档:https://mybatis.org/mybatis-3/zh/index.html
  • http://c.biancheng.net/view/4302.html

导入所需要的库文件

对应库文件

  • 下载地址
  • https://repo1.maven.org/maven2/mysql/mysql-connector-java/
  • https://github.com/mybatis/mybatis-3/releases

项目结构

项目结构

  • MusicMapper是接口类,包含对数据库的增删改查接口
  • Music是表的对象文件,对应表的结构和数据类型
  • Music.xml是具体的操作文件,里面是sql语句
  • test_music是测试文件
  • mybatis-config.xml是mybatis的配置文件,要根据这个文件生成SqlSessionFacotry

文件内容

数据库结构

数据库结构

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>

    <!-- 数据库环境 -->
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/sky_water?characterEncoding=UTF-8"/>
                <property name="username" value="root"/>
                <property name="password" value="root"/>
            </dataSource>
        </environment>
    </environments>
    <!-- 映射文件 -->
    <mappers>
        <mapper resource="main/resources/mapper/Music.xml"/>
    </mappers>

</configuration>

MusicMapper

package main.mapper;

import main.pojo.Music;

import java.util.List;

public interface MusicMapper {
    List<Music> selectAllMusic();   //对应Music.xml里的操作
}

Music

package main.pojo;

public class Music {	//对应数据库内表结构
    int music_id;
    String music_name;
    String music_singer;
    int type_id;
    String music_album;
    String music_image;
    String music_path;

    @Override
    public String toString() {
        return "Music{" +
                "music_id=" + music_id +
                ", music_name='" + music_name + '\'' +
                ", music_singer='" + music_singer + '\'' +
                ", type_id=" + type_id +
                ", music_album='" + music_album + '\'' +
                ", music_image='" + music_image + '\'' +
                ", music_path='" + music_path + '\'' +
                '}';
    }
	//getter & setter
    //下面是一系列的get和set函数
}

Music.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="main.mapper.MusicMapper">
    <select id="selectAllMusic" resultType="main.pojo.Music">
        <!--id为对应的接口,resultType为返回值类型,parameterType为参数类型-->
        select * from  music
    </select>
</mapper>

test_music

package main.test;
import main.pojo.Music;
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;
import java.util.List;
public class test_music {
    public static void main(String[] args) throws IOException {
        // 根据 mybatis-config.xml 配置的信息得到 sqlSessionFactory
        String resource = "mybatis-config.xml";
        InputStream inputStream = Resources.getResourceAsStream(resource);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        // 然后根据 sqlSessionFactory 得到 session
        SqlSession session = sqlSessionFactory.openSession();
        // 最后通过 session 的 selectList() 方法调用 sql 语句 listStudent
        List<Music> listMusic = session.selectList("selectAllMusic");
        for (Music music : listMusic) {
            System.out.println("ID:" + music.getMusic_id() + ",NAME:" + music.getMusic_name());
        }
    }
}

输出结果

输出结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值