
SpringBoot
老周聊架构
微信公众号:老周聊架构
展开
-
SpringBoot 配置文件位置的加载顺序
SpringBoot配置文件可以使用yml格式和properties格式分别的默认命名为:application.yml、application.properties 官网都是以yml作为参考,层级结构更清晰的一种配置文件。–file:./config/–file:./–classpath:/config/–classpath:/SpringBoot配置文件默认可以放到以下目录中,下面四种可以自动读取到:1、项目根目录下2、项目根目录中config目录下3、项目的resources目录原创 2020-09-16 21:29:14 · 7546 阅读 · 1 评论 -
SpringBoot项目中定时任务删除时间大于30天的文件及文件夹
1、首先要先写定时任务,之前有一篇写过定时任务的文章,没有看的可以点击下面的链接看一下:SpringBoot项目中集成Quartz实现定时调度任务定时任务编写好了,剩下的就简单了。2、编写删除时间大于30天的文件及文件夹的方法public class DeleteExpiredFile { private static final String ROOT_DIR_HISTORY_PATH = "/data"; public void deleteExpiredFileTask(原创 2020-05-19 19:36:27 · 3317 阅读 · 2 评论 -
史上最全 SpringBoot 注解详解
一、注解(annotations)列表1、@SpringBootApplication包含了@ComponentScan、@Configuration和@EnableAutoConfiguration注解。其中@ComponentScan让Spring Boot扫描到Configuration类并把它加入到程序上下文。2、@ComponentScan组件扫描,可自动发现和装配一些Bean...原创 2020-04-20 22:41:45 · 7982 阅读 · 9 评论 -
SpringBoot项目中自定义Redis的序列化方式以及封装RedisUtil
我们项目中经常用到Redis,而且存的值很多是json格式。所以这边我就自定义了RedisTemplate来修改Redis的序列化方式。而且封装了常用的Redis的操作。一、创建自定义配置类RedisConfigpackage com.riemann.springbootdemo.config;import com.fasterxml.jackson.annotation.JsonAuto...原创 2020-03-30 22:20:01 · 862 阅读 · 0 评论 -
SpringBoot项目中编程式事务与声明式事务的区别
一、什么是事务?我们在开发企业应用时,对于业务人员的一个操作实际是对数据读写的多步操作的结合。由于数据操作在顺序执行的过程中,任何一步操作都有可能发生异常,异常会导致后续操作无法完成,此时由于业务逻辑并未正确的完成,之前成功操作数据的并不可靠,需要在这种情况下进行回退。事务的作用就是为了保证用户的每一个操作都是可靠的,事务中的每一步操作都必须成功执行,只要有发生异常就回退到事务开始未进行操作的...原创 2019-12-27 23:01:10 · 2251 阅读 · 0 评论 -
SpringBoot项目中实现.json文件上传至MySQL
前面两篇文章实现了 Excel 文件的上传和下载。感兴趣的小伙伴可以点击链接看一下:SpringBoot项目中集成EasyExcel实现Excel文件上传至MySQLSpringBoot项目中集成EasyExcel实现Excel文件的下载那一版本中,又有另一条需求。前端上传 .json 文件进来,不是上传 Excel ,好吧。。。那我就兵来将挡水来土掩。直接解析 .json 文件不就完事了...原创 2019-12-23 21:41:34 · 2091 阅读 · 0 评论 -
SpringBoot项目中集成EasyExcel实现Excel文件的下载
1、pom.xml 加上 easyexcel 的依赖<!--alibaba easyexcel--><dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <version>2.1.3&...原创 2019-12-21 21:15:12 · 2289 阅读 · 0 评论 -
SpringBoot项目中集成EasyExcel实现Excel文件上传至MySQL
一、背景最近项目中遇到了这样的需求,要实现从前端导入Excel文件至MySQL数据库。开始我的第一想法就是用 POI,毕竟我之前有用过 POI 来实现这样类似的功能。不同的是 POI 是导入前端传来的 JSON 数据,而这次的需求直接传个 Excel 文件,还想着怎么把 Excel 里的数据怎么解析出来呢?这时无意间发现了 alibaba 开源的 EasyExcel。哈哈哈,来的早不如来得巧。想...原创 2019-12-20 22:53:28 · 4240 阅读 · 11 评论 -
SpringBoot项目中集成Swagger2
一、背景在团队开发中,维护好一份完善且规范的 API 文档能够大大减少团队开发人员的沟通效率且开发效率显著的提升。当我们的项目庞大且开发人员不断的来不断的走,这样的情况下,共同维护的 API 文档可想而知到后面基本废了,即使有一个规范的前提,但还是经受不住开发人员先后的”折磨“。这种做法存在以下几个问题:API 接口众多,细节复杂,需要考虑不同的HTTP请求类型、HTTP头部信息、HTTP...原创 2019-12-18 21:14:39 · 690 阅读 · 4 评论 -
SpringBoot项目中怎么保证提供的接口不会被调崩
一、背景像我们做项目写接口的时候,一定要考虑接口的并发性,要是写的接口提供第三方系统来调用,更需要保证自己提供的接口不会被调崩。有的并发性高的系统,在同一时刻或者同一小时间段,会有大量流量涌入,这时候你的接口不做相应的处理直接被调,很容易发生超时然后导致接口崩溃。我们可以用线程池来解决这一痛点。二、案例演示1、写一个接口 controller 类package com.riemann.sp...原创 2019-11-01 01:15:28 · 1242 阅读 · 0 评论 -
SpringBoot项目中集成Shiro进行权限管控
一、准备工作在开始本教程之前,请保证已经熟悉以下几点。Spring Boot 基本语法,至少要懂得 Controller 、 RestController 、 Autowired 等这些基本注释。其实看看官方的 Getting-Start 教程就差不多了。JWT (Json Web Token)的基本概念,并且会简单操作JWT的 JAVA SDK。Shiro 的基本操作,看下官方的 10...原创 2019-09-23 00:09:27 · 874 阅读 · 0 评论 -
SpringBoot项目中集成AOP
一、简介AOP(Aspect Oriented Programming)面向切面编程,想必大家都耳熟能详了吧,AOP是对OOP(面向对象)的一个补充。我们先来说下Spring吧,大家都知道它是一个框架,对于新手来说,越解释越抽象,越抽象也就越懵逼。我们可以换个角度来看,从功能的角度定义来看:Spring是一个库,一个Java库,它的功能提供了软件的框架,这个框架目的是使软件之间的逻辑更加清晰、配...原创 2019-09-17 23:34:56 · 810 阅读 · 0 评论 -
SpringBoot项目中自定义Filter过滤器、Listener监听器、Interceptor拦截器和Servlet容器
一、前言如果你是做后台开发,我相信对这几个很熟悉了,不熟悉的话也是有经常围绕在我们身边的,毕竟它们几个是Web开发的利器。下面我们就来自定义它们并写相应的demo。在启动类上添加@ServletComponentScan注解,我们来看下javadoc中关于@ServletComponentScan的描述:Enables scanning for Servlet components ({@...原创 2019-09-17 01:04:55 · 761 阅读 · 0 评论 -
SpringBoot集成MyBatis的分页插件PageHelper
首先说说MyBatis框架的PageHelper插件吧,它是一个非常好用的分页插件,通常我们的项目中如果集成了MyBatis的话,几乎都会用到它,因为分页的业务逻辑说复杂也不复杂,但是有插件我们何乐而不为?通常引入它们只需三步骤,不管是Spring集成还是SpringBoot集成都是老套路,我就分开总结了,望各位笑纳。Spring集成PageHelper:第一步:pom文件引入依赖 <...原创 2019-05-22 23:31:03 · 2898 阅读 · 2 评论 -
SpringBoot的异常处理机制
小伙伴们是不是刚接触Spring Boot做网页开发的时候,如果代码发生异常,会返回一个错误信息页面,如下图springboot中是如何处理异常的呢?这里就要接触到一个Spring Boot类BasicErrorController,如下图注释信息也说明了,这是一个基础全局错误controller,Spring Boot自带的,看到这个RequestMapping地址,这是一个相当于三元...原创 2019-06-08 17:08:39 · 1877 阅读 · 2 评论 -
SpringBoot项目中基于jasypt实现mysql配置文件自定义密码加密
一、背景由于我习惯把代码上传至Github上去,不论什么代码以及配置文件的信息一览无余的暴露在众人面前,想着能不能对我的mysql的密码进行加下密,即使我的数据库啥有用的信息都没有哈哈哈哈,但还是要有这个安全意思。想着以后项目中可能会遇到,故自己研究了下,记录于此,希望对你有帮助。二、前期准备1、pom文件引入jarb包依赖<!-- Jasypt加密 --><depen...原创 2019-06-15 23:49:27 · 2004 阅读 · 2 评论 -
SpringBoot项目中解决Fortify漏洞Log Forging日志伪造
一、例子下列 Web 应用程序代码会尝试从一个请求对象中读取整数值。如果数值未被解析为整数,输入就会被记录到日志中,附带一条提示相关情况的错误消息。String val = request.getParameter("val");try { int value = Integer.parseInt(val);}catch (NumberFormatException nfe) {...原创 2019-06-22 20:06:27 · 5814 阅读 · 8 评论 -
SpringBoot项目中集成FreeMarker实现模板发送邮件
最近项目中有个这样的需求:客户升级设备失败的话,需要给客户发送一个模板邮件,参数可以自己定义传入由邮件形式发送给客户。我们通过SpringBoot自带的mail服务及FreeMarker模板引擎,实现模板发送邮件。一、pom.xml中添加jar包依赖<!-- freemarker实现邮件发送 --><dependency> <groupId>or...原创 2019-06-23 13:39:58 · 3370 阅读 · 2 评论 -
SpringBoot项目中集成Quartz实现定时调度任务
一、Quartz1、简介起初是OpenSymphony组织提供的一个功能丰富的开源作业调度框架官网:http://www.quartz-scheduler.org/纯java编写,用法简单而功能强大。2、特点强大的作业调度功能作为spring默认的调度框架,极易与spring无缝整合,实现灵活可配置的调度功能,quartz提供了调 度运行环境持久化机制,可以保存并恢复调度现场,即使...原创 2019-06-23 21:04:29 · 2490 阅读 · 2 评论 -
SpringBoot项目中使用Logback实现多环境日志配置详解
一、前言SpringBoot工程自带logback和slf4j的依赖,所以重点放在编写配置文件上,需要引入什么依赖,日志依赖冲突统统都不需要我们管了。logback框架会默认加载classpath下命名为logback-spring或logback的配置文件。将所有日志都存储在一个文件中,文件大小也随着应用的运行越来越大并且不好排查问题,正确的做法应该是将error日志和其他日志分开,并且不同...原创 2019-08-24 02:17:05 · 8327 阅读 · 0 评论 -
SpringBoot项目中实现跨域的解决方案
一、什么是跨域现如今的开发项目一般都是前后端分离了,所以跨域访问会经常使用。现代浏览器出于安全的考虑,使用 XMLHttpRequest对象发起 HTTP请求时必须遵守同源策略,否则就是跨域的HTTP请求,默认情况下是被禁止的。跨域HTTP请求是指A域上资源请求了B域上的资源,举例而言,部署在A机器上Nginx上的js代码通过ajax请求了部署在B机器Tomcat上的RESTful接口。二、C...原创 2019-08-27 00:40:43 · 1432 阅读 · 0 评论 -
SpringBoot项目中集成JAXB实现XML与Java对象的互相转换
一、前言最近项目中遇到了一个这种需求:版本经理在上游环境通过配置XML的版本策略文件到我们系统,我们得解析XML的版本策略文件来看这些数据是否和我们系统后台的数据相一致,不一致的话,我们后台会去更新版本文件的数据,再通过定时调度把需要更新的版本文件推送给各个局点的设备进行升级。通过这个需求,我们可以发现业界的XML与Java对象的互相转换的是JAXB(Java Architecture for...原创 2019-08-30 00:32:48 · 8845 阅读 · 11 评论 -
idea+springboot+mybatis+maven构建web项目
1、New Project这里选择web,mysql,mybatis填好Group 和 Artifact按照自己需求配置项目结构:未完待续。。。原创 2019-04-26 00:54:57 · 1963 阅读 · 0 评论