8.mybatis的基本工作流程(2.0)※

8.mybatis的基本工作流程(2.0)※_第1张图片

2.有了这些信息就能创建SqlSessionFactory,SqlSessionFactory的生命周期是程序级,程序运行的时候建立起来,程序结束的时候消亡

3.SqlSessionFactory建立SqlSession,目的执行sql语句,SqlSession是过程级,一个方法中建立,方法结束应该关闭

4.当用户使用mapper.xml文件中配置的的方法时,mybatis首先会解析sql动态标签为对应数据库sql语句的形式,并将其封装进MapperStatement对象,然后通过executor将sql注入数据库执行,并返回结果。

5.将返回的结果通过映射,包装成java对象。

1、jdbc.properties,下面会调用

jdbc.username=rootjdbc.password=rootjdbc.driverClass=com.mysql.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/数据库

2、mapper配置
8.mybatis的基本工作流程(2.0)※_第2张图片

1 在mybatis中,映射文件中的namespace是用于绑定Dao接口的,即面向接口编程。当你的namespace绑定接口后,你可以不用写接口实现类,mybatis会通过该绑定自动帮你找到对应要执行的SQL语句

public interface IUserDao extends IBaseDao{    public void modifyPassword(User user);}

对应xml有

             UPDATE t_user set password=#{password} where id=#{id};    

2 resultMap的使用
在mybatis中有一个resultMap标签,它是为了映射select查询出来结果的集合,其主要作用是将实体类中的字段与数据库表中的字段进行关联映射。
2.1数据库与实体类之间名称相同前提要实体类和数据库字段名称一毛一样,实际一般不这样,在mapper中的查询方式:

8.mybatis的基本工作流程(2.0)※_第3张图片

2.2 数据库与实体类之间不相同
第一种:开启驼峰规则mybtis中开启


第二种:使用resultMap标签来映射  
然后在mapper.xml中书写resultMap标签,使得数据库字段和实体类  
名称映射。(将实体类字段与数据库字段在标签中进行一一映射)  
  
![](https://mmbiz.qpic.cn/mmbiz_png/nSxXgN9ic3BJIltuXiaA3Sx0Zwm5qB6OEeTpRr2kY85dEaCldGJmprXJsjfGX38F0yr5hic0swPqokEKIicOTs6PrA/640?wx_fmt=png)


3、配置数据库  
什么是数据源  
JDBC2.0 提供了javax.sql.DataSource接口,它负责建立与数据库的连接,当在应用程序中访问数据库时不必编写连接数据库的代码,直接引用DataSource获取数据库的连接对象即可。用于获取操作数据Connection对象。


4、spring-mybatis.xml核心文件的配置

你可能感兴趣的:(java)