springboot
专注springboot
WinterChen的博客
微信公众号:CodeD
我的个人博客:https://blog.winterchen.com/ Email:i@winterchen.com 个人开源项目:https://github.com/WinterChenS/my-site
展开
-
mongodb多数据源之mongotemplate和事务的配置
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId> <version>2.1.13.RELEASE</version> </dependency>多数据源配置..原创 2020-12-28 15:47:02 · 4181 阅读 · 3 评论 -
springboot集成Oozie实战
前提:关于hadoop的集成,请参考另外一篇文章,这里就过多的赘述:springboot集成hadoop实战maven坐标 <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-common</artifactId> <version>${hadoop.version}&原创 2020-12-01 19:47:52 · 1079 阅读 · 0 评论 -
springboot集成hive实战
springboot集成hive实现基本的api调用maven坐标 <!-- hadoop --> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-common</artifactId> <version>${hadoop.version}<原创 2020-12-01 19:43:36 · 8897 阅读 · 3 评论 -
springboot集成hadoop实战
springboot集成hadoop实现hdfs增删改查maven坐标 <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-common</artifactId> <version>${hadoop.version}</version> <原创 2020-12-01 19:41:41 · 6522 阅读 · 2 评论 -
mapstruct 高级用法之userid转换为username
mapstruct的简单用法就不讲了,看完这篇文章能获得什么呢?1.普通用法:将userId转换为userName?2.高级用法:一劳永逸的将userId转换为userName?很多时候在数据库里面只有userid而没有username的冗余信息,在entity转换为dto,vo等模型的时候需要额外的设值,mapstruct可以很方便的进行对象之间的转换,那么接下来我们就开始吧前提/** * @author winterchen * @version 1.0 * @date 2020/1原创 2020-11-30 09:18:34 · 2715 阅读 · 1 评论 -
springboot 整合 Shardingsphere 4.0 分库分表+读写分离
基础依赖本文的基础依赖博主上一篇博文:springboot 整合 Shardingsphere 4.0 分库分表需要配置数据库的主从复制,可以搜索相关的文章,记得带上数据库的版本号,各个大的版本之间有差异;推荐关于mysql8.0数据库主从复制亲测可行的配置:https://blog.csdn.net/zyhlwzy/article/details/80569422修改上一篇博客的配置...原创 2020-04-22 10:14:43 · 3201 阅读 · 0 评论 -
springboot 整合 Shardingsphere 4.0 分库分表
最近Shardingsphere在Apache Software Foundation 简称ASF 毕业成为Apache顶级项目,也是目前ASF收个分布式数据库中间件项目,未来可期啊,今天我们就搭建一下springboot整合Shardingsphere4.0版本。依赖:jdk1.8maven3.6.3mybatis plusmysqlShardingsphere 4.0数据...原创 2020-04-21 13:45:19 · 2557 阅读 · 2 评论 -
一起来学SpringBoot | 第十篇:使用Spring Cache集成Redis
SpringBoot是为了简化Spring应用的创建、运行、调试、部署等一系列问题而诞生的产物,自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置,我们只需遵循规范,引入相关的依赖就可以轻易的搭建出一个 WEB 工程Spring 3.1引入了激动人心的基于注释(annotation)的缓存(cache)技术,它本质上不是一个具体的缓存实现方案(例如EHCache或者Red...转载 2018-06-19 11:24:10 · 4223 阅读 · 1 评论 -
一起来学SpringBoot | 第十一篇:集成Swagger在线调试
SpringBoot是为了简化Spring应用的创建、运行、调试、部署等一系列问题而诞生的产物,自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置,我们只需遵循规范,引入相关的依赖就可以轻易的搭建出一个 WEB 工程随着互联网技术的发展,现在的网站架构基本都由原来的后端渲染,变成了:前端渲染、前后端分离的形态,而且前端技术和后端技术在各自的道路上越走越远。前端和后端唯...转载 2018-06-20 16:45:21 · 2960 阅读 · 1 评论 -
一起来学SpringBoot | 第十二篇:初探RabbitMQ消息队列
SpringBoot是为了简化Spring应用的创建、运行、调试、部署等一系列问题而诞生的产物,自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置,我们只需遵循规范,引入相关的依赖就可以轻易的搭建出一个 WEB 工程MQ全称(Message Queue)又名消息队列,是一种异步通讯的中间件。可以将它理解成邮局,发送者将消息传递到邮局,然后由邮局帮我们发送给具体的消息接收者...转载 2018-06-20 18:07:08 · 3269 阅读 · 4 评论 -
一起来学SpringBoot | 第十三篇:RabbitMQ延迟队列
SpringBoot是为了简化Spring应用的创建、运行、调试、部署等一系列问题而诞生的产物,自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置,我们只需遵循规范,引入相关的依赖就可以轻易的搭建出一个 WEB 工程初探RabbitMQ消息队列中介绍了RabbitMQ的简单用法,顺带提及了下延迟队列的作用。所谓延时消息就是指当消息被发送以后,并不想让消费者立即拿到消息,而...转载 2018-07-12 10:40:20 · 2311 阅读 · 1 评论 -
一起来学SpringBoot | 第十四篇:强大的 actuator 服务监控与管理
SpringBoot是为了简化Spring应用的创建、运行、调试、部署等一系列问题而诞生的产物,自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置,我们只需遵循规范,引入相关的依赖就可以轻易的搭建出一个 WEB 工程actuator是spring boot项目中非常强大一个功能,有助于对应用程序进行监视和管理,通过restful api请求来监管、审计、收集应用的运行情况...转载 2018-07-12 13:12:16 · 10665 阅读 · 0 评论 -
一起来学SpringBoot | 第十五篇:actuator与spring-boot-admin
SpringBoot是为了简化Spring应用的创建、运行、调试、部署等一系列问题而诞生的产物,自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置,我们只需遵循规范,引入相关的依赖就可以轻易的搭建出一个 WEB 工程一起来学SpringBoot | 第十四篇:强大的 actuator 服务监控与管理中介绍了actuator的作用,细心的朋友可能会发现通过http rest...转载 2018-07-12 16:49:09 · 2537 阅读 · 1 评论 -
一起来学SpringBoot | 第十六篇:定时任务详解
本文作者:唐亚峰 本文链接:http://blog.battcn.com/2018/05/29/springboot/v2-other-scheduling/ 版权声明:本博客所有文章除特别声明外,均采用CC BY-NC-SA 3.0许可协议。转载请注明出处! SpringBoot是为了简化Spring应用的创建、运行、调试、部署等一系列问题而诞生的产物,自...转载 2018-07-24 10:30:23 · 3222 阅读 · 1 评论 -
一起来学SpringBoot | 第十七篇:轻松搞定文件上传
本文作者:唐亚峰 本文链接:http://blog.battcn.com/2018/05/31/springboot/v2-other-upload/ 版权声明:本博客所有文章除特别声明外,均采用CC BY-NC-SA 3.0许可协议。转载请注明出处! SpringBoot是为了简化Spring应用的创建、运行、调试、部署等一系列问题而诞生的产物,自动装配的...转载 2018-07-24 11:00:50 · 2859 阅读 · 2 评论 -
一起来学SpringBoot | 第十八篇:轻松搞定全局异常
本文作者:唐亚峰 本文链接:http://blog.battcn.com/2018/06/01/springboot/v2-other-exception/ 版权声明:本博客所有文章除特别声明外,均采用CC BY-NC-SA 3.0许可协议。转载请注明出处! SpringBoot是为了简化Spring应用的创建、运行、调试、部署等一系列问题而诞生的产物,自动...转载 2018-07-24 11:16:35 · 2564 阅读 · 0 评论 -
一起来学SpringBoot | 第十九篇:轻松搞定数据验证(一)
本文作者:唐亚峰 本文链接:http://blog.battcn.com/2018/06/05/springboot/v2-other-validate1/ 版权声明:本博客所有文章除特别声明外,均采用CC BY-NC-SA 3.0许可协议。转载请注明出处! SpringBoot是为了简化Spring应用的创建、运行、调试、部署等一系列问题而诞生的产物,自动...转载 2018-07-25 09:52:28 · 4117 阅读 · 2 评论 -
springboot整合mybatis 使用HikariCP连接池
前言Springboot让Java开发更加美好,本节主要讲的是使用Hikari数据库连接池,如果需要使用druid连接池的请看我另外一篇博客,springboot Mybatis 整合(这篇文章有详细搭建springboot项目的过程,对于刚接触springboot的新手有帮助)。为什么使用HikariCP在Springboot2.X版本,数据库的连接池官方推荐使用HikariCP...原创 2018-07-25 15:42:29 · 7907 阅读 · 4 评论 -
一起来学SpringBoot | 第七篇:整合Mybatis
SpringBoot是为了简化Spring应用的创建、运行、调试、部署等一系列问题而诞生的产物,自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置,我们只需遵循规范,引入相关的依赖就可以轻易的搭建出一个 WEB 工程MyBatis是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射,几乎避免了所有的 JDBC 代码和手动设置参数以及获取结果集,使用简单的 X...转载 2018-06-07 19:48:39 · 7028 阅读 · 7 评论 -
一起来学SpringBoot | 第八篇:通用Mapper与分页插件的集成
SpringBoot是为了简化Spring应用的创建、运行、调试、部署等一系列问题而诞生的产物,自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置,我们只需遵循规范,引入相关的依赖就可以轻易的搭建出一个 WEB 工程在一起来学SpringBoot | 第七篇:整合Mybatis一文中,我们介绍了Mybatis这款优秀的框架,顺便提及了民间大神开发的两款插件(通用Mappe...转载 2018-06-07 19:54:43 · 7576 阅读 · 0 评论 -
springboot 中 @ConditionalOnExpression注解 在特定情况下使用相关配置或者实例化bean
在开发中会遇到一些需求:在配置文件中设置一个enable,当这个配置为true的时候,才进行相关的配置类的初始化。示例:需要实例化的bean,请不要加@Component注解public class TestBean { public TestBean(){ } public doSomeThing(){ }}配置类:@Configuration...原创 2018-05-21 14:09:31 · 13993 阅读 · 2 评论 -
springboot mybatis 使用多数据源
springboot2.0正式版发布之后,很多的组件集成需要变更了,这次将多数据源的使用踩的坑给大家填一填。当前多数据源的主要为主从库,读写分离,动态切换数据源。使用的技术就是AOP进行dao方法的切面,所以大家的方法名开头都需要按照规范进行编写,如:get***、add*** 等等,起步基础本次的教程需要有springboot2.0集成mybatis 作为基础:博客地址:sprin...原创 2018-05-30 18:15:28 · 10854 阅读 · 3 评论 -
springboot教程目录
占个坑原创 2018-06-01 15:00:47 · 46008 阅读 · 8 评论 -
一起来学SpringBoot | 第一篇:构建第一个SpringBoot工程
SpringBoot是为了简化Spring应用的创建、运行、调试、部署等一系列问题而诞生的产物,自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置,我们只需遵循规范,引入相关的依赖就可以轻易的搭建出一个 WEB 工程未接触SpringBoot之前,搭建一个普通的WEB工程往往需要花费30分钟左右,如果遇到点奇葩的问题耽搁的时间会更长一点,但自从用了SpringBoot后,...转载 2018-06-01 15:02:04 · 10782 阅读 · 7 评论 -
一起来学SpringBoot | 第二篇:SpringBoot配置详解
SpringBoot是为了简化Spring应用的创建、运行、调试、部署等一系列问题而诞生的产物,自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置,我们只需遵循规范,引入相关的依赖就可以轻易的搭建出一个 WEB 工程上一篇介绍了SpringBoot由来及构建方式,通过第一章的教程我们对SpringBoot不在感到陌生,可以发现SpringBoot虽然干掉了 XML 但未做...转载 2018-06-01 15:03:28 · 8819 阅读 · 5 评论 -
一起来学SpringBoot | 第三篇:SpringBoot日志配置
SpringBoot是为了简化Spring应用的创建、运行、调试、部署等一系列问题而诞生的产物,自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置,我们只需遵循规范,引入相关的依赖就可以轻易的搭建出一个 WEB 工程Spring Boot内部采用的是Commons Logging进行日志记录,但在底层为Java Util Logging、Log4J2、Logback等日志...转载 2018-06-01 15:04:25 · 6331 阅读 · 2 评论 -
一起来学SpringBoot | 第四篇:整合Thymeleaf模板
SpringBoot是为了简化Spring应用的创建、运行、调试、部署等一系列问题而诞生的产物,自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置,我们只需遵循规范,引入相关的依赖就可以轻易的搭建出一个 WEB 工程在前面几章中已经介绍了如何创建一个SpringBoot项目,同时简单的描述了SpringBoot REST Web服务。除此之外它也是支持如JSP、Thyme...转载 2018-06-01 15:05:17 · 5929 阅读 · 2 评论 -
一起来学SpringBoot | 第五篇:使用JdbcTemplate访问数据库
SpringBoot是为了简化Spring应用的创建、运行、调试、部署等一系列问题而诞生的产物,自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置,我们只需遵循规范,引入相关的依赖就可以轻易的搭建出一个 WEB 工程Spring Framework对数据库的操作在JDBC上面做了深层次的封装,通过依赖注入功能,可以将DataSource注册到JdbcTemplate之中,...转载 2018-06-01 15:06:08 · 6165 阅读 · 0 评论 -
一起来学SpringBoot | 第六篇:整合SpringDataJpa
SpringBoot是为了简化Spring应用的创建、运行、调试、部署等一系列问题而诞生的产物,自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置,我们只需遵循规范,引入相关的依赖就可以轻易的搭建出一个 WEB 工程上一篇介绍了Spring JdbcTemplate的使用,对比原始的JDBC而言,它更加的简洁。但随着表的增加,重复的CRUD工作让我们苦不堪言,这时候Spr...转载 2018-06-01 15:06:54 · 4288 阅读 · 8 评论 -
Spring Boot快速入门
简介在您第1次接触和学习Spring框架的时候,是否因为其繁杂的配置而退却了?在你第n次使用Spring框架的时候,是否觉得一堆反复黏贴的配置有一些厌烦?那么您就不妨来试试使用Spring Boot来让你更易上手,更简单快捷地构建Spring应用!Spring Boot让我们的Spring应用变的更轻量化。比如:你可以仅仅依靠一个Java类来运行一个Spring引用。你也可以打包你的应用为jar并通转载 2017-10-24 15:21:16 · 15136 阅读 · 3 评论 -
Spring Boot开发Web应用
Spring Boot快速入门中我们完成了一个简单的RESTful Service,体验了快速开发的特性。在留言中也有朋友提到如何把处理结果渲染到页面上。那么本篇就在上篇基础上介绍一下如何进行Web应用的开发。静态资源访问在我们开发Web应用的时候,需要引用大量的js、css、图片等静态资源。默认配置Spring Boot默认提供静态资源目录位置需置于classpath下,目录名需符合如下规则:转载 2017-10-24 15:28:34 · 10929 阅读 · 1 评论 -
Spring Boot工程结构推荐
今天看了一位简书上朋友发来的工程,于是想到应该要写这么一篇。前人总结的最佳实践案例可以帮助我们免去很多不必要的麻烦。花点时间来看一下本文,绝对物超所值。工程结构(最佳实践)Spring Boot框架本身并没有对工程结构有特别的要求,但是按照最佳实践的工程结构可以帮助我们减少可能会遇见的坑,尤其是Spring包扫描机制的存在,如果您使用最佳实践的工程结构,可以免去不少特殊的配置工作。典型示例roo转载 2017-10-24 15:32:01 · 7556 阅读 · 1 评论 -
Spring Boot构建RESTful API与单元测试
首先,回顾并详细说明一下在快速入门中使用的@Controller、@RestController、@RequestMapping注解。如果您对Spring MVC不熟悉并且还没有尝试过快速入门案例,建议先看一下快速入门的内容。@Controller:修饰class,用来创建处理http请求的对象@RestController:Spring4之后加入的注解,原来在@Controller中返回jso转载 2017-10-24 15:36:52 · 9616 阅读 · 2 评论 -
Spring Boot中使用Swagger2构建强大的RESTful API文档
由于Spring Boot能够快速开发、便捷部署等特性,相信有很大一部分Spring Boot的用户会用来构建RESTful API。而我们构建RESTful API的目的通常都是由于多终端的原因,这些终端会共用很多底层业务逻辑,因此我们会抽象出这样一层来同时服务于多个移动端或者Web前端。这样一来,我们的RESTful API就有可能要面对多个开发人员或多个开发团队:IOS开发、Android开发转载 2017-10-24 16:00:26 · 6475 阅读 · 2 评论 -
Spring boot Mybatis 整合(注解版)
之前写过一篇关于springboot 与 mybatis整合的博文,使用了一段时间spring-data-jpa,发现那种方式真的是太爽了,mybatis的xml的映射配置总觉得有点麻烦。接口定义和映射离散在不同的文件中,阅读起来不是很方便。于是,准备使用mybatis的注解方式实现映射。如果喜欢xml方式的可以看我之前的博文: Spring boot Mybatis 整合(完整版)开发环境:开原创 2017-11-24 10:39:57 · 103079 阅读 · 24 评论 -
springboot事务管理详解
之前搭建的Spring boot Mybatis 整合(注解版)中我们简单的使用了springboot的事务管理,那么接下来讲解一下事务管理的详细配置之前的例子中我们使用了默认的事务配置,可以满足一些基本的事务需求,但是当我们项目较大较复杂时(比如,有多个数据源等),这时候需要在声明事务时,指定不同的事务管理器。在声明事务时,只需要通过value属性指定配置的事务管理器名即可,例如:@Transa转载 2017-11-24 11:15:09 · 11466 阅读 · 1 评论 -
springboot中使用Mybatis注解配置详解
之前写了关于Spring boot Mybatis 整合(注解版) 中使用了简单的注解配置,接下来讲解一下更加详细的配置。传参方式使用不同的传参方式:使用@Param之前博文中的项目使用了这种简单的传参方式: @Insert("INSERT INTO T_USER(NAME, PASSWORD, PHONE) VALUES(#{name}, #{password}, #{phone})")原创 2017-11-24 13:32:42 · 22958 阅读 · 8 评论 -
@PathVariable与 @RequestParam的区别
这两个注解都是用来接收参数的。 @PathVariable:url: http://localhost:8081/hello/23/say/@RequestMapping(value="/{id}/say",method = RequestMethod.GET) public String say(@PathVariable("id") Integer id){ retu原创 2017-07-04 10:32:14 · 1492 阅读 · 0 评论 -
@Valid 对表单进行验证
在学到springBoot的课程中遇到了使用@Valid进行表单验证controller//@Valid Girl girl :需要进行验证的类//BindingResult 验证之后返回的对象@PostMapping(value = "/girls") public Object girlAdd(@Valid Girl girl, BindingResult bindingResu原创 2017-07-04 15:57:36 · 3170 阅读 · 0 评论 -
java.lang.IllegalStateException: Neither BindingResult nor plain target object for bean name 'user'
springboot+thymeleaf报错:java.lang.IllegalStateException: Neither BindingResult nor plain target object for bean name ‘user’ available as request attribute第一次使用thymeleaf模板引擎,遇到了很多坑,真的是烦恼了很久。 创建了一个很简单的fo原创 2017-08-17 15:22:26 · 9052 阅读 · 2 评论