
Spring Boot
文章平均质量分 54
spring boot使你轻松创建一个独立的,企业级的应用,你只要run就可以运行了。你可以以最少的时间进行上手,因为spring boot对spring和一些第三方库进行了整合。在使用起来spring boot比传统spring 需要更少的人工配置。
Aldeo
努力向前
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Mac安装tomcat
mac电脑安装tomcat原创 2022-07-13 17:12:47 · 2869 阅读 · 1 评论 -
Spring Cloud 优雅下线以及灰度发布
在生产环境中,如何保证在服务升级的时候,不影响用户的体验,这个是一个非常重要的问题。如果在我们升级服务的时候,会造成一段时间内的服务不可用,这就是不够优雅的。那什么是优雅的呢?主要就是指在服务升级的时候,不中断整个服务,让用户无感知,进而不会影响用户的体验,这就是优雅的。...转载 2022-07-13 16:09:18 · 2216 阅读 · 0 评论 -
【mybatis-plus】用实体对象映射mysql中的json格式
开发过程中为有时候我们的数据结构是多变的,字段的值也不是都要用到的。用多张表存储的话会显得格外的混乱。这时我们可以用mysql的json类型来存储数据。我们在取数据的时候直接映射成list或我们定义好的数据结构。那么我们如何定义映射的实体呢?1.映射字段@TableField(typeHandler = FastjsonTypeHandler.class)映射字段加注解@TableField(typeHandler = FastjsonTypeHandler.class)@TableField(ty原创 2021-02-24 18:39:54 · 5135 阅读 · 2 评论 -
【填坑手记】SpringBoot1.5升级到了2.0.6.RELEASE那些事
最近要将原来的项目注册中心由Euraka换成nacos,首先,首先SpringBoot的版本要进行升级,将版本由1.5升级到了2.0.6.RELEASE, 但是遇到了很多不兼容的问题,于是开始填坑之旅。原创 2021-01-13 13:50:05 · 762 阅读 · 1 评论 -
【填坑手记】IDEA升级到2020.1.1版本执行报错:Error(5, 33) java 找不到符号符号
最近遇到一个非常头疼的事情,idea升级2020.1.1后运行多moudle项目报错:解决:Error(5, 33) java 找不到符号符号解决办法:1.勾选Delegate IDE build/run actions Maven选项2.执行maven clean3.执行build4.执行小绿按钮5.启动成功...原创 2021-01-12 16:08:52 · 1538 阅读 · 3 评论 -
Please refer to dump files (if any exist) [date]-jvmRun[N].dump, [date].dumpstream and [date]-jvmRun
报错:解决办法:1.点击idea右侧maven2.关掉maven test原创 2020-11-20 18:41:07 · 1807 阅读 · 0 评论 -
玩转SpringBoot自定义注解
在工作中,我们有时候需要将一些公共的功能封装,比如操作日志的存储,防重复提交等等。这些功能有些接口会用到,为了便于其他接口和方法的使用,做成自定义注解,侵入性更低一点。别人用的话直接注解就好。下面就来讲讲自定义注解这些事情。一.@Target、@Retention、@Documented简介java自定义注解的注解位于包:java.lang.annotation下。包含三个元注解@Target、@Retention、@Documented,即注解的注解。@Target@Target:注解的作用目标。原创 2020-11-14 16:32:42 · 2256 阅读 · 0 评论 -
SpringBoot巧用静态内部类优雅地接收参数
前言在项目开发过程中,我们需要用实体接收传递过来的参数,若前端传来的Json结构比较复杂,我们就需要用相对复杂的实体接收参数,即一个DTO引用另一个DTO,这时候如果我们建两个实体,看起来还是不够“简洁”。所以这里就用到了内部类。将内部复杂的结构放到内部类中处理。本文的重头戏,静态内部类粉墨登场了。拾遗-什么是内部类...原创 2020-08-17 22:38:46 · 6460 阅读 · 7 评论 -
SpringBoot优雅的实现分页功能及原理简析
前言分页功能是我们开发过程中常见的一个小功能,如何快速高效的实现一个分页功能呢。本文将带领大家快速搭建一个分页功能。引入依赖 <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <原创 2020-07-31 13:59:29 · 3714 阅读 · 3 评论 -
SpringBoot 查询根据时间数据-数据库时区错误
最近在做一个根据时间段查询数据的表格,发现前端传的时间到打印出sql的查询时间相差8个小时。经过断点调试,发现是mybatis时区转换错误。前端传到后端的数据是对的,sql打印的时间是错的。两种办法:1.修改连接数据库时区application.yml 或者application.properties文件中数据库连接方式追加时区设置serverTimezone=GMT+8,这里转换+号为%2b 后使用spring: datasource: # 主数据源...原创 2020-07-24 12:56:42 · 1643 阅读 · 0 评论 -
SpringBoot多Module启动报错Could not transfer metadata
原因:本地没找到项目依赖的jar去私服找解决办法:install本地项目原创 2020-07-23 14:14:58 · 4218 阅读 · 0 评论 -
Spring注解@NoNull、@NotEmpty、@NotBlank注解无效以及嵌套对象的无效解决办法
1.三者的区别@NotNull:不能为null,但可以为empty(""," “,” ") ,一般用在基本数据类型的非空校验上,而且被其标注的字段可以使用 @size/@Max/@Min对字段数值进行大小的控制@NotEmpty:不能为null,而且长度必须大于0(" “,” "),一般用在集合类上面@NotBlank:不能为null,注意是只能用在String上,而且调用trim()后,长度必须大于02.失效问题(1)单个对象无效,必须在controller中加上@Valid原创 2020-07-03 14:30:50 · 3112 阅读 · 0 评论 -
SpringBoot 使用@Async和@EnableAsync实现异步调用
在实际开发过程中我们为了节省程序等待时间,需要将多个任务异步完成。场景一:发券,同时给多个学生发优惠券时,不太关心结果,只需创建多个线程发券即可场景二:比如调用多个接口组装数据,为了减少等待时间,需要创建多个任务调用多个接口,之后再组装结果。场景三:或者等待所有线程执行成功。本文主要对场景一和二的使用展开。场景二只要异步方法返回需要组装数据即可。@EnableAsync配置线程池...原创 2020-01-16 10:37:05 · 776 阅读 · 0 评论 -
Spring boot启动返回jsp页面
最近在搞spring boot,纠结了一段时间,各种方法都尝试过了,每次运行的时候访问jsp页面总是返回spring boot默认的404错误页。下面将排查问题的大致思路说一下。虽然spring boot官方不推荐使用jsp文件,使用Template模板引擎,但既然用了还是想搞一下。1.确认pom.xml文件中是否添加了如下依赖<dependency> <groupId>org.spring原创 2017-04-01 18:53:27 · 8069 阅读 · 7 评论 -
SpringBoot 优雅的读取yml文件
前言在springboot 项目中一般默认的配置文件是application.properties,但是实际项目中我们一般会使用application.yml 文件,下面就介绍一下在springboot 中读取 yml 配置的几种方式.一 规则可以使用 "-小写字母" 或 "_小写字母"来 代替 "大写字母",如 userName 与 user-name ,user_name 含义是一...原创 2020-01-15 12:05:52 · 1420 阅读 · 0 评论 -
SpringBoot 优雅的读取yml(多环境配置篇)
上篇文章介绍了yml的基本规范。实际开发过程终,我们对开发/测试/生产环境的数据库,消息队列,以及调用接口的域名等有不同的配置,所以就需要多环境配置,启动的时候选择不同的配置读取不同的数据。本文将结合项目实战,讲解SpringBoot读取不同环境的yml的常用方法。一 新建多个配置文件如下是多个配置文件:application.yml##端口server:tomca...原创 2020-01-15 12:05:20 · 1847 阅读 · 0 评论 -
SpringBoot 优雅的读取yml(yml规范篇)
一 认识 YAMLYAML(发音 /ˈjæməl/)是一个类似 XML、JSON 的数据序列化语言。其强调以数据为中心,旨在方便人类使用;并且适用于日常常见任务的现代编程语言。因而 YAML 本身的定义比较简单,号称“一种人性化的数据格式语言”。YAML 的设计目标人类容易阅读可用于不同程序间的数据交换适合描述程序所使用的数据结构,特别是脚本语言丰富的表达能力与可扩展性易于使用...原创 2020-01-14 10:30:37 · 2200 阅读 · 0 评论 -
SpringBoot 之 整合MyBatis-Plus
MyBatis-PlusMyBatis-Plus(简称 MP)是一个MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。整合引入maven依赖<parent> <groupId>org.springframework.boot</groupId> <artifactId...原创 2020-01-04 10:47:41 · 200 阅读 · 0 评论 -
SpringBoot 之 分分钟搞懂Lombok使用与原理
1 简介Lombok是一款好用顺手的工具,就像Google Guava一样,在此予以强烈推荐,每一个Java工程师都应该使用它。Lombok是一种Java™实用工具,可用来帮助开发人员消除Java的冗长代码,尤其是对于简单的Java对象(POJO)。它通过注释实现这一目的。通过在开发环境中实现Lombok,开发人员可以节省构建诸如hashCode()和equals()这样的方法以及以往用来分类...原创 2019-12-20 09:27:35 · 539 阅读 · 0 评论 -
Spring Boot 自定义logback参数之MDC
什么是logbacklogback 继承自 log4j,它建立在有十年工业经验的日志系统之上。它比其它所有的日志系统更快并且更小,包含了许多独特并且有用的特性。什么是MDC(1)概念logback 设计的目标之一是审计与调试复杂的分布式应用。大部分的分布式系统需要同时处理多个客户端。在一个系统典型的多线程实现中,不同的线程处理不同的客户端。一种可能但是不建议的方式是在每个客户端实例...原创 2019-12-19 10:10:19 · 1802 阅读 · 0 评论 -
Spring Boot 拦截器创建和注册
一、实现拦截器public class MyInterceptorimplements HandlerInterceptor {private Loggerlogger = LoggerFactory.getLogger ( MyInterceptor.class ); private NamedThreadLocalstartTimeThreadLocal =new Name...原创 2018-07-03 10:19:12 · 2782 阅读 · 0 评论 -
Spring Boot java重定向带参数中文乱码问题解决
前后端分离开发,有时候需要重定向到前端的页面,但传中文参数的时候有会乱码,下面是解决办法:return "redirect:"+loginRedirect+"user=?"+URLEncoder.encode(jsonObject.get("name").toString(),"UTF-8");对参数进行编码就行。作者:Aldeo链接:https://www.jians...原创 2018-07-03 10:16:17 · 3509 阅读 · 0 评论 -
Spring Boot和Feign中使用Java 8时间日期API(LocalDate等)的序列化问题
LocalDate、LocalTime、LocalDateTime是Java 8开始提供的时间日期API,主要用来优化Java 8以前对于时间日期的处理操作。然而,我们在使用Spring Boot或使用Spring Cloud Feign的时候,往往会发现使用请求参数或返回结果中有LocalDate、LocalTime、LocalDateTime的时候会发生各种问题。本文我们就来说说这种情况下出现...转载 2018-07-03 10:11:05 · 1079 阅读 · 0 评论 -
Spring Boot(四):单元测试(工程师必备素养)之API测试
一、API的单元测试1.首先创建test类,上一篇博客讲的是手动创建,这里讲自动创建1)在需要创建单元测试的controller上右击选——>go to——>test2)选create3)选择需要单元测试的方法,我这里就一个4)创建成功2.添加注入的信息和填充方法,如下packagecom.example.demo.controller;importorg.junit.Test;importorg.原创 2017-11-07 16:01:07 · 662 阅读 · 0 评论 -
Spring Boot(三):单元测试(工程师必备素养)之service测试
开发完接口自动进行单元测试,是一个软件开发工程师的必备素养,特别是跟别人合作的时候。如果自己开发完的接口没有进行接口测试就发布,别人用起来满满的bug,对自己喝对别人都是极不负责任的。一、什么是单元测试单元测试是针对程序的最小单元来进行正确性检验的测试工作。程序单元是应用的最小可测试部件。一个单元可能是单个程序、类、对象、方法等。 ——维基百科二、为什么要进行单元测试(1)减少bug,预防自己写的方原创 2017-11-03 13:21:14 · 2678 阅读 · 1 评论 -
Spring Boot(二):快速搭建web项目或微服务
上一篇博客对spring boot的来世今生进行了介绍,这篇就带领大家快速的创建一个spring boot的web项目或者微服务。一、.新建项目1.方法一(1)自己创建java工程(2)新建spring boot的application(3)新建pom并引入starter二、方法二1.通过官网自动生成微服务项目这种方法简便,省去了我们创建文件所需的时间。会生成一个压缩包2.由于刚生成的项目没有更新j原创 2017-11-02 10:52:45 · 2711 阅读 · 1 评论 -
Spring Boot(一):Spring Boot的前世今生
1.背景在很早的年代,J2EE还是java企业级应用的王者规范,EJB风行其道。后来有一个叫Rod Johnson的音乐学博士,写了本《Expert One on one J2EE without EJB》,发明了spring,创办了interface21公司,给Java的企业级开发带来了一阵春风。之后Spring势如破竹,跟随着互联网的兴起,占据着Java领域轻量级开发的王者地位。随着Java语言原创 2017-11-01 18:18:36 · 1248 阅读 · 1 评论