
Java
文章平均质量分 63
Leon.ENV
Never Limit
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Java-线程中断
一个线程执行完毕之后会自动结束,但是如果要结束正在运行中的线程,这就使用到线程的中断机制。线程的 run() 方法可能会抛出异常,因为异常不能跨线程传播回 main() 中,因此必须在本地进行处理。线程中抛出的其它异常也同样需要在本地进行处理。Java中有以下方式可以中断线程:InterruptedException(中断异常)通过调用线程的 interrupt() 向该线程发出中断命令,如果此时该线程正处于阻塞、限期等待或者无限期等待状态,那么就会抛出 InterruptedExcepti原创 2021-02-27 16:49:25 · 393 阅读 · 1 评论 -
Java实现非对称加密算法-RSA加解密
RSA是由三位数学家Rivest、Shamir 和 Adleman 发明的非对称加密算法,这种算法非常可靠,秘钥越长,就越难破解。目前被破解的最长RSA秘钥是768个二进制位,长度超过768位的秘钥还无法破解,但随着计算能力的增强,以后被破解到多少位还是未知数。就目前而言,1024位的秘钥属于基本安全,2048位的秘钥属于极其安全。RSA算法在计算机网络中被普遍应用,如:https、ssh等。该算法还可以实现应用许可证(license),有以下几个步骤: 甲方构建密钥对(公钥和私钥,公钥给原创 2020-12-08 12:55:30 · 1540 阅读 · 0 评论 -
Java实现对称加密算法-AES加解密
AES(Advanced Encryption Standard)意思是高级加密标准,是一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。那么为什么原来的DES会被取代呢,原因就在于其使用56位密钥,比较容易被破解。而AES可以使用128、192、和256位密钥,并且用128位分组加密和解密数据,相对来说安全很多。完善的加密算法在理论上是无法破解的,除非使用穷尽法。使用穷尽法破解密钥长度在128位以上的加密数据是不现实的,仅存在理论上的可能性。统计显示,即使使用目前.原创 2020-12-07 20:33:28 · 1412 阅读 · 1 评论 -
Java虚拟机(JVM)-1-内存区域
对于Java程序员来说,不用担负着每一对象从创建到销毁的维护任务,这个任务由Java虚拟机(JVM)的动态内存分配和垃圾收集技术来实现。虽然JVM会自动对内存进行管理,但是一旦出现内存泄露和内存溢出的问题,如果不了解JVM是如何管理内存的,那排查错误、修正问题将会是一项困难的工作。JVM在执行Java程序时,会把它所管理的内存划分为多个不同的数据区域,这些数据区域也称为运行时数据区域。如图:程序计数器(Program Counter Register)...原创 2020-12-02 09:56:56 · 862 阅读 · 0 评论 -
HIbernate抽象出通用方法
前言Hibernate的目标是让开发者不用写sql就能实现对象到数据表的映射操作。当然,理想很美好,现实很骨感,在使用Hibernate时会遇到很多问题,如重复的增删改查、批量对象操作、分页等等,所以如果能抽象出这些通用方法,除了提高代码的整洁性,还能提高开发效率。实现1、通用接口定义:HibernateBaseDaoimport java.util.Collection;import java.util.List;/*** 数据库操作接口:Hibernate BaseDao原创 2020-11-20 14:29:52 · 1891 阅读 · 0 评论 -
Mybatis抽象出通用方法
前言之前实现了HIbernate的通用方法,相对比较容易,但是Mybatis本身没有提供类似Hibernate的EntityManager类可以操作对象。Mybatis提供了注解的方式直接写sql,达到了对象到数据表的映射,但是缺少通用的增删改查的抽象。目前已经有了第三方通用的Mapper类:tk.mybatis.mapper.common.Mapper,虽然提供了一些通用方法,但是不够全面。本人在tk的Mapper上进行一次封装,扩展更多的通用方法,对于通用方法实现和继承BaseService原创 2020-11-20 14:36:03 · 2477 阅读 · 0 评论