内容简介:MyBatis是第一个支持自定义SQL、存储过程和高级映射的类持久框架。MyBatis消除了大部分JDBC的样板代码、手动设置参数以及检索结果。MyBatis能够支持简单的XML和注解配置规则。使Map接口和POJO类映射到数据库字段和记录。下面我们通过一个简单的项目搭建来带你认识一下MyBatis的使用和一些核心组件的讲解。为了快速构建一个MyBatis项目,我们采用SpringBoot快速搭建的方式。搭建好后在对应的pom.xml下添加如下的maven依赖,主要作用在于引入mybatis一些jar包和类
MyBatis 是什么?
MyBatis是第一个支持自定义 SQL 、存储过程和高级映射的类持久框架。MyBatis消除了大部分JDBC的样板代码、手动设置参数以及检索结果。MyBatis能够支持简单的XML和注解配置规则。使Map接口和POJO类映射到数据库字段和记录。
下面我们通过一个简单的项目搭建来带你认识一下MyBatis的使用和一些核心组件的讲解。
MyBatis 项目构建
为了快速构建一个MyBatis项目,我们采用SpringBoot快速搭建的方式。搭建好后在对应的pom.xml下添加如下的maven依赖,主要作用在于引入mybatis一些jar包和类库
主要分为四个步骤:
config.properties mybatis-config.xml
<!-- mybatis 核心依赖--> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.4.6</version> </dependency> <!-- 数据库驱动包 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.25</version> </dependency> <!-- 单元测试包--> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency>
为了便于更好的说明文章的主旨,这里就不贴出全部代码了,会贴出核心代码部分
编写对应的POJO类和接口式编程Mapper类,这里我们以部门业务逻辑为例,构建一个部门类,有三个属性即部门编号、部门名称、位置,下面是部分代码:
Dept.java
package com.mybatis.beans;
public class Dept {
private Integer deptNo;
private String dname;
private String loc;
public Dept() {}
public Dept(Integer deptNo, String dname, String loc) {
this.deptNo = deptNo;
this.dname = dname;
this.loc = loc;
}
get and set...
}
MyBatis最核心的功能之一就是接口式编程,它可以让我们编写Mapper接口和XML文件,从而把参数和返回结果映射到对应的字段中。
DeptDao.java
package com.mybatis.dao;
public interface DeptDao {
// 通过部门名称查询
public Dept findByDname(String Dname);
// 通过部门编号查询
public Dept findByDeptNo(Integer deptno);
}
在/resources 下新建com.mybatis.dao 包,在其内编写对应的XML配置文件,此XML配置文件和Mapper互为映射关系。
<mapper namespace="com.mybatis.dao.DeptDao" >
<sql id="DeptFindSql">
select * from dept
</sql>
<select id="findByDeptNo" resultType="com.mybatis.beans.Dept">
<include refid="DeptFindSql"></include>
where deptno = #{deptNo}
</select>
<select id="findByDname" resultType="com.mybatis.beans.Dept">
<include refid="DeptFindSql"></include>
where dname = #{dname}
</select>
</mapper>
上述的
<select>
标签用于编写查询语句,查询完成之后需要把结果映射到对象或者map集合等,需要用到 resultType
属性指定对应的结果集。
上述采用了
构建完成基础的SQL语句和映射之后,下面来构建 MySQL 数据库驱动,在/resources 下创建 config.properties
类
jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/test jdbc.username=root jdbc.password=123456
在/resources 下编写MyBatis核心配置文件 myBatis-config.xml
,引入数据库驱动,映射Mapper类
<configuration>
<!-- 设置导入外部properties文件位置 -->
<properties resource="config.properties"></properties>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="${jdbc.driver}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</dataSource>
</environment>
</environments>
<mappers>
<package name="com.mybatis.dao"/>
</mappers>
</configuration>
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 『互联网架构』软件架构-环境搭建maven(三)
- 高并发架构搭建
- 搭建数据驱动测试框架构
- 『互联网架构』软件架构-git服务搭建与使用(四)
- 如何快速搭建一个微服务架构?
- 如何搭建大数据平台技术架构?
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
穿越计算机的迷雾
李忠 / 电子工业出版社 / 2011-1 / 36.00元
《穿越计算机的迷雾》从最基本的电学知识开始,带领读者一步一步、从无到有地制造一台能全自动工作的计算机。在这个过程中,读者可以学习到大量有趣的电学、数学和逻辑学知识,了解到它们是如何为电子计算机的产生创造条件,并促使它不断向着更快、更小、更强的方向发展。通过阅读《穿越计算机的迷雾》,读者可以很容易地理解自动计算实际上是如何发生的,而现代的计算机又是怎么工作的。以此为基础,在《穿越计算机的迷雾》的后面......一起来看看 《穿越计算机的迷雾》 这本书的介绍吧!