![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
Happywzy~
这个作者很懒,什么都没留下…
展开
-
springboot集成kafka
【代码】springboot集成kafka。原创 2023-03-02 15:15:40 · 130 阅读 · 1 评论 -
在同一个类中调用另一个方法没有触发 Spring AOP 的问题
Spring AOP 是使用了一个代理对象来包装目标对象, 并拦截目标对象的方法调用。在目标对象中调用自己类内部实现的方法时, 这些调用并不会转发到代理对象中, 甚至代理对象都不知道有此调用的存在。以上参考:https://segmentfault.com/a/1190000008379179,实测有效。返回之后的业务逻辑,但是实际情况是这个。我们的计划是通过定义切点,处理。方法不是直接被调用的,而是通过。原创 2023-02-21 11:59:35 · 353 阅读 · 0 评论 -
springboot集成Prometheus
接口说明springboot集成Prometheus需要开发的接口有:监控JVM、tomcat等相关的指标;自定义监控程序相关指标;监控JVM、tomcat等相关的指标micrometer已经为我们做好了相关的接口,只需要引入依赖即可.<!--集成Prometheus--><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spr原创 2021-06-23 10:34:38 · 1420 阅读 · 0 评论 -
gitee open API和GitHub restful API使用
说明gitee和github都提供了丰富的restful API,用于开发人员操作仓库.gitee Open APIgithub restful APItoken获取gitee和github私有仓库或者部分接口都需要用户权限认证,本文均使用token方式验证.gitee token 获取选择【用户】 - 【设置】 - 【私人令牌】 - 【生成新令牌】. 使用私人令牌,可以通过Gitee Open API访问你授权的数据.github token 获取选择【用户】 - 【Sett原创 2021-04-02 10:14:53 · 3568 阅读 · 0 评论 -
SpringBoot 如何关闭httpclient在控制台输出DEBUG日志
spring boot中使用httpclient只需要引入下面的依赖<dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <version>4.5.13</version></dependency>但是启动的时候有个问题,httpclient默认使用原创 2021-03-30 14:19:28 · 1914 阅读 · 0 评论 -
springboot配置多数据源,及多数据源下驼峰命名转换失效问题解决
配置application.ymlspring: datasource:# 第一个数据源 first: driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql://192.168.41.128:3306/first?useUnicode=true&characterEncoding=utf8&useSSL=false username: root password:原创 2020-12-09 13:46:21 · 1669 阅读 · 0 评论 -
RestTemplate请求PUT/DELETE方法无返回值问题
使用exchangeimport com.alibaba.fastjson.JSON;import com.crd.service.routing.bean.AddrInfo;import com.crd.service.routing.bean.Response;import com.fasterxml.jackson.core.JsonProcessingException;import com.fasterxml.jackson.databind.ObjectMapper;import o原创 2020-11-17 15:11:50 · 1725 阅读 · 0 评论 -
java枚举类的正确使用
规范使用枚举类public enum StatEnum { SUCCESS(1,"成功"), END(0,"失败"), REPEAT_KILL(-1,"重复"), INNER_ERROR(-2,"系统异常"), DATA_REWRITE(-3,"数据异常"); private int state; private String stateInfo; StatEnum(int state, String stateInfo) {原创 2020-11-17 15:11:01 · 515 阅读 · 2 评论 -
二维码扫码登陆流程设计
流程图网页端生成随机code,携带code去请求一张二维码图片;网页端轮询code是否登录成功状态;APP端扫描二维码,获取二维码内容;APP端验证二维码是否过期/无效;如果二维码有效,展示确认登录/取消按钮;APP端携带登录信息token确认登陆;后端为code绑定登录信息(token,userName),网页端轮询获得登录成功信息....原创 2020-11-06 10:33:16 · 1151 阅读 · 0 评论 -
springboot奇怪问题【1】—— HttpServletRequest和@Async搭配使用出现的问题
HttpServletRequest和@Async搭配使用问题问题描述:希望将request中参数传递到service中处理,同时service是使用异步@Async,此时通过request.getParameterMap()获取参数列表只能在程序启动第一次才能获取到,第二次及之后获取为空,测试如果去掉@Async注解则每次都能获取到参数.// Controller层@GetMapping("/call")public String callback(HttpServletRequest reque原创 2020-10-20 15:38:32 · 1771 阅读 · 0 评论 -
java插件化设计开发
问题java实现动态从jar包加载插件并运行.实现定义插件运行的接口,用户需要自己实现的public interface PluginService { /** * 插件运行方法 */ void process();}定义插件实体类@Datapublic class Plugin { /** * 插件名称 */ private String pluginName; /** * jar包完整路径原创 2020-09-29 13:46:08 · 2219 阅读 · 1 评论 -
springboot获取文件的MD5
public static String getMd5(String path) { String md5 = ""; try (FileInputStream inputStream = new FileInputStream(ResourceUtils.getFile(path))) { md5 = DigestUtils.md5DigestAsHex(inputStream); } catch (Exception e) ...原创 2020-08-21 17:40:49 · 2289 阅读 · 0 评论 -
java二维码工具Google.zxing的使用与测试
引入依赖<dependency> <groupId>com.google.zxing</groupId> <artifactId>javase</artifactId> <version>3.3.0</version></dependency>编写工具类public class QRCodeUtil { // 设置二维码长宽 private static int原创 2020-07-10 11:03:32 · 507 阅读 · 0 评论 -
构建java8最小docker镜像
问题openjdk和oracle jdk一些情况下并不兼容;openjdk镜像很小只有一百朵兆,但是oracle jdk搜到的镜像都很大.步骤下载最新的oracle jre 8https://javadl.oracle.com/webapps/download/AutoDL?BundleId=242050_3d5a2bb8f8d4428bbe94aed7ec7ae784上传到linux并解压[root@node1 jdk8]# tar -xvzf jre-8u251-linux-原创 2020-07-09 14:28:03 · 3411 阅读 · 3 评论 -
spring boot2.0集成邮件发送功能
引入依赖<!-- 注意版本号,测试2.0.3版本有严重问题,启动失败 --><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> <version>2.1.1.RELEASE</version></dependency&原创 2020-07-08 16:30:00 · 373 阅读 · 0 评论 -
Java验证码实现-EasyCaptcha
验证码EasyCaptcha介绍EasyCaptcha是一个Java图形验证码库,支持gif、中文、算术等类型,可用于Java Web、JavaSE等项目。使用<dependency> <groupId>com.github.whvcse</groupId> <artifactId>easy-captcha</artifactId> <version>1.6.2</version></d原创 2020-07-07 08:59:38 · 2231 阅读 · 0 评论 -
数字黑洞495,6174,...
1955年,卡普耶卡(D.R.Kaprekar)研究了对四位数的一种变换:任给出四位数k0,用它的四个数字由大到小重新排列成一个四位数m,再减去它的反序数rev(m),得出数k1=m-rev(m),然后,继续对k1重复上述变换,得数k2.如此进行下去,卡普耶卡发现,无论k0是多大的四位数,只要四个数字不全相同,最多进行7次上述变换,就会出现四位数6174。因此这项研究在国际数学界又被称为“马丁猜想—6174问题”。有趣的数字6174随机生成四个不完全一样的数字(0000,1111,2222,等排除.原创 2020-07-02 16:59:10 · 1925 阅读 · 0 评论 -
spring cloud gateway部署到k8s上UrlEncode问题
问题k8s中ingress使用的是ingress-nginx.项目中用到了spring cloud gateway做API网关,部署环境有docker、k8s等. 测试出现一个问题:请求的URL路径中如果出现了中文参数,如http://localhost:8080/test?param=你好,如果部署在docker或者裸机上,后台服务接收到的参数param是你好,但是如果部署在k8s上,后台接收到的参数可能是UrlEncode之后的%E4%BD%A0%E5%A5%BD,这不是后台需要的. 也可以在原创 2020-06-30 09:54:56 · 1085 阅读 · 0 评论 -
url路径中文参数乱码问题
问题http://localhost:8080/test?name=管理这样参数存在中文情况,spring boot代码public RoleResponse selectById(@RequestParam(value = "name", required = false) String name){ return roleService.selectByName(name);}可能存在接收到的name是%E7%AE%A1%E7%90%86这样的情况,这是浏览器自动为URL做了UrlEn原创 2020-06-22 14:30:15 · 863 阅读 · 0 评论 -
数据库查询结果为空定义默认值
使用MyBatis查询 返回类型为int,但是当查询结果为空NULL,报异常的解决方法如select pre_id from task_child where parent_id=3 order by pre_id desc limit 1;如果查询结果是空,那么后台可能报异常Servlet.service() for servlet [springDispatcherServlet] in context with path [/xxxx] threw exception [Request .原创 2020-05-12 17:14:42 · 1546 阅读 · 0 评论 -
java8流-Stream用法
::用法jdk8中使用了::的用法。就是把方法当做参数传到stream内部,使stream的每个元素都传入到该方法里面执行一下,双冒号运算就是Java中的[方法引用],[方法引用]的格式是:类名::方法名例如:表达式:person -> person.getAge();使用双冒号:Person :: getAgestream和parallelStream用于生成数据流...原创 2020-04-16 14:56:13 · 370 阅读 · 0 评论 -
java8中List<Obj>排序
List排序问题java8中引入了流的概念,还有Lambda函数的概念,那么针对List<Object>排序有哪些方法呢?首先我们创建一个User实体类:public static class User { public String name; public int age; public User(String name, i...原创 2020-04-16 14:55:18 · 1255 阅读 · 0 评论