Springboot企业级开发
文章平均质量分 76
Springboot开发技术,持续更新最新技术!
程序三两行
愿你保持身心健康,去爱你所爱,不虚此生
展开
-
Springboot框架入门和学习
什么是springbootSpringboot的优点SpringBoot的缺点一:什么是springbootSpringboot是Spring开源组织下的子项目,是Spring组件一站式解决方案,主要是简化了使用Spring的难度,简省了繁重的配置,提供了各种启动器,开发者能快速上手。如今的j...原创 2019-06-10 12:55:26 · 2155 阅读 · 2 评论 -
Springboot创建项目(idea版本)
一:概述由于springboot项目,不管是java工程还是web工程都可以直接以jar方式运行,所以推荐创建jar工程,这里创建jar工程项目为例。二:两种方式创建springboot项目1.第一种方式手动在idea中new一个新的项目。选择maven工程完成的结构如图......原创 2019-06-10 12:54:52 · 101853 阅读 · 5 评论 -
Spring-boot-devTools无效解决办法,idea中devtools不起作用
项目使用了spring-boot-devtools,修改了类或者html、js等,idea还是不会自动重启,就更没有使用热部署一样。出现这种情况,并不是你的配置问题,相信自己,热部署那几个设置很简单,其根本原因是因为Intellij IEDA和Eclipse不同,Eclipse设置了自动编译之后,修改类它会自动编译,而IDEA在非RUN或DEBUG情况下才会自动编译(前提是你已经设置了Au...原创 2018-11-07 19:17:00 · 13726 阅读 · 8 评论 -
Springboot中如何进行依赖管理
任何一个springboot项目都会引入父项目依赖用来做项目版本管理 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.4.1</version> </parent>原创 2021-03-11 15:56:21 · 320 阅读 · 0 评论 -
Springboot如何打包部署项目
jar包方式打包1、pom文件引入插件boot使用这个插件可以将项目打包成一个可运行的jar,无需在目标服务器安装tomcat等spring-boot-maven-plugin项目存在于spring-boot-tools 目录中spring-boot-maven-plugin默认 有5 个goals;在打包的时候默认使用的是repackage。原创 2019-06-12 10:33:38 · 80415 阅读 · 13 评论 -
Springboot注解总结
SpringBootApplication包含@Configuration、@EnableAutoConfiguration、@ComponentScan通常用在主类上;Repository、Service、Controller、RestController、Component分别用于标注数据访问组件,业务层组件、控制层组件,RestController包含@Controller和@ResponseBody;Component泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注;Re原创 2021-11-16 16:41:48 · 437 阅读 · 0 评论 -
Springboot配置文件读取
对于application.properties配置文件,我们只需通过如下类似的键值对进行配置相关参数即可,这里主要看下yml方式要注意的地方在yml中如何定义配置,格式如下server:k:(空格)v表示一对键值对(空格必须有);以空格的缩进来控制层级关系;只要是左对齐的一列数据,都是同一个层级的,直接使用k: v:书写即可,比如 age: 14如果是字符串,双引号中的特殊字符会表达本身想表示的意思,单引号中的特殊字符将作为普通字符输出。原创 2019-11-04 17:35:43 · 1516 阅读 · 1 评论 -
Springboot自动配置原理
boot启动之后先加载所有的自动配置类,这些配置类会按照条件进行生效,并且会加入对应的配置文件类组件(HttpEncodingAutoConfiguration为例),此配置文件组件(ServerProperties.class)和配置文件绑定,在这个配置类(HttpEncodingAutoConfiguration)中就可以使用ServerProperties中的属性。方式一:自定义一个配置类,用自己的@bean组件替换即可,比如替换上面的CharacterEncodingFilter组件。原创 2022-09-22 23:14:41 · 894 阅读 · 0 评论 -
Springboot中使用Actuator监控项目
在企业应用中除了要了解Spring Boot业务的单元测试、集成测试等功能使用外,在上线之后还需要对线上应用的各项指标(比如,CPU利用率、内存利用率、数据库连接是否正常、用户请求数据等)进行监控和运维。在传统项目中,这些监控和运维往往需要借助其他第三方的工具实现,而在Spring Boot中提供了spring-boot-actuator模块,对于小型项目够用了,可以通过http、jmx、ssh、telnet等形式来监控和管理生产环境。转载 2023-11-24 17:01:11 · 3561 阅读 · 0 评论 -
Spring Boot命令行启动添加参数
通过java -jar启动springboot的jar项目时,可以动态传递参数来进行配置和开发,比如原创 2023-06-21 17:24:42 · 5238 阅读 · 0 评论 -
Springboot自定义Stater
boot已经提供了好多常用的starter场景,即使这样有时候我们需要将自己一个公用的业务模块抽成一个starter,需要用到的地方直接使用starter即可,比如分析分析官网starter定义方式,如引入测试starter分析可以看出如下,starter没有任何实现,只是依赖管理,底层的依赖是一个自动配置类和其他依赖底层依赖有个spring-boot-test-autoconfigure依赖用于和boot配置按照上面的模式,定义一个starter步骤如下。原创 2022-09-22 23:19:59 · 692 阅读 · 0 评论 -
Springboot静态资源访问、上传、回显和下载
原文地址http://www.javayihao.top/detail/132目录概述1.访问WebJar资源2.访问静态资源3.favicon.ico图标4.欢迎页面概述使用Springboot进行web开发时,boot底层实际用的就是springmvc,项目中加入spring-boot-starter-web依赖,就会提供嵌入的tomcat以及mvc依赖...原创 2019-11-07 15:40:14 · 3367 阅读 · 2 评论 -
Springboot前后端分离项目统一封装返回结果
问题前后端分离的项目中,基本每个controller都要返回一个resultVo,如下return new ResultVo(data);如果就想返回一个实体!可以通过AOP拦截所有Controller,再@After的时候统一封装@RestControllerAdvice(basePackages = {"com.system"})public class ControllerResponseAdvice implements ResponseBodyAdvice<Object原创 2021-05-12 19:24:53 · 2066 阅读 · 1 评论 -
SpringBoot启动后加载初始化数据
@PostConstruct、CommandLineRunner、ApplicationRunner、ApplicationListener都可以实现在springboot启动后执行我们特定的逻辑,接下来对比他们的区别原创 2023-03-30 22:15:51 · 2076 阅读 · 0 评论 -
Springboot中自定义组件
spring是是通过xml给容器添加组件的,在Springboot可以通过@configuration配置类的方式添加组件@Configuration //告诉boot这是一个配置类,相当于Spring中的配置文件/***1、通过配置类给容器添加组件 方法名作为组件的id返回类型就是组件的类型 返回的值就是组件在容器中的实列*2、如果不想让方法名作为组件id 可以在bean注解中传参*3、无论对这个方法调用多少次 获取到的都是之前注册进容器中的单实例对象*/@Bean。原创 2021-03-11 16:20:48 · 1593 阅读 · 1 评论 -
Springboot对MVC、tomcat扩展配置
Springboot在web层的开发基本都是采用Springmvc框架技术,但是Springmvc中的某些配置在boot是没有的,我们就应该根据自己的需求进行对mvc扩展配置。原创 2023-09-29 11:48:04 · 708 阅读 · 0 评论 -
Springboot中使用拦截器、过滤器、监听器
Javaweb三大组件:servlet、Filter(过滤器)、 Listener(监听器)SpringBoot特有组件:Interceptor(拦截器)过滤器、拦截器、监听器、AOP(后续文章介绍)、全局异常处理器(后续文章介绍)是搭建系统框架时,经常用到的部分,全局异常处理器的作用很明显,就是处理接口执行过程中的异常,而过滤器、拦截器和AOP的作用就很丰富了,日志记录、性能监控、安全认证等等可以向上抽取的功能组件,均可以用他们来实现。原创 2023-09-29 11:39:39 · 3229 阅读 · 0 评论 -
Springboot中Aop的使用
Order(100):AOP 切面执行顺序, @Before 数值越小越先执行,@After 和 @AfterReturning 数值越大越先执行。@Pointcut:定义一个切入点,可以是一个规则表达式,比如下例中某个 package 下的所有函数,也可以是一个注解等。@Around:在切入点前后切入内容,并自己控制何时执行切入点自身的内容。相比较于拦截器,Spring 的aop则功能更强大,封装的更细致,需要单独引用 jar包。@Before:在切入点开始处切入内容。原创 2023-09-29 11:43:03 · 185 阅读 · 0 评论 -
Springboot整合数据源
Springboot默认提供了三种内置的数据源供程序员使用分别是Hikari:默认使用的数据源对象tomcat提供的DataSource:Hikari不可用并且在web下,默认使用tomcat的DataSourcecommons DBCP:Hikari和tomcat 的DataSource都不可用时使用commons DBCP。原创 2019-12-16 12:09:21 · 521 阅读 · 0 评论 -
Springboot整合持久层框架
Springboot在数据层涉及到的技术主要有数据库、持久层框架、数据源三个,三个是不同知识点,千万不能弄混了;数据库可以选用mysql、clickhouse等持久层框架可以选择用mybatis、jdbcTemplate等数据源选择用druid、c3p0等这篇文章主要介绍spring boot如何整合数据源。springboot中数据库选择和持久层框架选择使用参考以下文章。原创 2019-12-16 10:14:49 · 859 阅读 · 1 评论 -
Spring Boot 整合多数据源
实际开发中如果需求相对而言比较简单可以使用这种多数据源配置,如果分布式中建议首选分布式数据库中间件 MyCat 去解决相关问题,当有数多个数据源,使用使用 MyCat,以及分表策略使用 sharding-by-intfile 比起boot中使用多数据源更加容易。原创 2020-01-06 11:51:28 · 1445 阅读 · 0 评论 -
Springboot事务处理
采用Aop对项目进行全局异常事务处理@Aspect@Configurationpublic class TransactionAdviceConfig { private static final String AOP_POINTCUT_EXPRESSION = "execution(* demo.service.impl.*.*(..))"; @Autowired private PlatformTransactionManager transactionManager; @Be原创 2020-11-24 11:19:56 · 6141 阅读 · 0 评论 -
Springboot全局异常处理
springboot默认发生4xx错误时候,pc端响应的页面如下如果是移动端(手机端)将会响应json格式的数据,如下。原创 2019-11-26 14:41:57 · 3566 阅读 · 1 评论 -
Springboot单元测试
对于简单易懂的小项目而言,可以不适用单元测试对平时开发没有什么影响,但是对于大型项目,单纯的依赖 “手点功能测试”, 那简直就是灾难,Springboot如何测试?Springboot提供一系列测试工具集以及测试注解供我们测试。spring-boot-test提供核心测试能力spring-boot-test-autoconfigure提供测试的一些自动配置我们只需要导入spring-boot-starter-test即可整合测试。原创 2019-11-06 18:13:53 · 303 阅读 · 0 评论 -
Springboot中使用日志框架
对于一个完整的项目而言,通过日志可以随时观察系统运行情况,日志功能是必不可少的,平时开发项目的时候想知道程序运行情况一般可以使用sysout.print(),打印一些关键的代码或者通过debug查看运行状态,使用sysout.print()会出现代码多余,于是市场上了出现许多记录运行状态的框架。原创 2019-11-06 20:16:24 · 2757 阅读 · 1 评论 -
Springboot中如何优雅的进行字段以及业务校验
概述后端要对前端传来得参数做各种校验,如果使用if-else语句会使代码可读性降低,不简洁,此时可以使用一些第三方校验工具类Hibernate Validate引入依赖<dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-validator</artifactId> <version>4.3.1.Final<原创 2021-07-30 08:57:48 · 869 阅读 · 0 评论 -
Springboot项目如何解决跨域
1. 什么是跨域 要了解跨域,先要知道同源策略。同源策略是由 Netscape 公司提出的一个著名的安全策略,所有支持 JavaScript 的浏览器都会使用这个策略。所谓同源是指:协议,域名,端口 全部相同。 浏览器从一个域名的网页去请求另一个域名的资源时,协议,域名,端口任意不同,都会出现跨域问题。 现实工作开发中经常会有跨域的情况。因为公司会有很多项目,也会有很多子域名,各个项目或者网站之间需要相互调用对方的资源,所以跨域请求是避免不了的2. 解决跨域的几种方案.方法一:注解转载 2021-08-27 08:14:04 · 225 阅读 · 0 评论 -
Springboot整合Thmeleaf
springboot官网还是推荐使用Thymeleaf而不是jsp,不使用jsp的原因是快速创建的springboot应用是jar应用,并且使用的是嵌入式的tomcat,当然Thymeleaf 在有网络和无网络的环境下皆可运行,即它可以让美工在浏览器查看页面的静态效果原创 2019-11-13 19:54:11 · 672 阅读 · 1 评论 -
Spring Boot + Thymeleaf 使用PageHelper实现分页
一、概述使用分页插件来实现分页功能。好处是,分页条你可以自行排版,不受页面约束。(前端使用的是thymeleaf)我使用的是spring boot 2.1.11.RELEASE,如果按照以下步骤不能实现分页,那可能是pagehelper的版本问题,更换版本试一下。二、使用首先在项目pom.xml中加入pagehelper插件的依赖<!--pagehelper分页插件 --><dependency> <groupId>com.github.pa原创 2020-12-23 11:53:03 · 1037 阅读 · 0 评论 -
springboot引入腾讯云COS实现上传
Java springboot项目引入腾讯云COS实现上传_csdn565973850的博客-CSDN博客Java springboot项目引入腾讯云COS实现上传pom.xml配置类CosConfig.java上传工具类CosClientUtil.javapom.xml <!--腾讯云上传图片pom依赖--> <dependency> <groupId>com.qcloud</groupId> <artifactId>cos_api</ar转载 2022-01-10 18:17:48 · 522 阅读 · 0 评论 -
Springboot整合freemarker
原文地址http://www.javayihao.top/detail/145目录概述springboot整合freemarker概述关于freemarker基础语法使用详见https://blog.csdn.net/qq_34491508/article/details/103118125springboot整合freemarker第一步:加入freem...原创 2019-11-18 11:06:29 · 1133 阅读 · 0 评论 -
Springboot整合jsp
原文地址http://www.javayihao.top/detail/1501.创建项目2.选择war工程3.这里可以选择web模块引入(我这里选择的boot版本是2.2.1)4.必须要引入的依赖<dependency> <groupId>org.apache.tomcat.embed</groupId> <...原创 2019-11-20 19:23:31 · 116 阅读 · 0 评论 -
springboot整合ssm详细讲解
SSM是企业中广泛应用的框架。大家再熟练地使用SSM进行业务逻辑开发的时候,也被它大量的xml配置困扰。今天快速优雅的使用SpringBoot实现简易的SSM工程。废话不多说,come on开发工具idea1.创建一个web工程,pom.xml中加入如下配置:<parent> <groupId>org.springframework.boot&l...原创 2018-11-07 10:49:58 · 31996 阅读 · 14 评论 -
Springboot整合Swagger2.0、3.0
目录一、Swagger2.0依赖Swagger2 配置创建接口二、Swagger3.0依赖支持 OpenAPI接口地址注解一、Swagger2.0在团队开发中,一个好的 API 文档不但可以减少大量的沟通成本,还可以帮助一位新人快速上手业务。传统的做法是由开发人员创建一份 RESTful API 文档来记录所有的接口细节,并在程序员之间代代相传。这种做法存在以下几个问题: API 接口众多,细节复杂,需要考虑不同的HTTP请求类型、HTTP头部信息.原创 2021-04-13 21:02:26 · 1120 阅读 · 0 评论 -
SpringBoot事件监听和发布
SpringBoot 实现事件发布和监听主要用到的类ApplicationEventPublisher、ApplicationEvent,当把一个事件发布到Spring提供的ApplicationContext中,被监听器侦测到,就会执行对应的处理方法。3、可以使用@Order注解控制多个监听器的执行顺序,@Order 传入的值越小,执行顺序越高。方式2:自定义事件发布类(继承ApplicationEventPublisher)1、如果2个事件之间是继承关系,会先监听到子类事件,处理完再监听父类。转载 2023-03-30 23:46:44 · 361 阅读 · 0 评论 -
Spring Boot整合fastjson
SpringBoot在构建RESTful风格的web服务时,默认使用的是Jackson作为JSON解析器,个人使用比较习惯的 json 框架是 fastjson,所以 spring boot 默认的 json 使用起来就很陌生了,所以很自然我就 想我能不能使用 fastjson 进行 json 解析呢?引入依赖注意,1.2.61以下有严重高危漏洞,1.2.61修复,必须升级到1.2.61,目前最新版本为1.2.62。原创 2020-01-06 17:14:32 · 2236 阅读 · 1 评论 -
Springboot整合异步任务
为什么要使用异步程序在访问耗时任务(比如发送邮件)或者其他接口的时候,不想程序一直卡在耗时任务上。让程序并行,就可以采用多线程实现并行演示同步调用使用异步:Springboot提供@Async注解让耗时操作另外开启一个线程@Servicepublic class TestService { @Async//开启一个新的线程执行当前方法 public voi...原创 2020-01-06 17:36:38 · 225 阅读 · 0 评论 -
Springboot整合定时任务
创建boot项目,pom 包里面只需要引入 Spring Boot Starter 包即可,在启动类上面加上 @EnableScheduling即可开启任务调度模拟一个定时任务类@Componentpublic class TestSchedule { @Scheduled(fixedRate = 6000) public void Test(){ Sy......原创 2020-01-06 17:44:33 · 321 阅读 · 0 评论 -
Springboot如何使用线程池
Springboot 线程池的使用原创 2022-07-03 18:22:43 · 696 阅读 · 0 评论 -
Springboot整合邮件服务
目录前言一.依赖引入二:邮件发送需要的配置获取163邮箱授权码获取QQ邮箱授权码三:配置信息四:代码编写五:多样式内容发送html邮件发送含静态资源邮件发送带附件邮件发送前言在开发中,经常会碰到email邮件发送的场景 如发送验证码,向客户发送邮件等等。如何通过Springboot 发送email 邮件 普通文本邮件 ,HTML内容板式邮件 ,包含静态资源邮件,以及带附件邮件?一.依赖引入<!--邮件服务--> ..原创 2020-09-18 13:26:26 · 1147 阅读 · 0 评论