- 博客(131)
- 收藏
- 关注
原创 java的类加载过程
这个过程是动态的,只有当类被首次使用(比如通过new关键字创建实例、访问静态字段或方法、反射等)时,才会触发加载和后续的步骤。如果类已经被加载,再次请求加载时,JVM会直接使用已加载的类,跳过加载步骤。将符号引用转换为直接引用,即将类、接口、字段和方法的引用从名称变为内存地址或者直接指向目标的指针。通常,JVM不会主动卸载类,除非JVM退出或类的加载器被卸载,且该类及其子类的引用都不存在。类加载后,就可以在程序中使用了,创建类的实例,调用类的方法等。初始化类的静态变量,赋予它们被定义时的初始值。
2024-05-21 10:22:47 66
原创 使用java mail SMTPTransport发送邮箱,本地秒到,一上服务器就20-30s左右,生产环境直接发送失败。
在本地测试,几秒就收到了邮箱,但是在服务器发送,就20-30s左右才可以收到。在生产环境,有大量邮件发送堆积,直接导致发送失败。
2023-10-22 16:43:28 969 3
转载 多线程基础(六、六)BlockingQueue用法详解之TransferQueue
因为TransferQueue提供了一个transfer的方法,生产者可以调用这个transfer方法,从而等待消费者调用take或者poll方法从Queue中拿取数据。在生产者的run方法中,我们调用了tryTransfer方法,等待2秒钟,如果没成功则直接返回。在run方法中,调用了transferQueue.take方法来取消息。可以看到Producer和Consumer是一个一个来生产和消费的。可以看到,因为没有消费者,所以消息并没有发送成功。
2023-06-17 09:52:40 113
转载 多线程基础(六、五)BlockingQueue用法详解之SynchronousQueue
使用SynchronousQueue的目的就是保证 “对于提交的任务,如果有空闲线程,则使用空闲线程来处理;否则新建一个线程来处理任务”。SynchronousQueue也是blockingqueue的一个实现,内部采用的就是ArrayBlockingQueue的阻塞原语,所以在功能上完全可以用ArrayBlockingQueue替换之,但是SynchronousQueue 是轻量级的,SynchronousQueue 不具有任何内部容量,甚至不具有一的容量,我们可以用来在线程间安全的交换单一元素。
2023-06-17 09:44:05 157
转载 多线程基础(六、四)BlockingQueue用法详解之DelayQueue
多线程基础(六、三)BlockingQueue用法详解之DelayQueue
2023-06-17 09:34:53 205
转载 多线程基础(六、三)BlockingQueue用法详解之LinkedBlockingQueue
BlockingQueue用法详解之LinkedBlockingQueue
2023-06-11 11:45:33 2543
转载 多线程基础(六、二)BlockingQueue用法详解之ArrayBlockingQueue
BlockingQueue用法详解之ArrayBlockingQueue
2023-06-11 11:38:29 2680
原创 Arthas 入门到实战(五)动态改日志级别
logger --name com.yonyou.einvoice --level DEBUG -c {classLoaderHash值}2. 通过 classLoader 修改日志为 DEBUG 级别。1、查看当前包下日志级别。
2023-05-30 13:48:41 1333
原创 多线程基础(三)JUC并发包:Lock锁、CountDownLath、CyclicBarrier、Semaphore、LockSupport
多线程基础(三)JUC并发包:Lock锁、CountDownLath、CyclicBarrier、Semaphore、LockSupport
2023-05-27 13:03:06 905
原创 记录Cause: com.mysql.cj.jdbc.exceptions.MySQLTransactionRollbackException: Lock wait timeout exceed
记录Cause: com.mysql.cj.jdbc.exceptions.MySQLTransactionRollbackException: Lock wait timeout exceed
2023-05-22 20:52:16 126
原创 idea中maven的几个操作按钮:clean、validate、compile...
idea中maven的几个操作按钮:clean、validate、compile...
2023-05-05 16:04:56 2988 2
原创 我们使用继承方法,为什么还会用super去调用父类,既然重写了那调用父类的方法有什么用?
我们使用继承方法,为什么还会用super去调用父类,既然重写了那调用父类的方法有什么用?
2023-04-14 23:22:17 262
原创 java写下载pdf文件,但是浏览器不是下载而是预览,并且下载发票名称既要防止XSS注入,也要中文不乱码,怎么解决?
java写下载pdf文件,但是浏览器不是下载而是预览,并且下载发票名称既要防止XSS注入,也要中文不乱码,怎么解决?
2023-04-12 16:41:14 2083
原创 使用 association 标签时,每个子对象的加载都会引发一次新的 SQL 查询,怎么优化。
使用 association 标签时,每个子对象的加载都会引发一次新的 SQL 查询,怎么优化。
2023-04-04 15:49:12 213
原创 邮箱附件名称使用 MimeUtility.encodeWord 乱码、发送网易邮箱为 XXX.bin问题解决!!
邮箱附件名称太长使用 MimeUtility.encodeWord 乱码解决!!
2023-04-04 10:56:54 1735
原创 Caused by: java.lang.NoClassDefFoundError: com/fasterxml/jackson/datatype/jsr310/ser/ZoneIdSerialize
解决:Caused by: java.lang.NoClassDefFoundError: com/fasterxml/jackson/datatype/jsr310/ser/ZoneIdSerializer
2023-02-13 10:16:16 460
原创 Arthas 入门到实战(四)arthas idea plugin集成插件
Arthas 入门到实战(四)arhtas idea plugin集成插件
2023-01-29 21:23:15 3836
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人