
spring
文章平均质量分 56
zhangphil
zhangphil@live.com
展开
-
IDEA报错:Key ‘spring‘ is not expected here
IDEA项目代码中,src\main\resources\application.yml,打开一片红,无法识别。鼠标放在红色的代码上,显示Key 'spring' is not expected here之类。解决办法:关闭IDEA,重启IDEA即可,再次打开application.yml即一切正常。原创 2023-02-05 01:00:24 · 1668 阅读 · 0 评论 -
spring boot部署服务器端微服务,server.address配置0.0.0.0
需要在application.properties配置server.address=0.0.0.0。spring boot部署服务器端微服务,server.address配置0.0.0.0。否则当微服务的jar部署在机器上跑起来后,外面机器通过http连接访问不到。原创 2022-12-11 23:08:15 · 3008 阅读 · 0 评论 -
spring模板freemarker从项目的resources目录的data下加载文件,Java
有些时候,只是需要一个模板文件,需要在项目中二次定制化配置,不需要把它和标准的spring模板templates混淆在一起,此时可以在resources目录下建立data子目录,然后把模板模板文件放进去,然后通过ClassPathResource加载出来。模板引擎freemarker动态更新生成JSON模板字段值,Java_zhangphil的博客-CSDN博客_java json 模板引擎。java模板引擎freemarker动态更新JSON模板字段值。原创 2022-11-17 23:16:28 · 1429 阅读 · 0 评论 -
spring异步线程任务Async,自定义配置线程池,Java
以上是spring原生的多线程异步任务框架,我们没有添加任何配置参数,只是简单的调用。如果要自定义更细颗粒度的使用和理解线程池任务,可以通过配置@Configuration配置AsyncConfigurer@Override}}@Override}}MyTask.java不做任何修改,运行后输出:可以看到,此时的线程任务名称已经变为我们自定义的my-task@ 开头。(三)配置多个线程池。原创 2022-11-08 23:03:40 · 1468 阅读 · 0 评论 -
spring定时任务Scheduled与定时任务线程池配置SchedulingConfigurer ,Java
有说法认为需要把@EnableScheduling注解放在主应用Application上,其实不必,只需要把@EnableScheduling添加到使用定时任务的类上,然后在类的内部定时任务函数上添加注解@Scheduled即可。原创 2022-10-25 23:16:07 · 2232 阅读 · 0 评论 -
spring集成kafka运行时报错:Failed to construct kafka producer] with root cause
spring集成kafka运行时报错:Failed to construct kafka producer] with root causeorg.apache.kafka.common.KafkaException: class org.apache.kafka.common.serialization.StringDeserializer is not an instance of org.apache.kafka.common.serialization.Serializer如图:原创 2022-03-03 23:27:28 · 6399 阅读 · 0 评论 -
spring boot集成kafka开发,发送消息,Java实现(2)
文(1):https://zhangphil.blog.csdn.net/article/details/123108051https://zhangphil.blog.csdn.net/article/details/123108051在文(1)基础上,实现一个简单功能:在spring程序里面,发送kafka消息,kafka控制台里面,接受消息。kafka配置和文(1)相同。...原创 2022-02-25 23:55:08 · 1438 阅读 · 0 评论 -
spring boot集成kafka开发,接收kafka消息,Java(1)
命令:kafka-topics.bat --list --bootstrap-server 127.0.0.1:9092Windows环境下,列出主机127.0.0.1上kafka的主题topic。原创 2022-02-24 23:42:25 · 5317 阅读 · 2 评论 -
后端架构token授权认证机制:spring security JSON Web Token(JWT)简例(2)
这里有一个简单例子实现token认证授权访问:后端架构token授权认证机制:spring security JSON Web Token(JWT)简例_Zhang Phil-CSDN博客再写一个例子,该例中,假设/api需要登录且具有有效token才能访问的接口。/home是公开的接口,无须登录授权均可访问。/login是登录接口,用户通过/login提交用户名和密码进行鉴权验证。import org.springframework.beans.factory.annotat原创 2022-02-15 23:07:25 · 1458 阅读 · 0 评论 -
后端架构token授权认证机制:spring security JSON Web Token(JWT)简例
spring security JSON Web Token(JWT)简单例子实现在基于token的客户端-服务器端认证授权以前,前端到服务器端的认证-授权通常是基于session,自从token机制出现并流行起来后,基于token的客户端-服务器端认证-授权访问机制变得越来越主要,token机制从某种意义上讲是过去session会话机制的另外一种解决方案,并尤其适用于当前的大规模集群和分布式体系架构。客户端(浏览器web前端、app移动端等)与后端服务基于token的认证-授权访问流程一般情况是这原创 2022-02-10 23:13:12 · 7158 阅读 · 0 评论 -
nginx代理转发url接口请求路径到spring boot后端实现真正响应
常规的服务端架构设计中,一般出于负载均衡或者请求转发目的把Nginx作为“前端”,接受用户的url请求,然后根据不同的url路径,再次把请求转发到后端真正的响应服务器上。以流行的restfull架构设计为例,一个服务器需要满足图片、返回json的api接口转发到不同的服务器上,比如,有两个请求,(a)http://xxx.com:80/restfull/image(b)http://xxx.com:80/restfull/api现在需要把请求a转发到图片(image)服务器http://yyy.原创 2022-02-07 01:23:11 · 10531 阅读 · 1 评论 -
spring boot基于NoSQL数据库Redis发送接收存储消息
spring boot里面利用Redis发送、接收、存储消息很方便。写一个消息接收器:import org.springframework.beans.factory.annotation.Autowired;import org.springframework.data.redis.core.StringRedisTemplate;import java.util.UUID;import java.util.concurrent.atomic.AtomicInteger;public c原创 2022-01-28 23:31:35 · 1862 阅读 · 0 评论 -
spring boot连接NoSQL数据库Redis写入和读取数据
既然是连接Redis数据库,首先需要把Redis数据库启动起来。(1)创建一个maven的spring项目,在pom.xml添加相关依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId>原创 2022-01-27 23:28:25 · 2545 阅读 · 0 评论 -
spring async异步线程任务简例
spring通过一个注解关键字 @Async 表明一段代码将放入异步线程代码块里面运行。import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.scheduling.annotation.Async;import org.springframework.stereotype.Service;import java.util.concurrent.CompletableFuture;原创 2022-01-23 23:59:22 · 561 阅读 · 0 评论 -
Spring security登录授权用户有效期简单例子
在上一个例子基础上:https://zhangphil.blog.csdn.net/article/details/122489213https://zhangphil.blog.csdn.net/article/details/122489213加入一些简单改造,任何登录授权用户会给一个登录后的有效期,超时后,当前用户需要重新登录认证。这种场景就是常见的网页和app的“记住我”(记住用户名和密码)功能,“记住我”的时间可以通过spring的rememberMe()完成。修改的代码: @原创 2022-01-21 23:37:14 · 2205 阅读 · 0 评论 -
Spring security登录授权验证的简单例子
实现一个简单的使用spring security完成的登录验证。登录成功后,自动跳转到index页面。不同的用户,授予不同访问页面路径的权限。权限基于角色管控。admin权限角色最高。user角色为普通角色。import org.springframework.context.annotation.Configuration;import org.springframework.security.config.annotation.authentication.builders.Authentica原创 2022-01-20 23:12:12 · 1768 阅读 · 0 评论 -
spring boot报错:There is no PasswordEncoder mapped for the id “null“
spring boot报错:There is no PasswordEncoder mapped for the id "null"原因:新版spring boot需要在自定义的WebSecurityConfigurerAdapter里面的configure(AuthenticationManagerBuilder auth)函数里面为明文密码实现一个密码加密器。解决方案:在自己继承的WebSecurityConfigurerAdapter的类中的configure(Authenti原创 2022-01-19 23:03:09 · 1533 阅读 · 0 评论 -
Springboot连接NoSQL数据库MongoDB,读取集合数据文档
这里有MongoDB搭建配置和启动介绍:MongoDB数据库开发环境搭建与配置,Windows环境下_Zhang Phil-CSDN博客MongoDB是一种NoSQL数据库。本文以Windows环境为例搭建配置MongoDB。MongoDB下载链接:MongoDB Community Download | MongoDBhttps://www.mongodb.com/try/download/community解压后,可以看到在\bin目录下有两个.exe文件,mongo.exe和mongod.exe。原创 2022-01-24 23:05:53 · 1420 阅读 · 0 评论 -
Spring Boot的JMS发送和接收队列消息,基于ActiveMQ
消息队列ActiveMQ是JMS的一种实现,ActiveMQ可以单独作为一个消息队列组件即插即拔,即插即用,参考下面两篇文章:分布式MQTT消息订阅-发布框架:高可用性ActiveMQ_Zhang Phil-CSDN博客_mqtt分布式架构分布式MQTT消息订阅-发布框架:高可用性ActiveMQActiveMQ是MQTT的一种实现。ActiveMQ基于JMS。ActiveMQ开发包下载地址:http://activemq.apache.org/download.htmlActiveMQ最适合做消息推送原创 2022-01-19 00:13:19 · 1844 阅读 · 0 评论 -
SpringBoot上传文件到后端服务器
定义上传文件的服务:import org.springframework.web.multipart.MultipartFile;import java.nio.file.Path;public interface StorageService { long save(MultipartFile file, String dst) throws Exception; void deleteAll(Path path);}上传服务的接口实现:import or原创 2022-01-18 00:08:53 · 6725 阅读 · 1 评论 -
SpringBoot简单程序实现一个json数据返回
Application :package com.example.demo;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.web.bind.annotation.RestController;@SpringBootApplication@Rest.原创 2022-01-10 23:09:45 · 739 阅读 · 0 评论