Spring boot
文章平均质量分 60
浅汐王
这个作者很懒,什么都没留下…
展开
-
SpringBoot整合Redis消息队列
消息模型1)队列模型队列模型如图所示,它具有以下几个特点,就像我们用微信和好友(群聊除外)聊天一样,微信就是这个队列,我们可以和很多个好友聊天,但是每条消息只能发给一个好友。只有一个消费者将获得消息 生产者不需要在接收者消费该消息期间处于运行状态,接收者也同样不需要在消息发送时处于运行状态。 每一个成功处理的消息都由接收者签收2)发布/订阅模型发布/订阅模型如图所示,不用说,和订阅公众号是一样的。多个消费者可以获得消息 在发布者和订阅者之间存在时间依赖性。发布者需要建立一个t原创 2020-06-28 11:59:32 · 71294 阅读 · 0 评论 -
SpringBoot异步处理任务
名词解释1)同步:等用户所有操作结束后,才会返回程序的处理状态。2)异步:直接返回给用户指定的状态,同时程序在后台继续运行,用户不用等待。实现同步实现 @Autowired private TaskAsync taskAsync; /** * 同步处理的方式 */ @GetMapping("/test2") public String test2() { taskAsync.getTest2(); System.out.println(Thread.cu原创 2020-06-28 10:06:19 · 70733 阅读 · 1 评论 -
Springboot集成MyBatis-Plus的使用
MyBatis-Plus介绍Mybatis-Plus(简称MP)是一个 Mybatis 的增强工具,在 Mybatis 的基础上只做增强不做改变,为简化开发、提高效率而生。这是官方给的定义,关于mybatis-plus的更多介绍及特性,可以参考mybatis-plus官网。那么它是怎么增强的呢?其实就是它已经封装好了一些crud方法,我们不需要再写xml了,直接调用这些方法就行,就类似于JPA。官网地址:https://mp.baomidou.com/guide/quick-start.html原创 2020-06-15 14:11:25 · 70084 阅读 · 1 评论 -
SpringBoot整合websocket实现在线客服聊天
websocket最伟大之处在于服务器和客户端可以在给定的时间范围内的任意时刻,相互推送信息。 浏览器和服务器只需要要做一个握手的动作,在建立连接之后,服务器可以主动传送数据给客户端,客户端也可以随时向服务器发送数据。实现功能:springboot整合websocket实现一对一,多对多聊天系统。依赖 <dependency> <groupId>com.alibaba</groupId> <原创 2020-06-09 15:45:17 · 78363 阅读 · 11 评论 -
Springboot构建多模块项目
首先新建一个springboot父项目这里不选择其他的,直接next就好了,后续需要再添加。建立完成后项目结构如下,但是这是一个父项目,做版本控制,什么都不需要,所以我们要删除如下的东西。选中的全部删除然后开始建立子模块注意这里需要选中springboot-dubbo然后右键选择其中的quickstart继续创建2个module,分别为module和server,至此多模块springboot项目创建完成。建立完成后的项目结构:父pom文.原创 2020-06-08 15:12:34 · 70638 阅读 · 0 评论 -
Springboot2.x使用JPA整合Redis
SpringBoot2.3,使用MySQL数据库,通过JPA实现ORM,再用Redis实现数据库的缓存。代码实现:pom.xml <!-- 集成redis --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redi原创 2020-06-08 13:18:55 · 70267 阅读 · 0 评论 -
Spring Boot+Security+Thymeleaf sec:authorize-url 标签不生效
用 SpringBoot + SpringSecurity + Thymeleaf 搭建了一个应用,发现 Thymeleaf sec:authorize-url 以及 sec:authorize="hasRole('ROLE_ADMIN')" 标签都不生效。后来发现是 Maven 引入 thymeleaf-extras-springsecurity4 时没有指定版本号,直接使用是SpringBo...原创 2019-09-12 11:39:52 · 482 阅读 · 0 评论 -
IEAD之mac 环境下的 Springboot 热部署方式-devtools
首先添加 maven 依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId></dependency>IDEAD 设置1、 左上角 prefere...原创 2019-09-09 16:25:06 · 334 阅读 · 0 评论 -
SpringBoot优雅的统一restful返回结果
1.为什么要定义通用返回对象:项目开发中,一般情况下都会对数据返回的格式做一个统一的要求,一般会包括状态码、信息及数据三部分。定义通用返回对象可以在原返回的数据基础上封装一层,将状态码等信息包含进来。2.案例如下:1.通过枚举类自定义返回状态码:/** * API 统一返回状态码 */public enum ResultCode { /* 成功状态码 */ ...原创 2019-09-09 15:32:34 · 3100 阅读 · 0 评论 -
Spring Security报错:There is no PasswordEncoder mapped for the id "null"
SpringBoot集成SpringSecurity进行安全控制的时候。package com.example.boot2security.config;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.context.annotation.Configur...原创 2019-05-26 19:35:23 · 252 阅读 · 0 评论 -
SpringBoot集成ehcache缓存报错
现象:idea配置echache.xml报错Cannot resolve file 'ehcache.xsd'解决办法:打开settings->languages&frameworks->schemas and dtds ,添加地址http://ehcache.org/ehcache.xsd然后将ehcache.xml 这里做修改...原创 2019-05-17 11:01:48 · 1046 阅读 · 0 评论 -
设置Spring Boot在Idea中实现热部署
添加依赖:<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <!-- optional=true,依赖不会传递 --> <opt...原创 2019-05-10 17:35:30 · 117 阅读 · 0 评论 -
Freemarker的数据类型
字符串类型定义字符串可以使用双引号和单引号,例如:<#assign temp = "some text" />或者<#assign temp = 'some text' />这两种形式是相等的。字符串中可以使用转义字符"\"。如果字符串内有大量的特殊字符,则可以在引号的前面加上一个字母r,则字符串内的所有字符都将直接输出。例如:"It's \"quoted\"...原创 2019-01-04 12:24:45 · 597 阅读 · 0 评论 -
Boot集成lombok让代码更简洁
1.添加lombok依赖<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok --><dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactI...原创 2018-10-07 21:06:08 · 127 阅读 · 0 评论 -
配置文件详解:Properties和YAML
一.配置文件的生效顺序,会对值进行覆盖:1. @TestPropertySource 注解2. 命令行参数3. Java系统属性(System.getProperties())4. 操作系统环境变量5. 只有在random.*里包含的属性会产生一个RandomValuePropertySource6. 在打包的jar外的应用程序配置文件(application.proper...原创 2018-10-07 21:59:48 · 1484 阅读 · 0 评论 -
配置文件-多环境配置
一.多环境配置的好处:1.不同环境配置可以配置不同的参数2.便于部署,提高效率,减少出错 二.Properties多环境配置1. 配置激活选项spring.profiles.active=dev2.添加其他配置文件 三.YAML多环境配置 1.配置激活选项 spring: profiles:active: dev...原创 2018-10-07 22:02:17 · 360 阅读 · 0 评论 -
日志配置-logback和log4j2
支持日志框架:Java Util Logging, Log4J2 and Logback,默认是使用logback配置方式:默认配置文件配置和引用外部配置文件配置 默认配置文件配置(不建议使用:不够灵活,对log4j2等不够友好)# 日志文件名,比如:roncoo.log,或者是 /var/log/roncoo.loglogging.file=roncoo.log# 日志级别...原创 2018-10-07 22:03:46 · 901 阅读 · 0 评论 -
web应用开发-模板引擎
spring boot的web应用开发,是基于spring mvc Spring boot 在spring默认基础上,自动配置添加了以下特性:包含了ContentNegotiatingViewResolver和BeanNameViewResolver beans。 对静态资源的支持,包括对WebJars的支持。 自动注册Converter,GenericConverter,Format...原创 2018-10-07 22:06:39 · 423 阅读 · 0 评论 -
web应用开发-模板引擎Thymeleaf
spring boot的web应用开发,是基于spring mvc Spring boot 在spring默认基础上,自动配置添加了以下特性:包含了ContentNegotiatingViewResolver和BeanNameViewResolver beans。 对静态资源的支持,包括对WebJars的支持。 自动注册Converter,GenericConverter,Format...原创 2018-10-07 22:08:04 · 164 阅读 · 0 评论 -
web应用开发-模板引擎JSP
spring boot的web应用开发,是基于spring mvc Spring boot 在spring默认基础上,自动配置添加了以下特性:包含了ContentNegotiatingViewResolver和BeanNameViewResolver beans。 对静态资源的支持,包括对WebJars的支持。 自动注册Converter,GenericConverter,Format...原创 2018-10-07 22:10:19 · 803 阅读 · 0 评论 -
web应用开发-错误处理
错误的处理方法一:Spring Boot 将所有的错误默认映射到/error, 实现ErrorController@Controller@RequestMapping(value = "error")public class BaseErrorController implements ErrorController {private static final Logger lo...原创 2018-10-07 22:15:03 · 1209 阅读 · 0 评论 -
springboot返回jsp页面的问题
@RestController是@ResponseBody + @Controller合体当你这个方法想返回一个页面时这两种注解的解决办法前提在application.properties中定义spring.mvc.view.prefix=/WEB-INF/jsp/ //jsp页面文件所在的文件夹spring.mvc.view.suffix=.jsp ...原创 2019-01-04 10:56:42 · 1265 阅读 · 1 评论 -
Freemarker判断对象是否为空
freemarker中显示某对象使用${name}. 但如果name为null,freemarker就会报错。如果需要判断对象是否为空:<#if name??>……</#if> 当然也可以通过设置默认值${name!''}来避免对象为空的错误。如果name为空,就以默认值(“!”后的字符)显示。 对象user,name为user的属性的...原创 2019-01-04 11:18:22 · 2382 阅读 · 0 评论 -
Freemarker常用标签的使用(一)
1截取字符串有的时候我们在页面中不需要显示那么长的字符串,比如新闻标题,这样用下面的例子就可以自定义显示的长度<#if title.content?length lt 8> <a href>${title.content?default("")}</a> <#else> <a hr...原创 2019-01-04 11:43:00 · 597 阅读 · 1 评论 -
Freemarker常用标签的使用(二)
1 list、break指令<#list sequence as item> ...</#list>tem_index:当前变量的索引值.item_has_next:是否存在下一个对象.<#list ["星期一","星期二","星期三","星期四","星期五","星期六"] as x>原创 2019-01-04 12:17:08 · 399 阅读 · 0 评论 -
Spring Boot 2.0正式发布,新特性解读
写在前面北京时间 3 月 1 日,经过漫长的等待之后,Spring Boot 2.0 正式发布。作为 Spring 生态中的重要开源项目,Spring Boot 旨在简化创建产品级的 Spring 应用和服务。用户只需要"run"就能创建一个独立的,产品级别的 Spring 应用。一经发布,Spring Boot 就迅速受到了开发者的亲睐,到目前为止,它已经有超过 2 万个 Star,1.6 万个...转载 2018-03-02 23:45:24 · 411 阅读 · 0 评论