尊龙凯时网址

【mybatis xml】数据层框架应用-尊龙凯时网址

2023-10-20

使用mybatis框架进行持久层开发

mybatis是支持普通sql查询,存储过程和高级映射的优秀持久层框架。
mybatis消除了几乎所有的jdbc代码和参数的手工设置以及对结果集的检索。
mybatis可以使用简单的xml或注解用于配置和原始映射,将接口和java的pojo(plain old java objects,普通的java对象)映射成数据库中的记录。

目录
使用mybatis框架进行持久层开发
你需要了解的知识点
1、什么是sqlsessionfactory?
2、mybatis框架的核心配置文件
3、mapper映射文件
使用
1、mybatis下载
2、创建实体类
3、创建属性文件jdbc.properties
4、创建xml映射配置文件
5、创建sql映射的xml文件
6、创建mapper接口
7、编写mybatis工具类
8、编写测试类
你可能会出现的问题
问题一:找不到mapper映射文件
问题二:mysql客户端版本过低
问题三:提示找不到userinfo
写在最后

你需要了解的知识点

1、什么是sqlsessionfactory?

sqlsessionfactory是mybatis框架中十分重要的对象,它是单个数据库映射关系经过编译后的内存镜像,其主要作用是创建sqlsession。

sqlsessionfactory对象的实例可以通过sqlsessionfactorybuilder对象来构建,而sqlsessionfactorybuilder则可以通过xml配置文件或一个预先定义好的configuration实例构建出sqlsessionfactory的实例

sqlsessionfactory对象是线程安全的,它一旦被创建,在整个应用执行期间都会存在。如果我们多次的创建同一个数据库的sqlsessionfactory,那么此数据库的资源将很容易被耗尽。为此,通常每一个数据库都会只对应一个sqlsessionfactory,所以在构建sqlsessionfactory实例时,建议使用单列模式。

2、mybatis框架的核心配置文件

在mybatis框架的核心配置文件中,元素是配置文件的根元素,其他元素都要在元素内配置。

3、mapper映射文件

在映射文件中,元素是映射文件的根元素,其他元素都是它的子元素。

使用

1、mybatis下载

在java或java web项目中添加mybatis框架后,就能对数据表进行crud操作了。

方法一:可以从官方网站: https://github.com/mybatis下载所需要的mybatis版本。

方法二:使用maven的直接加入依赖,需要mysql的驱动包、mybatis的驱动包

        


mysql
mysql-connector-java
8.0.18




org.mybatis
mybatis
3.4.6


注意这里的mysql的驱动包,根据你自己安装的mysql版本,使用mysql -v查询,例如我的是8版本,所以用8版本的驱动包

2、创建实体类

在src目录下新建com.lomtom.mybatis.entity包,并在其中创建实体类userinfo(对应数据表user_info)。userinfo类包含一些属性(对应数据表user_info的部分字段),以及与之对应的getxxx()和setxxx()方法,还可添加构造方法 。

当然你如果使用lombok可以不写他的getter、setter以及constructor。

/**
* @author: lomtom
* @date: 2020/4/20
* @time: 15:12
* @email: lomtom@qq.com
*/
@data
public class userinfo { private integer id; private string username; private string password; private date regdate; }

3、创建属性文件jdbc.properties

在resources目录下创建属性文件jdbc.properties,保存数据库的连接信息。

是一个配置属性的元素,该元素通常用来将内部的配置外在化,即通过外部的配置来动态的替换内部定义的属性。例如,数据库的连接等属性,就可以通过典型的java属性文件中的配置来替换,

请根据自己mysql版本,确认之后再食用
1、mysql for version 8
jdbc.driverclassname=com.mysql.cj.jdbc.driver
jdbc.url=jdbc:mysql://localhost:3306/javaweb2?characterencoding=utf-8
jdbc.username=root
jdbc.password=123456 2、mysql for version 5
jdbc.driverclassname=com.mysql.jdbc.driver
jdbc.url=jdbc:mysql://localhost:3306/javaweb2?characterencoding=utf-8
jdbc.username=root
jdbc.password=123456

4、创建xml映射配置文件

resources目录下创建mybatis的xml配置文件mybatis-config.xml,用于加载mysql的连接配置。





















    元素用于为配置文件中的java类型设置一个简短的名字,即设置别名。别名的设置与xml配置相关,其使用的意义在于减少全限定类名的冗余。

    当pojo类过多时可以指定一个包名,mybatis 会在包名下面搜索需要的 java bean。每一个在包 中的 java bean,在没有注解的情况下,会使用 bean 的首字母小写的非限定类名来作为它的别名。若有注解,则别名为其注解值

    元素用于对环境进行配置。mybatis的环境配置实际上就是数据源的配置,我们可以通过元素配置多种数据源,即配置多种数据库。

5、创建sql映射的xml文件

resources包中创建sql映射的xml文件userinfomapper.xml。




insert into user_info(username, password, regdate)
values(#{username},#{password}, #{regdate})

delete from user_info where id = #{id}

update user_info set username = #{username}, password = #{password}, regdate = #{regdate} where id = #{id}


在上述sql映射文件中,

元素用于映射插入语句,
元素用于映射删除语句,
元素用于映射更新语句,

网站地图