脚本宝典收集整理的这篇文章主要介绍了Mybatis,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
目录
概述:简单概述一下什么是mybatis
1.1 mybatis是什么?有什么特点?
1.2 什么是ORM?
1.3什么是mybatis框架?
2开始使用mybatis
2.1创建一个maven的java工程
2.2 引入mybatis的jar 和 mysql的驱动jar包。
2.3创建一个实体类(自己数据库中存在的表)
2.4此时在resources下创建一个mybatis.xml
2.5 编写相应的映射文件。-----sql语句 实体类与表的映射。
2.6 把映射文件引入到mybatis配置文件中。
2.7 进行测试
3 mybatis的增删改查
3.1在上文提到,我们已经创建了实体类,这个时候要进行表的一些操作,我们需要创建一个Dao类,根据我们的实体类创建一个接口
3.2.1增加的映射文件
3.2.2 删除的映射文件
3.2.3修改的映射文件
3.2.4 查询(全部)的映射文件
3.2.5 根据id查询
3.2.6传递多参
3.2.7特殊符号
总结:
1.1 mybatis是什么?有什么特点?
它是一款半自动的ORM持久层框架,具有较高的SQL灵活性,支持高级映射(一对一,一对多),动态SQL,延迟加载和缓存等特性,但它的数据库无关性较低,总的来说,mybatis是一个持久层框架, 作用是跟数据库交互完成增删改查
1.2 什么是ORM?
是一种程序设计技术,用于实现编程语言里不同类型系统的数据之间的转换。从效果上说,它其实是创建了一个可在编程语言里使用的“虚拟对象数据库”。如今已有很多免费和付费的ORM产品,而有些程序员更倾向于创建自己的ORM工具。
1.3什么是mybatis框架?
MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀==ORM框架==。MyBatis 消除了几乎所有的 JDBC 代码和参数的手工设置以及对结果集的检索封装。MyBatis 可以使用简单的 XML 或注解用于配置和原始映射,将接口和 Java 的 POJO(Plain Old Java Objects,普通的 Java 对象)映射成数据库中的记录. 半自动化框架。必须写sql语句。
2开始使用mybatis
file--->new--->project..--->maven--->next
我们可以安装lombok插件,可以简化实体类中的set和get方法以及tostring方法和构造方法
<dependencies>
<!--mysql驱动依赖-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.27</version>
</dependency>
<!--mybatis的依赖-->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.7</version>
</dependency>
<!--lombok依赖-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.22</version>
</dependency>
</dependencies>
我们需要在里面配置我们的文件--------mybatis会读取该文件的内容完成连接数据库的功能。
2.4.1
配置日志,配置连接的数据库,配置相关的映射文件
连接数据库的时候根据自己的数据库进行一些修改,数据库名,用户名字,密码。
<mapper namespace="a">
<!--sql语句-->
<!--1.根据id查询用户信息
select:表示查询标签
id:唯一标签.
resultType: 返回结果的类型。
mybatis框架帮你把结果封装到User类型中。
#{}:====>占位符。并且或解析uid的值。
-->
<select id="getUserById" resultType="com.wwn.User.User">
select * from users where id=#{uid}
</select>
</mapper>
要注意一些数据是一致的,不可以随便乱写。要保证代码的运行。
测试
#小知识点
因为对于一些重复执行的代码,也就是逻辑之前的初始化,可以写进before()方法中执行,代表程序刚开始时执行before()。
增加方法的方法名要和接口中的名字一致,否则将找不到,无法运行。
测试
测试
resultType中的代码要和实体类的路径一致。
测试
Mapper接口开发需要遵循以下规范:
1、 Mapper.xml文件中的namespace与mapper接口的类路径相同。
2、 Mapper接口方法名和Mapper.xml中定义的每个statement的id相同
3、 Mapper接口方法的输入参数类型和mapper.xml中定义的每个sql 的parameterType的类型(首字母小写)相同
4、 Mapper接口方法的输出参数类型和mapper.xml中定义的每个sql的resultType的类型相同
除此之外还有一些其他的操作,譬如说:根据id查询,还有常见的传递多参,和特殊符号的查询
接口:
映射文件
测试
接口
<!--如果方法传递的是多个参数时默认mybatis会给这些参数起名:param1 param2.....
<select id="selectByCondition" resultType="com.ykq.entity.User">
select * from users where name=#{param1} and age=#{param2}
</select>
如果使用自定义参数名 @Param("参数名")
public List<User> selectByCondition(@Param("name") String name, @Param("age") int age);
-->
映射文件
测试
特殊符号存在时我们需要转义字符
< | < | 小于号 |
> | > | 大于号 |
& | & | 与 |
' | ' | 单引号 |
" | " | 双引号 |
接口
映射文件
测试
1.依赖的添加必不可少。
2.引入mybatis的jar 和 mysql的驱动jar包。
3.配置mybatis的配置文件
4.基础的增删改查
以上是脚本宝典为你收集整理的Mybatis全部内容,希望文章能够帮你解决Mybatis所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。