×
BUG汇总

为什么阿里要求避免使用 Apache BeanUtils 进行属性复制?

基础资料
为什么阿里要求避免使用 Apache BeanUtils 进行属性复制?

# 缘起有一次开发过程中,刚好看到小伙伴在调用 set 方法,将数据库中查询出来的 Po 对象的属性拷贝到 Vo 对象中,类似这样:可以看出,Po 和 Vo 两个类的字段绝大部分是一样的,我们一个个地调用 set 方法只是做了一些重复的冗长的操作。这种操作非常容易出错,因为对象的属性太多,有可能会漏掉一两个,而且肉眼很难察觉。类似这样的操作,我们很容易想到可以通过反射来解决。其实,如此普遍通用的功...

java 模拟web登陆,保存cookie,sessionid,进行后续操作

基础资料
java 模拟web登陆,保存cookie,sessionid,进行后续操作

此文章用作记录,在开发自己的爬虫项目时,发现有些网站需要登录后才能继续获取数据,经过查询解决了此问题其实很简单,只需要添加几行代码就可以实现了;此方法只适用于HttpURLConnection客户端;在我们原来的请求前添加如下代码CookieManager cookieManager = new CookieManager(); // 将规则改掉,...

Apache日志记录组件Log4j反序列化漏洞影响所有2.x<2.8.2版本

基础资料

Apache日志记录组件Log4j反序列化漏洞影响所有2.x版本。开源的东西用的人多了,自然漏洞就多。Apache用于日志记录的组件Log4j使用非常灵活,在相当多的开源项目中都有使用,此次漏洞影响所有Apache Log4j 2.*系列版本: Apache Log4j 2.0-alpha1 – Apache Log4j 2.8.1,使用Java 7+的用户应立即升级至2.8.2版本。边界无限安全...

@PostConstruct注解用途

基础资料
@PostConstruct注解用途

定义:@PostConstruct注解好多人以为是Spring提供的。其实是Java自己的注解。*Java中该注解的说明:@PostConstruct该注解被用来修饰一个非静态的void()方法。被@PostConstruct修饰的方法会在服务器当bean创建完成的时候,后置执行@PostConstruct修饰的方法,并且只会被服务器执行一次。PostConstruct在构造函数之后执行,Init...

java前后端分离项目实现”session保存“,不用每次都重新登陆

基础资料
java前后端分离项目实现”session保存“,不用每次都重新登陆

在自己写单独项目时,遇到这样的问题,登录网站后,我不小心触碰到浏览器的x按钮,好了,重新打开还得输入账号密码验证码,好繁琐对于不依赖任何插件库的情况下这是第一种解决方案:前后端分离,VUE需要做的事情在main.js中增加以下配置: import axios from 'axios'; axios.defaults.withCredentials=tr...

SpringBoot中使用@scheduled经常不执行,假死,需要注意的地方

基础资料

最近使用SpringBoot中的scheduled,本地测试好像都无问题,部署在环境后,过一两天发现我的定时任务怎么没有执行。最后经过排查发现了一下需要注意的坑SpringBoot使用@scheduled定时执行任务的时候是在一个单线程中,如果有多个任务,其中一个任务执行时间过长,则有可能会导致其他后续任务被阻塞直到该任务执行完成。也就是会造成一些任务无法定时执行的错觉可以通过如下代码进行测试:&...

对List集合中的对象进行按某个属性排序

基础资料

最近在实际的开发工作中/面试过程中,碰到排序的问题,如题,我们如何针对List集合中的某一个属性进行排序就是在排序的时候,给sort()方法传入一个比较器。具体来说,就是传入一个实现比较器接口的匿名内部类,目的是告诉sort()方法,按照比较器来对list中的对象进行排序。如下所示:import java.util.ArrayList; import java.util.Col...

高手总结的9种 OOM 常见原因及解决方案

基础资料
高手总结的9种 OOM 常见原因及解决方案

当 JVM 内存严重不足时,就会抛出 java.lang.OutOfMemoryError 错误。本文总结了常见的 OOM 原因及其解决方法,如下图所示。如有遗漏或错误,欢迎补充指正。1、Java heap space当堆内存(Heap Space)没有足够空间存放新创建的对象时,就会抛出 java.lang.OutOfMemoryError:Javaheap space 错误...