![](https://img-blog.csdnimg.cn/20210319100759259.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
MyBatis
文章平均质量分 79
如何从dao层蜕变为mapper层?
samarua
while "live" : print("Loli")
展开
-
【MyBatis】将一切装入Spring容器——SSM整合
引入SSM即Spring+SpringMVC+MyBatis框架集。我们知道,SpringMVC框架把众多对象(比如Controlle们)放进了容器中,所以,SpringMVC可以看作是Spring框架的一部分。也可以这么说,Spring与SpringMVC已经完成了整合。但是,第三方的MyBatis似乎独立于前两者,毕竟MyBatis仅仅是改变了dao(mapper)层的代码编写而已,没有涉及上层以及Spring环境。让Spring/SpringMVC+MyBatis成为一个整体,就是SSM整合。原创 2021-04-01 17:28:29 · 135 阅读 · 0 评论 -
【MyBatis】一步到位完成sql语句与接口方法的映射——注解开发
简单的CURD注解说明@Insert增@Delete删@Update改@Select查加载映射关系:之前在核心配置文件(sqlMapConfig.xml)中加载了映射配置文件(xxxMapper.xml), 其实质是加载映射关系。现在可以完全删除映射配置文件,在核心配置文件直接加载接口(配置类)即可。<!-- 加载映射关系 --><mappers> <mapper class="com.samarua.mapp原创 2021-04-01 17:20:44 · 321 阅读 · 0 评论 -
【MyBatis】核心配置文件的相关参数——sqlMapConfig.xml中的标签
propertiesMyBatis同样拥有类似EL的语法,也同样经常对数据源配置参数进行解耦。<!-- 引入外部资源文件 --><properties resource="jdbc.properties"/> typeAliasesaliases译为“别名”。我们在xxxMapper.xml中写parameterType/resultType的值时,要写一个全限定名,有些麻烦。typeAliases标签的作用正是给这些冗长的完整类名取一个言简意原创 2021-04-01 17:01:24 · 209 阅读 · 0 评论 -
【MyBatis】sqlSession对象的间接使用——代理开发方式
MyBatis传统开发方式先提前说一点,现阶段dao层也可以叫做mapper层。传统开发方式就是MVC中dao层的经典写法,只是把sql逻辑写在xxxMapper.xml配置文件中而已:[接口]com.samarua.mapper.userMapper-------------------------------------------------------------------------------------------public interface UserMapper {原创 2021-03-29 21:07:25 · 156 阅读 · 0 评论 -
【MyBatis】特定场景下的语句拼接——动态sql语句
<if>标签xxxMapper.xml配置文件中的写法:<select id="findByCondition" parameterType="user" resultType="user"> select * from user <where> <if test="id!=0"> and id = #{id} </if> <if test="username!=原创 2021-03-29 21:05:50 · 160 阅读 · 0 评论 -
【MyBatis】HelloMyBatis——快速入门与增删改查
原生JDBC的设计缺陷原生JDBC开发存在许多问题:2)频繁创建/释放数据库连接,造成资源浪费2)sql语句和java代码是耦合死的,这种硬编码不利于后期维护3)查询操作时,需要手动将结果集的数据封装到实体中;插入操作时,需要手动将实体的数据一个个传给sql语句的占位符上述问题都有对应的解决方案:1)使用数据库连接池2)sql语句抽取到配置文件中,从而解耦3)使用反射、内省等底层技术,将实体属性与表字段进行自动映射 什么是MyBatismybatis是一个优秀的原创 2021-03-29 21:04:21 · 134 阅读 · 0 评论