- 博客(217)
- 收藏
- 关注
原创 RabbitMQ操作实战
安装RabbitMQ服务器 第一步:下载erlang 原因:RabbitMQ服务端代码是使用并发式语言Erlang编写的,安装Rabbit MQ的前提是安装Erlang。下载地址:http://www.erlang.org/downloads 第二步:下载RabbitMQ 下载地址:https://安装RabbitMQ服务器 第一步:下载erlang 原因:RabbitMQ服务端代码是使用并发式语言Erlang编写的,安装Rabbit MQ的前提是安装Erlang。RabbitMQ设置延迟消息的交换机。
2025-02-27 21:22:22
1035
原创 嵌套校验踩坑
对于A类中某字段是B类对象的情况,只有A类上的校验生效,B类上的校验不生效。@Valid 能够用在成员属性上,提示验证框架进行嵌套校验。在A类中的B类对象字段上加@Valid。
2024-11-21 10:41:13
222
原创 主键很大导致页面显示丢失精度问题
问题:主键很大,线上某表主键最大值已达1060421260745512126,页面显示会直接丢失精度。方案:传给前端时需要传字符串格式。
2024-11-21 10:30:54
156
原创 谷歌浏览器安装axure插件
3.打开Chrome浏览器,地址栏输入chrome://extensions/, 勾择开发者模式,点击'加载已解压的扩展程序'4.选择你刚刚.zip文件解压所在的扩展程序文件夹,点击确定。扩展程序列表出现你导入的扩展程序即为成功。然后解压到指定的文件夹(这个文件夹不能删除, 例如解压到了扩展程序文件夹)1.在生成静态原型页面的路径下,找到。,这就是需要的插件了。
2024-10-30 14:57:45
3268
1
原创 发邮件(excel附件)
@Autowiredprivate JavaMailSender mailSender;#根据数据创建excelInputStream inputStream = builtExcel(voList);private InputStream builtExcel(List<MonthlyKeywordEmailVO> voList) { //创建工作簿 XSSFWorkbook xssfWorkbook = new XSSFWorkbook(); //创建工作表 XSSFSh.
2022-02-22 16:11:07
647
原创 日志链路追踪
LogInterceptorpackage cn.com.autoax.config;import com.sun.istack.internal.Nullable;import org.slf4j.MDC;import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;import javax.servlet.http.HttpServletRequest;import javax.servlet.ht.
2021-08-24 16:31:22
212
原创 @Autowired注解用在接口集合上
//@Autowired注解用在接口的集合上面,所有实现该接口的实现类都会在该集合中@Autowired(required = false)private List<IAsynTask> tasks = Collections.emptyList();
2021-07-20 17:03:42
804
原创 shiro限制单用户并发访问数
https://blog.youkuaiyun.com/qq_33556185/article/details/51744004
2021-05-19 17:46:16
242
原创 springboot分环境
//注入 @Autowired private Environment environment; //active默认值 private String active = "dev"; //获取环境中的active(local、dev、test、prod) String[] activeProfiles = environment.getActiveProfiles(); if (activeProfiles!=null &&am...
2021-05-19 17:36:37
257
原创 分环境加参数
分环境参数#resource/dev/config/proxy.propertiesproxy.enabled=falseproxy.hostName=192.168.0.117proxy.port=1080#resource/test/config/proxy.propertiesproxy.enabled=trueproxy.hostName=172.17.75.90proxy.port=3128PropertyUtil类(Properties类加载properties参
2021-05-19 17:06:47
168
原创 shiro漏洞处理
自动生成“记住我”的加密秘钥 <!-- rememberMe管理器 如需要记住功能 可删掉相关配置 --> <bean id="rememberMeManager" class="org.apache.shiro.web.mgt.CookieRememberMeManager"> <!-- rememberMe cookie加密的密钥 建议每个项目都不一样 默认AES算法 密钥长度(128 256 512 位)--> <!--<.
2021-05-19 16:59:52
484
原创 解决sql注入和xss漏洞
WebMvcConfig.javaregistry.addInterceptor(new SqlInjectInterceptor()).addPathPatterns("/**");SqlInjectInterceptor.java@Componentpublic class SqlInjectInterceptor implements HandlerInterceptor{ @Override public void afterCompletion(HttpSer.
2021-05-17 22:00:12
640
原创 json字段
select tem.utsTempCode,json_extract(tem.utsTempCode, "$.view")from adtemplate temwhere tem.templateId=101077select tem.utsTempCode,json_extract(tem.utsTempCode, "$.view")from adtemplate temwhere tem.templateId=101077and json_extract(tem.utsTempCod.
2021-04-27 09:20:17
397
原创 mysql查看进程、变量、状态
Navicat的菜单 “工具”-->"服务器监控"-->MySQL,然后勾选相应数据库,切换到变量参数,找到max_allowed_packet,其默认值是4194304字节,大概4M,
2021-04-14 09:16:23
252
原创 netty学习
netty学习:BIO:accept()、read()、write()是阻塞的NIO:事件机制,一个或几个线程把accept()、read()、write()的活都干了,无事可做也不会死循环Reactor线程模型:单线程模型:多线程模型:主从模型:主线程池listen、accept,dispatch,从线程池read、write,从线程个数可与CPU个数等同TCP粘包拆包:正常包、粘包、半包粘包拆包问题,netty封装了许多类型的拆包器(固定长度、行、分隔符、长度域)netty零拷
2021-03-24 08:05:26
218
原创 socket学习
socket学习:服务端:socket()创建socketbind()绑定到ip端口listen()监听socketaccept()接受请求并建立连接read()write()close()客户端:socket()创建socketconnect()发出连接请求read()write()close()过程:服务端socket(),bind(),listen()客户端connect()服务端accept()tcp三次握手建立连接:服务端socket(),bind(),li
2021-03-24 08:04:30
165
原创 发布ApplicationEventPublisher,监听ApplicationEvent 异步操作
有这么一个业务场景:当用户注册后,发送邮件到其邮箱提示用户进行账号激活,且注册成功的同时需要赠送新人用户体验卡券。业务有了,那么问题也就来了。What? 问题…问题?我听说你有问题? 来拔刀吧,互相伤害啊。考虑以下两个问题:如何注册成功立即发送邮件、赠送体验卡? 如何同时向用户邮箱发送激活邮件、赠送新人客户体验卡,互不影响?如果是微服务项目,该逻辑可结合消息中间件进行处理。若是单机代码,有什么好的办法哇?你还在疯狂的代码逻辑判断吗?若代码高耦合,后期进行维护仿佛并不是那么happy,就不用说
2021-03-10 15:55:42
290
原创 git分支主干
拉取主干到分支git checkout master git pull git checkout devgit merge master git push -u origin dev合并分支到主干git checkout devgit pullgit checkout mastergit merge devgit push -u origin master
2021-02-24 17:13:59
405
原创 Linux安装jdk、tomcat、mysql等
1.linux_jdk/usr/java/jdk1.8.0_181 <--- /usr/jdk1.查看当前目录pwd 2.查看linux位数sudo uname --m i686 //32位 x86_64 //64位 3.安装jdk 3.1 在usr目录下建立java目录 mkdir usr/java 3.2 将jdk-8u181-linux-x64.tar解压到java目录下 tar -zxvf jdk-8u181-linux-x64.
2021-01-31 17:37:57
224
原创 RSA(加密解密、签名验签)
加密解密(公钥加密,私钥解密)签名验签(私钥加签,公钥验签)//生成公钥私钥KeyPairs key = RSAEncryption.initKey();String publicKey = key.getPublicKey();String privateKey = key.getPrivateKey();System.out.println("公钥:"+publicKey);System.out.println("私钥:"+privateKey);System.out.pri
2021-01-26 17:29:07
362
原创 Jackson自定义序列化器(针对null,针对指定name的属性)
public class JsonObjectMapper extends ObjectMapper { /** * */ private static final long serialVersionUID = 8034942567620323925L; public JsonObjectMapper() { super(); this.setSerializerFactory(this.getSerializerFactory().withSerializerMod...
2021-01-26 15:33:13
748
原创 SPI机制
JDK SPI//resources/META-INF/services //com.xxx.Logcom.xxx.impl.Log4j com.xxx.impl.Logback //public class Main { public static void main(String[] args) { ServiceLoader<Log> serviceLoader = ServiceLoader.loa
2021-01-25 17:40:27
180
原创 jackson适配fastjson写法的代码
public class JSON { private static ObjectMapper mapper; static { mapper = new ObjectMapper(); mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); mapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false); mapper.
2021-01-24 13:10:10
328
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人