springboot整合mybatis:(postgres,Mysql为例)

1.数据库驱动

对于不同数据库,数据库驱动不同

postgre:org.postgresql.Driver

Mysql:com.mysql.cj.jdbc.Driver

比如本文springboot整合mybatis

切记:

1.关于mybatis的配置

2.关于数据库资源的配置

两者缺一不可

<dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.3.0</version>
         </dependency>

2.实践出真理

传统jdbc连接,针对小型项目

    Connection c = null;
        Statement stmt = null;
        try {
            Class.forName("org.postgresql.Driver");
            c = DriverManager
                    .getConnection("jdbc:postgresql://localhost:5432/postgres",
                            "postgres", "password");
            c.setAutoCommit(false);
            System.out.println("Opened database successfully");

            stmt = c.createStatement();
            ResultSet rs = stmt.executeQuery( "SELECT * FROM teacher;" );
            while ( rs.next() ) {
                String  name = rs.getString("name");
                System.out.println( "NAME = " + name );
                System.out.println();
            }
            rs.close();
            stmt.close();
            c.close();
        } catch ( Exception e ) {
            System.err.println( e.getClass().getName()+": "+ e.getMessage() );
            System.exit(0);
        }

对于整合到springboot上,需要建立实体类包

在entity包里,我建立了简单的实体类与数据库里的类一一对应(比较简单,只设立了一个参数) 

public class teacher {

    String name;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Override
    public String toString() {
        return "teacher{" +
                "name='" + name + '\'' +
                '}';
    }


}

这个时候,实体类是我们建立mapper的桥梁

在mapper包下创建接口teacher,写出自己需要的功能。

注意注解@Mapper的添加

@Mapper
public interface teaMapper {

    public ArrayList<String> list();
}

在resources下建立一个mapper包

一定到一一对应 namespace

<?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="com.sap.report.mapper.teaMapper" >
    <resultMap id="BaseResultMap" type="com.sap.report.entity.teacher" >
        <result column="name" property="name" javaType="string" />
    </resultMap>

    <select id="list" resultType="string">
        select name from teacher
    </select>
</mapper>

重点:关于配置文件的书写(切记mapper-locations的配置

之后就可以使用了(换成mysql也一样,修改drive驱动和url就行)

这是没写service层直接引用的mapper接口

   ArrayList<String> list = (ArrayList<String>) teaMapper.list();
        for(String stu:list){
            System.out.println(stu.toString());
        }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值