mapper

springboot整合mybatis-高效篇

一个人想着一个人 提交于 2019-12-03 14:41:23
1、导入依赖 <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.2</version> </dependency> 2、在配置文件中配置数据库连接信息 #DB Configation spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.datasource.url=jdbc:mysql://127.0.0.1:3306/users spring.datasource.username=root spring.datasource.password=root # JPAConfiguration spring.jpa.database=MySQL spring.jpa.show-sql=true spring.jpa.generate-ddl=true 3、创建数据库对应实体类 在这使用了lombook插件,省略了set,get等方法 @Data @NoArgsConstructor @AllArgsConstructor @ToString public class Muser implements

Spring与MyBatis整合

ε祈祈猫儿з 提交于 2019-12-03 14:23:30
Spring 与 MyBatis 整合 一、概述 将 MyBatis 与 Spring 进行整合,主要解决的问题就是将 SqlSessionFactory 对象交由 Spring 容器来管理,所以,该整合,只需要将 SqlSessionFactory 的对象生成器 SqlSessionFactoryBean 注册在 Spring 容器中,再将其注入给 Dao 的实现类即可完成整合。 二、 Mapper 动态代理实现整合 ( 1 )导入相关 jar 包、定义映射文件 mapper 在 Dao 接口的包中创建 MyBatis 的映射文件 mapper ,命名与接口名相同,本例为 IStudentDao.xml 。 mapper 中的 namespace 取值也为 Dao 接口的全限定性名。    ( 2 )定义 MyBatis 主配置文件 在 src 下定义 Mybatis 的主配置文件,命名为 mybatis.xml 。 注意两点: 1 ,主配置文件中不再需要数据源的配置了。因为数据源要交给 Spring 容器来管理了。 2 ,这里对 mapper 映射文件的注册,使用 package 标签,即只需给出 mapper 映射文件所在的包即可。因为 mapper 的名称与 Dao 接口名相同,可以使用这种简单注册方式。这种方式的好处是,若有多个映射文件,这里的配置也是不用改变的。当然

Spring和MyBatis整合(注解版)

元气小坏坏 提交于 2019-12-03 13:45:21
1.导入所需要的依赖 <!--MyBatis和Spring的整合包 由MyBatis提供--> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>1.3.0</version> </dependency> <!--MyBatis的核心jar文件--> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.4.1</version> </dependency> View Code 2.entity实体类 3.dao层接口 4.service接口 5.serviceimpl实现类 6.Dao.xml配置 7.jdbc.properties配置 8.applicationContext.xml大配置文件 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http:

Spring整合MyBatis整合

浪子不回头ぞ 提交于 2019-12-03 13:43:47
1.导入所需要的jar依赖 !--MyBatis和Spring的整合包 由MyBatis提供--> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>1.3.0</version> </dependency> <!--MyBatis的核心jar文件--> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.4.1</version> </dependency> View Code 2.MyBatis和Spring整合(XML版) 1.dao接口 2.entity实体类 3.service层接口 4.serviceimpl实现类 5.PersonDao.xml配置 6.jdbc.properties配置 7.大配置文件 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns

Mybatis-Plus使用全解

旧城冷巷雨未停 提交于 2019-12-03 13:34:00
前言 之前写了《 SpringBoot | 第九章:Mybatis-plus的集成和使用 》一文,只是简单的使用条件构造器列举了一些通用的CURD操作。本人也想写一篇通用的关于 mybatis-plus 的使用示例,一方面也让自己更加了解 mybatis 和 mybatis-plus ,另一方面,也因为很多新人刚入职公司时,对这块不是很熟悉,会有一些疑惑。所以,总的来说还是作为一份资产,可供人查阅,这样也能减少了很多的沟通成本。 所以本章节,就主要来讲解下关于 Mybatis-plus 的不同场景的用法,目前主要想到的是以下几个知识点,也是很常用的知识点了,后面有补充的会再启章节来记录的。 另外, 官网 的文档已经很详尽了,大家可认真查阅下。 代码生成器 通用的CURD 条件构造器 自定义SQL语句 分页插件、性能分析插件 公共字段自动填充 工程准备 代码生成器 通用的CURD 条件构造器 sql条件拼接 自定义SQL使用条件构造器 xml形式使用wrapper 自定义SQL语句 注解形式 xml形式 注意事项 分页插件、性能分析插件 公共字段自动填充 设置填充字段的填充类型 定义处理类 相关资料 总结 最后 老生常谈 工程准备 这里还是以 user 表为例子,数据库为mysql DROP TABLE IF EXISTS `user`; CREATE TABLE `user` (

Spring boot整合Mybatis

早过忘川 提交于 2019-12-03 13:28:49
  时隔两个月的再来写博客的感觉怎么样呢,只能用“棒”来形容了。闲话少说,直接入正题,之前的博客中有说过,将spring与mybatis整个后开发会更爽,基于现在springboot已经成为整个业界开发主流框架的情况下,今天在这里就直接将mybatis整合spring boot了。   先简单地提一下Spring boot。在Mybatis还没火起来之前,大家用的是SSH(Struts2+Spring+Hibernate),之后mybatis以其小巧轻便的优点成为中小型项目的首选,与此同时基于Spring的自家mvc框架SpringMVC也火起来了,于是开发的框架又成了SSM(SpringMVC+Spring+Mybatis),但是Spring和Spring MVC本是同源,叫起来还得分开叫真是头疼,然后Spring boot出现了,它是基于Spring4的条件注册的一套快速开发整合包,同时又整合了Spring MVC了,所以说SpringMVC的那一套注解可以原封不动地搬来用。同时Spring boot为了解决Spring框架需要进行大量的配置的问题又引入自动配置的概念,也就是说能用注解我绝不用配置文件。关于Spring boot具体一点的东西我就直接在下面结合代码里讲了。   首先呢,新建一个maven项目,记得勾选上create a simple project

使用LUKS加密你的磁盘

放肆的年华 提交于 2019-12-03 13:20:24
计算机数据的安全,保密性在现在的生活中显得越来越重要。随着数字化的时代的来临,越来越多的数据被数字化,特别是更多有关于我们隐私的数据在不断生成,甚至还有我们需要离线保存的密钥等。而且通常我们使用磁盘,USB 闪存,SD 卡等存储介质进行存储,即便我们已经离线存储,仍然不能保证该存储介质不会丢失,如果丢失那么对于我们来说有可能是灾难性的事件。因此对这些离线存储的重要数据,再次进行进行加密是非常有必要的,本文将告诉你如何加密你的移动存储介质。 在此之前先介绍一下 LUKS: LUKS (Linux Unified Key Setup)是 Linux 硬盘加密的标准。 通过提供标准的磁盘格式,它不仅可以促进发行版之间的兼容性,还可以提供对多个用户密码的安全管理。 与现有解决方案相比,LUKS 将所有必要的设置信息存储在分区信息首部中,使用户能够无缝传输或迁移其数据。 1.环境 OS:Gentoo 内核:4.9.95 工具:cryptsetup 2.内核配置(可选) 通常来说,大部分发行版的内核都已经配置了相关的加密部分,因此非 gentoo 用户可以跳过此部分。 配置 device mapper 和 crypt target: [*] Enable loadable module support Device Drivers ---> [*] Multiple devices

使用LUKS加密你的磁盘

十年热恋 提交于 2019-12-03 13:17:33
在此之前先介绍一下 LUKS: LUKS (Linux Unified Key Setup)是 Linux 硬盘加密的标准。 通过提供标准的磁盘格式,它不仅可以促进发行版之间的兼容性,还可以提供对多个用户密码的安全管理。 与现有解决方案相比,LUKS 将所有必要的设置信息存储在分区信息首部中,使用户能够无缝传输或迁移其数据。 1.环境 OS:Gentoo 内核:4.9.95 工具:cryptsetup 2.内核配置(可选) 通常来说,大部分发行版的内核都已经配置了相关的加密部分,因此非 gentoo 用户可以跳过此部分。 配置 device mapper 和 crypt target: [*] Enable loadable module support Device Drivers ---> [*] Multiple devices driver support (RAID and LVM) ---> <*> Device mapper support <*> Crypt target support 配置加密 API: [*] Cryptographic API ---> <*> XTS support <*> SHA224 and SHA256 digest algorithm <*> AES cipher algorithms <*> AES cipher

Dotnet Core中使用AutoMapper

[亡魂溺海] 提交于 2019-12-03 11:39:23
官网: http://automapper.org/ 文档: https://automapper.readthedocs.io/en/latest/index.html GitHub: https://github.com/AutoMapper/AutoMapper/blob/master/docs/index.rst 什么是AutoMapper?   AutoMapper是一个对象-对象映射器。 对象-对象映射通过将一种类型的输入对象转换为另一种类型的输出对象来工作。 使AutoMapper变得有趣的是,它提供了一些有趣的约定,以免去搞清楚如何将类型A映射为类型B。只要类型B遵循AutoMapper既定的约定,就需要几乎零配置来映射两个类型。 为什么要使用AutoMapper?   映射代码很无聊。 测试映射代码更加无聊。 AutoMapper提供了简单的类型配置以及简单的映射测试。 真正的问题可能是“为什么使用对象-对象映射?”映射可以在应用程序中的许多地方发生,但主要发生在层之间的边界中,例如UI /域层或服务/域层之间。 一层的关注点通常与另一层的关注点冲突,因此对象-对象映射导致分离的模型,其中每一层的关注点仅会影响该层中的类型。 AutoMapper的使用场景:   AutoMapper是对象到对象的映射工具。在完成映射规则之后

Mybatis源码解析(一) —— mybatis与Spring时如何整合的?

旧巷老猫 提交于 2019-12-03 11:22:38
Mybatis源码解析(一) —— mybatis与Spring时如何整合的?   从大学开始接触mybatis到现在差不多快3年了吧,最近寻思着使用3年了,我却还不清楚其内部实现细节,比如: 它是如何加载各种mybatis相关的xml? 它是如何仅仅通过一个Mapper接口 + Mappe.xml实现数据库操作的(尽管很多人可能都清楚是通过代理实现,但面试时一旦深入询问:比如Mapper的代理类名是什么?是通过JDK还是cglib实现?)? 在同一个方法中,Mybatis多次请求数据库,是否要创建多个SqlSession会话? 它与Spring是如何适配(整合)的? 在Spring中是如何保障SqlSession的生命周期的? 等等一系列的问题。。。   如果以上问题你自认为无法回答,或者说了解一些,那么就从现在开始,我们来一一揭开这层面纱。 一、Mybatis:最简单测试Demo   相信只要用过Mybatis的同学看到下面的代码一定不会陌生,如果不清楚的可以看下 官网文档 String resource = "mybatis-config.xml"; InputStream inputStream = Resources.getResourceAsStream(resource); SqlSessionFactory sqlSessionFactory = new