SpringBoot
雪落南城
这一场人间流浪,长随步履温柔相候
展开
-
使用mysql8.0时报Public Key Retrieval is not allowed
Public Key Retrieval is not allowed原创 2023-03-08 18:11:25 · 274 阅读 · 0 评论 -
单元测试的时候读不到resources.test中配置
单测resource文件定位问题解决原创 2022-11-08 14:59:24 · 1081 阅读 · 0 评论 -
SpringBoot启动时web容器什么时候初始化及如何选择是tomcat还是jetty
web容器初始化时机如图如何选择tomcat还是jetty?按照serveletWebServerFactory查找bean,不等于1个就会报错那么,serveletWebServerFactory的实例是怎么构建的呢?点击serveletWebServerFactory可以看到三个实现类进入其中一个,查找引用这个类的地方ServletWebServerFactoryConfiguration接下来我们看ServletWebServerFactoryConfiguration这个类原创 2021-08-12 01:38:07 · 748 阅读 · 0 评论 -
如何在项目中引入kafka,但是不使用kafka呢
通常情况下我们在项目中引用了kafka,尤其是本地自己的项目,并不想每次都启动kafka,但这时候启动项目的时候会一直连接kafka,一直连。那么这时候怎么办呢,so easy把kafka相关的内容放到一个新的moduel中,然后项目中想用的时候就在pom中引入这个moduel,不用就不引,这样启动时就不会一直连接kafka broker了demo-kafka中引kafka相关包...原创 2020-12-09 11:01:51 · 767 阅读 · 0 评论 -
spring boot的项目如何设置tomcat运行内存
上古时期,项目打成war包放入tomcat中,tomcat运行内存可以通过单独的配置文件来设置现在都是在spring boot中集成了tomcat,并没有配置文件来设置tomcat运行内存大小那么该怎么设置呢?想多了,设置好项目自己的内存大小就可以了 共享的...原创 2020-10-23 15:41:09 · 1884 阅读 · 0 评论 -
本地测试神器-mockito
前言我们在写自己的单测时,通常写法都是main方法或者SpringBootTest + junit但是这两种写法都有问题1、main方法,无法进行bean注入,只能进行简单的逻辑测试2、springbootTest + junit 可以实现bean注入,但是每次测试都需要启动服务,且如果本地环境无法连接数据库,代码中走到DAO层会报错解决方案 Mockito当我们不想每次测试都启动服务,但是代码中又有一些数据库操作,或者其他RPC调用,想跳过这些,直接测后边的代码pom原创 2020-06-17 16:52:02 · 929 阅读 · 0 评论 -
SpringBoot工程yml文件没有生效
背景新建了一个基于springboot的maven项目,本来想实现一个controller测试一下接口,yml配置了端口号和根路径但是启动时却没有生效还是8080端口,直接增加JVM启动参数 -Dserver.port=8081可以生效,那么问题来了,为什么yml文件没有生效呢?结论先上结论,我这次的case是因为 pom文件中,packaging标签的值是pom将pom改为jar就好了冷静分析case复盘一下吧。1、yml文件没有生效说明Spring加载的时候没有找到这个文件但是原创 2020-06-12 12:00:47 · 8033 阅读 · 7 评论 -
POST时Controller获取不到请求参数、web请求格式
代码是这样的,postman设置如下:结果msg为空将postman请求的时候 content-type改为 x-www-form-urlencoded 就好了原创 2020-05-06 16:57:27 · 2470 阅读 · 0 评论 -
代码执行顺序和数据库更新时间不一致
场景:某业务代码逻辑如下1、更新TABLE1 (方法加了@Transactional注解)2、更新TABLE23、发送kafka通知topicA4、Listener监听topicA5、Listener查询TABLE1问题:1、TABLE2 更新时间早于 TABLE12、Listener查询TABLE1时没有查询到数据,但后期再查就可以查到=======...原创 2019-11-04 16:21:19 · 330 阅读 · 0 评论 -
SpringBoot对kafka consumer参数的默认配置
SpringBoot对kafka consumer参数的默认配置首先上Consumer类 类变量即为需配置的consumer属性public static class Consumer { private final Ssl ssl = new Ssl(); /** * 自动提交间隔时间 设为自动提交时有效 * 默认 5000 ms * Frequenc...原创 2019-11-01 14:29:41 · 7538 阅读 · 3 评论 -
SpringBoot启动系列之prepareEnvironment浅析
环境准备prepareEnvironment方法private ConfigurableEnvironment prepareEnvironment( SpringApplicationRunListeners listeners, ApplicationArguments applicationArguments) { // Create and configure ...原创 2019-10-25 11:40:22 · 1115 阅读 · 0 评论 -
SpringBoot启动系列之prepareContext浅析
Spring在启动的时候,refreshContext之前有一步prepareContext操作今天来分析一下prepareContext干了啥private void prepareContext(ConfigurableApplicationContext context, ConfigurableEnvironment environment, SpringApplicationR...原创 2019-10-25 11:42:11 · 1086 阅读 · 0 评论 -
前端传Excel文件
@RestController@RequestMapping("/dataImport")public class DataImportController { @PostMapping(value = "/uploadFile") public Integer uploadFile(@RequestParam Integer id,@RequestParam("templ...原创 2019-10-22 18:40:22 · 366 阅读 · 0 评论 -
SpringBoot自动装配原理浅析
1、我们使用SpringBoot时启动工程只需@SpringBootApplicationpublic class TestApplication { public static void main(String[] args) { SpringApplication.run(TestApplication.class, args); }}首先进入@...原创 2019-10-18 19:05:08 · 427 阅读 · 0 评论 -
SpringBoot上传文件
以上传excel为例1、pom<dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.14</version></dependency>&l...原创 2019-10-08 15:45:30 · 211 阅读 · 0 评论 -
SpringBootAdmin-Server端
1、pom<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> ...原创 2019-09-30 11:53:42 · 697 阅读 · 0 评论 -
SpringBootAdmin-Client端
基于Spring Boot 2.x 版本 基于Eureka集群1、pom<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId...原创 2019-09-30 11:48:58 · 953 阅读 · 1 评论 -
SpringBoot-@Scheduled 定时任务
总结写在前面:1、@EnableScheduling2、Spring定时任务默认单线程跑,想多线程需手动配置@Configuration@ComponentScan(basePackages="org.baeldung.taskscheduler",basePackageClasses={ThreadPoolTaskSchedulerExamples.class})...原创 2019-09-25 16:40:12 · 1305 阅读 · 0 评论 -
基于SpringBoot搭建Dubbo---3接口与实现整合到一个工程
1、新建maven工程dubbo-e新建moduel maven dubbo-e-core:提供接口 对外暴露新建moduel spring dubbo-e-provide:实现类 不对外暴露目录结构:provider引用core,core不引用工程总pom:<?xml version="1.0" encoding="UTF-8"?><proje...原创 2019-07-10 17:21:52 · 339 阅读 · 0 评论 -
基于SpringBoot搭建Dubbo---2
使用zookeeper作注册中心consumer和provider pom新增<!-- Zookeeper dependencies --><dependency> <groupId>org.apache.dubbo</groupId> <artifactId>dubbo-dependencies-zookee...原创 2019-07-09 18:41:22 · 202 阅读 · 0 评论 -
Spring Boot(一):入门篇
转载:Java极客技术,https://mp.weixin.qq.com/s?__biz=MzU3NzczMTAzMg==&mid=2247483666&idx=1&sn=db9e5a1f811991aea494672549531213&chksm=fd0161a5ca76e8b314328c33f7be0fd7821e86f70aa3d36aa2ce341ab7d...转载 2019-04-26 10:42:49 · 196 阅读 · 0 评论 -
Spring Boot(十一):Spring Boot 中 MongoDB 的使用
转载:Java极客技术,https://mp.weixin.qq.com/s/f2YOSMWVCwf_DUxE3XlzgQMongoDB 是最早热门非关系数据库的之一,使用也比较普遍,一般会用做离线数据分析来使用,放到内网的居多。由于很多公司使用了云服务,服务器默认都开放了外网地址,导致前一阵子大批 MongoDB 因配置漏洞被攻击,数据被删,引起了人们的注意,同时也说明了很多公司生产中大量使...转载 2019-04-26 10:21:33 · 171 阅读 · 0 评论 -
SpringBoot-LocalDateTime参数校验
1、前端传LocalDateTime类型的参数@NotNull@DateTimeFormat(iso = DateTimeFormat.ISO.DATE_TIME)private LocalDateTime repayTime;enum ISO { /** * The most common ISO Date Format {@code yyyy-MM-dd}, ...原创 2019-04-03 10:35:21 · 4103 阅读 · 0 评论 -
SpringBoot-Controller参数校验
1、Controller层@Valid 和 @Validated 都可以@PostMapping(value = "/xxx")public ResponseBean addContractFrontConfigInfo(@Validated ContractFrontConfigQuery contractFrontConfigQuery) { return null;}...原创 2019-03-26 19:12:48 · 437 阅读 · 0 评论 -
PageHelper分页实战
1、首先pom文件引入<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>4.1.6</version></dependency&g...原创 2019-03-25 15:49:22 · 523 阅读 · 0 评论 -
SpringBoot Controller
实现简单的Controller1、引入依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId></dependency>2、配置yml文件...原创 2019-02-27 00:22:19 · 246 阅读 · 0 评论 -
SpringBoot Controller
使用1、pom文件引入依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId></dependency>2、编写controller代码...原创 2019-03-01 00:02:25 · 184 阅读 · 0 评论 -
Redis实现排行榜功能(实战)
转自https://blog.csdn.net/m0_37459380/article/details/82971525需求前段时间,做了一个世界杯竞猜积分排行榜。对世界杯64场球赛胜负平进行猜测,猜对+1分,错误+0分,一人一场只能猜一次。1.展示前一百名列表。2.展示个人排名(如:张三,您当前的排名106579)。分析一开始打算直接使用mysql数据库来做,遇到一个问题,每个人...转载 2019-01-21 14:33:31 · 1149 阅读 · 0 评论 -
Spring Boot(二):Web 综合开发
转自:Java极客技术,https://mp.weixin.qq.com/s?__biz=MzU3NzczMTAzMg==&mid=2247483673&idx=1&sn=89fd538f0a3c380279681525ce262423&chksm=fd0161aeca76e8b876aa534fd80cfb31c60b249ef7cf510dac787665770...转载 2019-04-26 10:49:52 · 237 阅读 · 0 评论 -
@ConditionalOnClass注解分析
Spring中为Kafka提供了一个自动配置类KafkaAutoConfiguration在类上有一个注解@ConditionalOnClass(KafkaTemplate.class)这个注解通俗的说就是Spring工程中引用了Kafka的包 才会构建这个bean官方解释:/** * {@link Conditional} that only matches wh...原创 2019-03-07 14:20:43 · 99471 阅读 · 11 评论 -
基于SpringBoot搭建Dubbo
1、3个工程provider,consumer,interface(提供接口供provider和consumer引用)2、interface工程中建一个接口public interface DemoService { String sayHello();}pom版本:<groupId>com.example</groupId><a...原创 2019-07-09 17:50:45 · 247 阅读 · 0 评论 -
SpringBoot-服务端参数校验Validate,valid
目录方法一:注解法@Valid @Validate方法二:对bean中字段批量校验方法三:在入参上加NotNull服务端验证接口参数<dependency> <groupId>javax.validation</groupId> <artifactId>validation-api</artifact...原创 2019-07-08 15:52:07 · 1156 阅读 · 0 评论 -
@PropertySource加载yml
1、yml文件通常是 application.yml当我们需要新的yml文件时,新建一个yml文件 response.ymlresponse: name: 张三2、启动类新加@PropertySource(value = {"classpath:response.yml"}, encoding = "utf-8", factory = ResponseFactory.cla...原创 2019-06-10 19:40:22 · 5538 阅读 · 0 评论 -
Spring Boot中,jar包、war包的区别
参考链接:https://www.cnblogs.com/cag2050/p/7833541.htmlSpringBoot打包的jar包和传统jar是有区别的这个JAR包与传统JAR包的不同之处在于里面有一个名为lib的目录,在这个目录中包含了这个简单应用所依赖的其他JAR包,其中也包含内置的嵌 入式Tomcat,正是使用它,才能发布服务和访问Web资源。除了我们编写的源码所编译形成...原创 2019-06-03 18:49:14 · 772 阅读 · 0 评论 -
SpringBoot使用Java Mail实战
1、pom文件<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId></dependency>2、使用基础邮件:/** * from字...原创 2019-05-16 17:02:57 · 228 阅读 · 0 评论 -
SpringBoot之profile
平常开发中,yml文件中spring: profiles: active: local运行程序时,会选取后缀为local的yml配置文件那么生产时如何切换呢。java -jar -Dspring.profiles.active=prod *.jar示例:nohup $JAVA_HOME/bin/java -server -Xms150m -Xmx...原创 2019-05-09 19:33:08 · 985 阅读 · 0 评论 -
Spring自动配置之---KafkaAutoConfiguration学习
1、是Spring提供的对Kafka进行的自动化配置@Configuration@ConditionalOnClass(KafkaTemplate.class)@EnableConfigurationProperties(KafkaProperties.class)@Import({ KafkaAnnotationDrivenConfiguration.class, Kaf...原创 2019-04-25 14:50:34 · 4155 阅读 · 0 评论 -
Spring自动配置之---RestTemplateAutoConfiguration学习
@Configuration@AutoConfigureAfter(HttpMessageConvertersAutoConfiguration.class)@ConditionalOnClass(RestTemplate.class)public class RestTemplateAutoConfiguration { private final ObjectProvider&...原创 2019-04-25 16:36:59 · 3498 阅读 · 0 评论 -
[SpringBoot实战杂记]事务-@Transactional
Spring事务使用在实际操作中,先插入了表数据,然后处理其他业务,如果此时处理业务发生异常,则表数据回滚或者用于多表/多次数据增删改操作的情形。首先 Springboot Application@EnableTransactionManagement //开启事务管理然后在Service的方法上,注意 是最外层的方法加上@Transactional 或者 @Trans...原创 2019-01-08 10:27:30 · 525 阅读 · 0 评论