Mybatis Spring Boot

开源商城开发笔记4-配置MyBatis生成代码

£可爱£侵袭症+ 提交于 2020-02-28 06:55:36
本项目基于SpringBoot开发,引入的是mybatis-spring-boot 1、引入依赖,包括spring-boot,mybatis,druid,junit,log4j 2.配置MyBatis-Generator插件,使用Maven插件的方式生成代码 3.配置MyBatis 4.配置MyBatis-Generator 5.运行插件,生成代码 注: 本系列代码存放在码云上面,前后端全部开源,无使用限制。 源码地址:https://gitee.com/gintone/GTOpenShop.git 来源: oschina 链接: https://my.oschina.net/u/173975/blog/3175909

素小暖讲Spring Boot

自古美人都是妖i 提交于 2020-02-26 00:58:01
本系列是springboot的学习笔记,从入门到精通,不积跬步无以至千里,水滴石穿! 欲速则不达,欲达则欲速! 在学习springboot的过程中,发现了一个 springboot中文索引 做的非常不错,分享springboot的学习资源和开源软件,对springboot的学习帮助极大。 小编推荐学习视频: SpringBoot_最新教程_spring boot_springboot核心篇+springboot整合篇-_雷丰阳 Spring Boot实战:码匠社区 在学习 Spring Boot 之前我一直建议大家先看这三篇文章,了解一下微服务的启蒙。 一、微服务 2014年martin fowler提出微服务一词,并写了一篇博客,正式进入微服务时代。 微服务:架构风格(服务微化) 一个应用应该是一组小型服务;可以通过HTTP的方式进行互通; 单体应用:ALL IN ONE 微服务:每个功能元素最终都是一个可独立替换和独立升级的软件单元; 【译】微服务 - Martin Fowler 微服务架构的理论基础 - 康威定律 素小暖讲微服务 二、Spring Boot初级篇 Spring Boot(一):入门篇 Spring Boot(二):web应用开发,实现CRUD Spring Boot(三):Thymeleaf 使用详解 Spring Boot(四):如何优雅的使用

Mybatis-PageHelper的简单使用

孤人 提交于 2020-01-07 14:17:18
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> Mybatis-PageHelper一个简洁易用的mybatis分页插件。 文档地址: https://github.com/pagehelper/Mybatis-PageHelper/blob/master/README_zh.md 加入依赖 <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.4.4</version> </dependency> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.0.0</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.41</version> <scope>runtime</scope> </dependency> <dependency> <groupId>junit</groupId> <artifactId

mybatis(1)- Springboot中的规范使用

放肆的年华 提交于 2019-12-10 14:45:47
@Mapper与@MapperScan正确使用 结论 [auto-configuration package 路径] 默认是启动类包路径。 下文测试1中 @Mapper 能正常启动是因为 MybatisAutoConfiguration 下的 AutoConfiguredMapperScannerRegistrar 来扫码启动类路径包下带@Mapper的对象。 尽量不要自动创建 SqlSessionTemplate,除非有特殊需要将SqlSessionTemplate归于容器管理 。 MapperFactoryBean先执行SqlSessionDaoSupport中的setSqlSessionFactory方法, 会新建一个SqlSessionTemplate; 但被随后执行的setSqlSessionTemplate方法注入的托管于容器的SqlSessionTemplate实例覆盖。 正确的使用方式有2种 @Mapper + @ImportAutoConfiguration (MybatisAutoConfiguration .AutoConfiguredMapperScannerRegistrar .class) + @SpringBootApplication (exclude = { MybatisAutoConfiguration .class })

SpringBoot + AOP + MySQL监控系统数据变更实战

邮差的信 提交于 2019-12-06 17:31:53
记录一下 Spring AOP切入DAO层,进行数据监控。 在写这个需求时,从网上找了很多的资料,大部分都是没有解决相关问题的。当然也有少数部分解决,但用的还是SSM架构的xml配置。一开始我的出发点是通过注解@annotation的方式来切入DAO需要监控的方法,但是并没有用。接下来剖析下个人的实现和思路。 相关依赖 spring-boot-starter-web mysql-connector-java lombok spring-boot-starter-aop mybatis-spring-boot-starter Spring AOP两种代理 jdk代理 使用Java动态代理来创建AOP代理,在程序运行期间由JVM根据反射等机制动态的生成(当然此接口要有实现类)。 cglib代理 代理类不是接口时,Spring会切换为使用CGLIB代理,它的工作原理是:直接在class字节码文件添加增强的代码。 思路 在这里只针对ADD、UPDATE、DELETE做相关数据处理。 直接使用注解@annotation的方式是不能实现,所以我先通过execution的方式切到DAO层,再通过一个自定义注解区分数据操作的类型以及区分所操作的是哪一张表,具体详情如下: 记录ADD操作:使用@After注解,由于新增一条数据中如果有自增的值,也需要把自增对应字段的值也要记录,所有在执行完之后记录

Springboot 中 Mybatis 的使用

人走茶凉 提交于 2019-12-02 20:40:24
官方文档: Mybatis开发团队为Spring Boot 提供了 MyBatis-Spring-Boot-Starter 方便使用。 要使用MyBatis-Spring-Boot-Starter模块,只需要在类路径中包含 mybatis-spring-boot-autoconfigure.jar文件及其依赖项(mybatis.jar,mybatis -spring.jar等) 。 下面介绍的是我用到的一部分功能,全部功能还请查阅官方文档 一、使用 如果您正在使用Maven,只需将以下依赖项添加到您的pom.xml中: <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.0.0-SNAPSHOT</version> </dependency> 版本自己可选: 需要注意的是:在Spring 中使用mybatis 最少需要 一个SqlSessionFactory 和 mapper 接口 引入 MyBatis-Spring-Boot-Starter 模块后 将自动提供以 下功能 自动检测现有的数据源。 将创建并注册一个SqlSessionFactory的实例

SpringBoot自定义starter

江枫思渺然 提交于 2019-12-01 07:55:06
SpringBoot 提供了众多的starter简化我们开发,为了更好地使用这些starter,了解其原理是很重要的,今天就来自定义一个starter。 1,如何自定义 ①,我们首先要有一个意识,springboot自己适配的一般以:spring-boot-starter-xxx命名,比如:spring-boot-starter-amqp ②,自己去适配springboot一般以:xxx-spring-boot-starter命名,比如:mybatis-spring-boot-starter ③,springboot自动适配的在依赖时一般不用加版本号,自动适配springboot 的需要版本号。因为sprinboot根本就不知道它的版本 ③,通过观察mybatis-spring-boot-starter,我们发现mybatis-spring-boot-starter并没有java代码,通过观察其pom.xml我们发现,它引入了mybatis-spring-boot-autoconfigure ④,所以我们可以仿照mybatis自定义我们的starter 2,创建工程 ①,创建一个空的mystart工程,新建两个模块,1,mystart;2,autoconfigurable 3,mystart模块配置 ①,mystart依赖于autoconfigurable模块 <groupId

企业级 SpringBoot 教程 (六)springboot整合mybatis

时光总嘲笑我的痴心妄想 提交于 2019-12-01 05:41:52
引入依赖 在pom文件引入mybatis-spring-boot-starter的依赖: <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter<artifactId> <version>1.3.0</version> </dependency> 引入数据库连接依赖: <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.0.29</version> </dependency> 引入数据源 application.properties配置文件中引入数据源: spring.datasource.url=jdbc:mysql://localhost:3306/test spring.datasource.username=root spring.datasource.password=123456

springboot原理—一步步分析springboot启动机制(starter机制)

ぐ巨炮叔叔 提交于 2019-11-29 16:59:01
前言 使用过springboot的同学应该已经知道,springboot通过默认配置了很多框架的使用方式帮我们大大简化了项目初始搭建以及开发过程。本文的目的就是一步步分析springboot的启动过程,分析springboot是如何帮我们简化这个过程的。 如果想学习Java工程化、高性能及分布式、深入浅出。微服务、Spring,MyBatis,Netty源码分析的朋友可以加我的Java高级交流:854630135,群里有阿里大牛直播讲解技术,以及Java大型互联网技术的视频免费分享给大家。 springboot帮我们做了什么 通常搭建一个基于spring的web应用,我们需要做以下工作: 1、pom文件中引入相关jar包,包括spring、springmvc、redis、mybaits、log4j、mysql-connector-java 等等相关jar ... 2、配置web.xml,Listener配置、Filter配置、Servlet配置、log4j配置、error配置 ... 3、配置数据库连接、配置spring事务 4、配置视图解析器 5、开启注解、自动扫描功能 6、配置完成后部署tomcat、启动调试 ...... 搭个初始项目不一会就一个小时甚至半天过去了。而用springboot后,一切都变得很简便快速

SpringBoot入门之工程搭建(IDEA版)

可紊 提交于 2019-11-28 23:27:27
Spring-Boot Spring的春天 在之前我们一直使用Spring、SpringMVC进行开发,的确,Spring让我们认识到了项目开发原来可以这么方便。但是大量的配置文件却是令人头痛的,即使我们想写一个简单的请求映射并在浏览器上发送Get请求测试,那么需要:1.在web.xml中配置DispatcherServlet; 2.在application.xml中配置注解扫描、注解驱动。可以看到:虽然Spring是轻量级的,但是Spring的配置却是重量级的。并且搭建每个Spring项目我们都需要考虑依赖版本是否冲突的问题... So,SpringBoot将这一切都解决了。SpringBoot提供了一种固定的、约定优于配置风格的框架,让开发者能更快的创建基于Spring的应用程序和服务。 对应的SpringBoot整合Mybatis实现CRUD的项目和笔记请看我的Github仓库: 教你优雅的入门Spring Boot框架 如果觉得不错就点击右上角star鼓励一下笔者吧(#^.^#) SpringBoot 有如下特性: 更高效的创建基于Spring的应用服务 无需XML配置,可以修改默认值来满足特定的需求 提供了一些大型项目中常见的非功能性特性,如嵌入式服务器、安全... Spring Boot并不是对Spring功能上的增强,而是提供了一种快速使用Spring的方式