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

1.数据库驱动

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

postgre:org.postgresql.Driver

Mysql:com.mysql.cj.jdbc.Driver

比如本文springboot整合mybatis

切记:

1.关于mybatis的配置

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

两者缺一不可

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上,需要建立实体类包

springboot整合mybatis:(postgres,Mysql为例)_第1张图片

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

springboot整合mybatis:(postgres,Mysql为例)_第2张图片

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 list();
}

在resources下建立一个mapper包

一定到一一对应 namespace




    
        
    

    

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

springboot整合mybatis:(postgres,Mysql为例)_第3张图片

springboot整合mybatis:(postgres,Mysql为例)_第4张图片

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

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

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

 

你可能感兴趣的:(Springboot)