![](https://img-blog.csdnimg.cn/2019091813595558.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
SpringBoot
文章平均质量分 61
SpringBoot 相关技术使用
野生开发者
野生程序猿进阶中
展开
-
使用RestTemplate调用微信获取用户信息接口解析为信息为json数据时报错
使用 Spring Boot 写项目,需要用到微信接口获取用户信息。在 Jessey 和 Spring RestTemplate 两个 Rest 客户端中,想到尽量不引入更多的东西,然后就选择了 Spring RestTemplate 作为 网络请求的 Client,然后就被微信接口摆了一道,然后踩了一个 RestTemplate 的坑。就这么一个简单的过程,我竟然踩了这么多坑,真是蠢。不过对也些东西的认识也加深了。转载 2020-05-19 10:49:03 · 3938 阅读 · 1 评论 -
@Transient 和 @JsonIgnore在Data序列化及存储中的区别
由上面的结果可以看出,如果实体中一个字段不想出现在查询结果中时,但是要在DB中存储时,可以使用。实验二: 只在字段上添加@JsonIgnore注解。实验一: 只在字段上添加@Transient注解。如果实体中一个字段不想存储到DB时可以使用。中的一个注解,@JsonIgnore是。@Transient是。原创 2023-04-24 16:10:00 · 723 阅读 · 1 评论 -
RedisTemplate中的Execute方法和ExecutePiplined方法比较
RedisTemplate中execute方法和executePiplined方法的使用比较原创 2023-02-09 15:52:48 · 1174 阅读 · 0 评论 -
【图解Springboot】ApplicationContext的变化
SpringBoot——ApplicationContext的变化转载 2022-10-19 16:36:21 · 365 阅读 · 0 评论 -
RestTemplate异常信息(4xx和5xx)处理
在日常开发中经常会用到RestTemplate这一客户端进行访问其他的接口时,经常会遇到异常处理的问题,关于RestTemplate的异常处理,主要会用到一个接口org.springframework.web.client.ResponseErrorHandler,源码如下:public interface ResponseErrorHandler { // 判断是否有异常 boolean hasError(ClientHttpResponse response) throws IOExceptio原创 2021-10-18 18:19:34 · 907 阅读 · 0 评论 -
SpringBoot项目启动时设置系统的时区为UTC
设置的方式相对比较简单,只需在项目main所在类中添加如下代码即可:@PostConstructvoid setDefaultTimezone() { TimeZone.setDefault(TimeZone.getTimeZone("UTC"));}原创 2021-10-14 15:45:47 · 1242 阅读 · 0 评论 -
SpringMVC中的HandlerMapping和HandlerAdapter
文章目录1、HandlerMapping1.1、 AbstractUrlHandlerMapping1.1.1、AbstractUrlHandlerMapping 实现类及使用1.1.2 、Controller 类1.2、AbstractHandlerMethodMapping1.3、AbstractHandlerMapping 实现类及使用2、HandlerAdapter2.1、RequestMappingHandlerAdapter2.2、HttpRequestHandlerAdapter2.转载 2021-04-25 10:30:04 · 492 阅读 · 0 评论 -
解决SpringBoot接口返回Date类型及从数据库获取时间字段数据格式及时区问题
问题描述在API返回数据中含有Date类型的数据,这些数据在数据库中存储的格式为北京时间 yyyy-MM-dd HH:mm:ss格式,API的方法中获取到的时间也正常,但是在接口返回的数据中,时间变为了标准时间,格式也发生了变化,如:2021-07-28T06:30:10.378+00:00。原因分析之所以会出现这样的情况,是因为Spring的消息转化机制引起的,对于返回值content-type类型为application/json格式的数据,默认使用jackson来进行json序列化,使用的消息转原创 2021-07-28 15:03:03 · 3703 阅读 · 0 评论 -
SpringMVC源码剖析——消息转换器HttpMessageConverter
摘要 SpringMVC使用消息转换器实现请求报文和对象、对象和响应报文之间的自动转换 概述 在SpringMVC中,可以使用@RequestBody和@ResponseBody两个注解,分别完成请求报文到对象和对象到响应报文的转换,底层这种灵活的消息转换机制,就是Spring3.x中新引入的HttpMessageConverter即消息转换器机制。 Http请求的抽象 还是回到请求-响应,也就是...转载 2021-07-28 14:15:07 · 429 阅读 · 0 评论 -
springboot配置文件与系统环境变量中key同名问题
前言在朋友的项目有个自定义配置文件user.yml,其内容如下user: userId: 1 name: 张三 email: zhangsan@qq.com其映射实体内容为如下@Data@AllArgsConstructor@NoArgsConstructor@Builder@PropertySource(value = "user.yml",encoding = "utf-8",factory = CustomYmlPropertySour...转载 2021-05-27 14:15:25 · 1514 阅读 · 0 评论 -
SpringBoot文件上传配置
在SpringBoot框架下进行文件上传时,如果文件较大,则需要进行相应的配置,具体配置如下:spring: servlet: multipart: enabled: true # Whether to enable support of multipart uploads.默认为:true file-size-threshold: 100KB # 达到多少以后写入数据到磁盘的阈值,单位为“MB”或者“KB” max-file-size: 2048MB原创 2021-05-24 17:58:32 · 704 阅读 · 0 评论 -
Spring国内脚手架配置
官网地址:https://start.aliyun.com/bootstrap.html?spm=a2ck6.17690074.0.0.503c2e7dULJM75在Eclipse中的使用,打开Window——>Preferences,然后在如下所示的界面中配置上https://start.aliyun.com/,然后点击Apply即可。原创 2021-05-21 11:28:39 · 194 阅读 · 0 评论 -
WebSocket简介及与SpringBoot框架的集成
文章目录1. 概述2. WebSocket的诞生的背景、运行机制和抓包分析2.1. Websocket诞生的背景2.2. WebSocket 运行机制2.3. WebSocket抓包分析3. WebSocket 的应用场景、服务端和浏览器的版本要求3.1. 使用websocket的场景3.2. 服务端和浏览器的版本要求4. Spring 内嵌的简单消息代理 和 消息流程图4.1. Simple Broker4.2. 消息流程图5. 在Spring boot中集成websocket,并介绍stomp、sock转载 2021-03-17 17:39:58 · 992 阅读 · 0 评论 -
【Redis】 springboot集成Redis
文章目录1、pom文件中引入依赖2、配置文件中的配置3、Redis配置类4、使用测试1、pom文件中引入依赖redis的依赖配置: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis&...原创 2019-08-12 17:05:07 · 355 阅读 · 0 评论 -
SpringBoot集成Redis实现缓存
本文1、2节大多来自博文第四篇:SpringBoot中Cache缓存的使用,第3、4节根据自己的实践而来1、JSR107在介绍缓存实现之前需要介绍一个内容——JSR107,JSR(Java Specification Requests)为Java请求规范,JSR107就是对Java Caching(缓存)相关的内容进行了一定的规范约束。在Java Caching中定义了5个核心接口,分别是CachingProvider, CacheManager, Cache, Entry 和 Expiry;关系示.原创 2020-12-10 17:28:02 · 347 阅读 · 0 评论 -
SpringBoot源码分析1——ApplicationContextInitializer接口
文章目录前言1、ApplicationContextInitializer接口的实现类2、自定义ApplicationContextInitializer接口子类前言当我们创建一个SpringBoot应用,然后在main方法中打开SpringBoot的源码时,如下所示:SpringApplication.run(Application.class, args); // Application是自定义的类名进入SpringBoot中的run方法,可以看到SpringBoot的启动过程其实是包含两个原创 2020-11-17 14:32:36 · 338 阅读 · 0 评论 -
【XSS】Springboot结合ESAPI——配置XSS防御过滤
本文来源与几篇优秀文章的整合,但整合后真实可用, 在此记录以便往后使用文章地址: https://blog.csdn.net/frog4/article/details/81876462https://blog.csdn.net/julycaka/article/details/78467291 https://blog.csdn.net/fengyao1...转载 2020-09-01 16:44:44 · 3565 阅读 · 1 评论 -
【SpringBoot】Jackson框架应用
文章目录Jackson 的 基本用法ObjectMapper的使用信息配置Jackson 的 注解的使用泛型反序列化属性可视化 Jackson 是当前用的比较广泛的,用来序列化和反序列化 json 的 Java 的开源框架。Jackson 社 区相对比较活跃,更新速度也比较快, 从 Github 中的统计来看,Jackson 是最流行的 json 解析器之一 。 Spring MVC 的默认 json 解析器便是 Jackson。 Jackson 优点很多转载 2020-08-13 16:39:59 · 1227 阅读 · 0 评论 -
【Spring】RestTemplate 浅析
一直在使用RestTemplate 进行服务之间API的调用,只知道RestTemplate restTemplate=new RestTemplate(),然后就可以直接使用post或者get等方法进行请求;直到最近遇到一个问题,在服务之间进行大文件的传输时,总是报出内存溢出的问题,才意识到学习不能浅尝辄止,要明白其中的原理才能够遇到问题时随机应变。本篇文章只是对RestTemplate的源码的一个浅析,不足之处还望读者多包涵。1、RestTemplate基础 RestTemplate是Sp.原创 2020-08-03 18:26:10 · 2217 阅读 · 0 评论 -
【SpringBoot】SpringBoot中自定义注解的使用及后端进行Excel的生成、下载操作
1、创建一个自定义的注解创建自定义注解的过程与创建一般类的过程差不多,项目上右键——>new——>annotation,然后页面上弹出如下的界面:在这个弹窗上,主要介绍下上述123位置处的三个注解:@Target指示这个注解的使用范围,即被描述的注解可以用在哪里,常用的值如下:TYPE:类,接口或者枚举FIELD:属性字段,包含枚举常量METHOD:方法PARAMETER:参数CONSTRUCTOR:构造方法LOCAL_VARIABLE:局部变量ANNOTATION_原创 2020-07-13 17:16:28 · 1315 阅读 · 0 评论 -
【SpringBoot】使用RestTemplate.exchange访问API,反序列化获取实体时报错
使用RestTemplate.exchange访问其他的服务,然后反序列化为实体类的时候抛出异常,异常信息如下:com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: xxxxxxx出现该异常的原因是由于我这两个服务中的字段个数或者名称不一致造成的,解决办法主要有以下两种:接收的实体类中添加如下所示注解:@JsonIgnoreProperties(ignoreUnknown = true)在ObjectMappe原创 2020-07-07 17:42:38 · 2170 阅读 · 0 评论 -
【SpringBoot】使用RestTemplate在服务之间进行MultipartFile格式文件的传递
文章目录1、前言2、原因分析3、解决办法1、前言最近开发过程中遇到这样的问题,在使用RestTemplate进行两个后台服务之间文件传递的时候,直接使用MultipartFile格式来传递的时候抛出异常。2、原因分析MultipartFile是Spring框架中提供的一种用于文件处理的接口,一般用于前端进行文件的上传,后端使用MultipartFile类型来进行文件的接收;当使用RestTemplate的post方法进行来传递接收到的MultipartFile类型文件时,由于RestTemplate原创 2020-07-02 17:02:58 · 7354 阅读 · 2 评论 -
【SpringBoot】SpringBoot中使用监听器(Listener)
前言 监听器(Listener)就是监听对象的创建、销毁等状态的变化以及定义一些事件发生后接下来要进行的动作;主要监听的三个域对象为:ServletRequest域、HttpSession域 和ServletContext域 在目前的Servlet API中提供的web事件监听器接口有如下所示的几个:1.ServletContextListener -- 监听servletContext对象的创建以及销毁 1.1 contextInitialized(ServletConte原创 2020-06-08 16:49:48 · 7851 阅读 · 0 评论 -
【Springboot】springboot中处理xml格式文件的依赖
对xml文件的解析可以使用下述的依赖: <!-- 解析xml文件 --> <dependency> <groupId>org.dom4j</groupId> <artifactId>dom4j</artifactId> <version>2.1.3</version> </dependency>...原创 2020-05-12 11:44:09 · 2244 阅读 · 0 评论 -
【Springboot】 Springboot对数据进行编码、解码操作常用的依赖
在数据传递的过程中常常要进行加密解密的操作,我们可以直接使用相关的依赖从而减轻自己的工作量,所需要的依赖如下: <!-- 加解密工具 --> <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> </dependency>...原创 2020-05-12 11:42:45 · 2231 阅读 · 0 评论 -
【Springboot】SpringBoot整合邮件服务
使用邮箱服务的前提是有一个获取smtp授权的邮箱,如何获取授权,很简单,这里不介绍。1、添加依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> &...原创 2020-04-02 17:47:48 · 1733 阅读 · 0 评论 -
【SpringBoot】SpringBoot读取配置文件的方法以及相关注解的使用
文章目录概述1、使用@Value注解2、使用Environment类3、 使用@ConfigurationProperties注解4、@ConditionalOnProperty注解的使用5、@Configuration、@Bean注解使用6、Import注解概述在SpringBoot中加载配置文件中的配置主要有三种方式:使用@Value注解使用Environment类使用@Confi...原创 2020-04-02 10:15:41 · 3879 阅读 · 0 评论 -
【Springboot】工程中引入第三方的jar,并打包到工程中
在Springboot 工程中引入第三方的jar包(这里是使用maven搭建的环境),主要有两种方式:(1)将第三方的jar安装eclipse连接的maven仓库中,然后就可以像一般的依赖一样使用了;(2)直接在工程中引入第三方的jar,然后在pom.xml中进行配置,接下来讲的主要就是该种方式先来展示下工程的目录结构:libs文件夹下的hello.jar即为要引用的第三方jar包,这里...原创 2020-01-09 17:55:51 · 1627 阅读 · 0 评论 -
【Springboot】将Springboot 生成的war包在tomcat中进行部署
直接上步骤:(1)在pom文件中进行如下设置,打包设置为war包: <groupId>com.springboot.filter</groupId> <artifactId>springboot-filter</artifactId> <version>0.0.1-SNAPSHOT</version> <nam...原创 2020-01-08 16:06:19 · 586 阅读 · 0 评论 -
【SpringBoot】SpringBoot中使用线程池@EnableAsync
涉及到多线程的使用,总会绕不开一个概念——线程池,关于线程的原理及原始代码实现,这里不讲,网上有很多相关的博客,这里直接来介绍一下在SpringBoot中使用线程池来进行多线程的管理。1、核心参数介绍1、CorePoolSize:核心线程数,核心线程会一直存活,即使没有任务需要执行2、MaxPoolSize:线程池中的最大线程数3、QueueCapacity:阻塞队列的容量,用来存储等...原创 2019-12-16 13:58:49 · 1309 阅读 · 0 评论 -
【SpringBoot】SpringBoot中的定时任务(Schedule)
在SpringBoot中完成定时任务主要有两种方式:(1)使用注解的方式(2)使用接口的方式接下来分别对这两种方式进行简单介绍:1、使用注解完成定时任务使用注解来完成定时任务主要是配置文件的配置/** * SpringBoot定时器任务的方式一: * 使用注解的形式来创建定时器 * */@Configuration@EnableScheduling // 开启定时器p...原创 2019-12-10 11:27:10 · 882 阅读 · 0 评论 -
【SpringBoot】SpringBoot整合FreeMarker
FreeMarker 是一款 模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页,电子邮件,配置文件,源代码等)的通用工具。1、引入所需要的依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boo...原创 2019-12-09 16:51:55 · 576 阅读 · 0 评论 -
【SpringBoot】SpringBoot集成logback,实现日志管理
首先在src/main/resource中创建logback-spring.xml文件,一般默认就用此名字,如果更改名字的话就需要在配置文件中进行相关文件路径、名称的配置;文件内容如下:<?xml version="1.0" encoding="UTF-8"?><configuration> <contextName>SpringBoot-Logging...原创 2019-12-06 14:45:36 · 582 阅读 · 0 评论 -
【SpringBoot】SpringBoot中使用拦截器和过滤器
文章目录1、SpringBoot中使用过滤器(Filter)2、SpringBoot中使用拦截器(Interceptor)3、SpringBoot中使用拦截器(Interceptor)和过滤器(Filter)的结合4、过滤器(Filter)和拦截器(Interceptor)的区别1、SpringBoot中使用过滤器(Filter)在SpringBoot中使用过滤器首先要先实现Filter接口,...原创 2019-12-05 16:06:51 · 737 阅读 · 0 评论 -
【SpringBoot】SpringBoot集成Spring Data JPA
简单及记录一下相关的使用,后续会对这部分内容进行补充。Spring Data JPA 是 Spring 基于 ORM 框架、JPA 规范的基础上封装的一套 JPA 应用框架,底层使用了 Hibernate 的 JPA 技术实现,可使开发者用极简的代码即可实现对数据的访问和操作。所需依赖: <dependency> <groupId>org.springfr...原创 2019-10-22 14:55:31 · 814 阅读 · 0 评论 -
【Exception】java项目全局处理Controller层中的异常(@ControllerAdvice + @ExceptionHandler)
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/kinginblue/arti...转载 2019-08-15 15:07:55 · 1211 阅读 · 0 评论 -
【SpringBoot】SpringBoot中的static文件夹与templates文件夹
所有的资源文件都应该放在src/main/resources文件夹下面,在SpringBoot中,系统默认扫描的是static文件夹:因此可以将img/cs/js等文件放到src/main/resources/static文件夹下;src/main/resources/templates文件夹下放置的为动态资源,文件夹下的所有页面都需要通过系统来进行调用,而不能直接通过网址来访问。...原创 2019-07-22 09:15:32 · 4120 阅读 · 0 评论 -
SpringBoot+Maven多模块项目完整流程
原创 2019-07-24 16:45:36 · 664 阅读 · 1 评论