Java
文章平均质量分 89
lazycece
http://lazycece.com
展开
-
JUC之ReentrantLock解读
ReentrantLock简介ReentrantLock是可重入锁的实现,可重入锁的含义是:如果已经拥有锁的线程再次获取锁时会立即响应成功,这点可以使用isHeldByCurrentThread和getHoldCount方法来检验。ReentrantLock可重入互斥锁具有同synchronized的隐式监视器锁相同的基本行为和语义,但是其更具有扩展能力。ReentrantLock提供公平锁和非公平锁的特性,如果设置为公平锁,那么锁倾向于访问等待时间最长的线程;如果是非公平锁,那便不会保证任何特定的访问原创 2020-07-09 14:39:03 · 458 阅读 · 0 评论 -
JUC之AQS解读
AQS简介AQS(AbstractQueuedSynchronizer)是一个模板类,其提供一个先进先出(FIFO)的等待队列,旨在为大多数依赖单个原子int值表示状态的同步器提供有用的基础。AQS类支持默认的排他锁和共享锁之一或两者。在排他锁模式下获取时,其他线程尝试获取是不会成功的,共享模式由多个线程获取可能会(但不一定)成功。AQS类不会“理解”这些区别,只是锁意义上说,当成功获取共享模式时,下一个等待线程(如果存在)也必须确定它是否也能够获取。在不同模式下等待的线程共享相同的FIFO队列。如果原创 2020-07-07 17:07:46 · 635 阅读 · 0 评论 -
ThreadLocal源码剖析
顾名思义,ThreadLocal是为线程提供私有的局部变量。它不同于其他常规的变量,需要使用自身的get和set方法来获取和设置值。ThreadLocal的典型应用是在类中被申明为静态变量,用于关联用户ID、事务ID,亦或者其他需要线程独有的属性。对于ThreadLocal,只要该线程处于活动状态并且ThreadLocal实例是可访问的,每个线程都保留对其本地线程副本的隐式引用。如果线程消失后,...原创 2019-11-05 21:40:00 · 749 阅读 · 3 评论 -
解决"The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path"问题
问题:Description Resource Path Location TypeThe superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Pathxxx.jsp解决方法:点击项目属性->java build path->Libraries->Add Li原创 2017-02-18 16:59:32 · 2167 阅读 · 0 评论 -
DATE类型的加减
package com.tradingplatform.dto;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;/** * 用于操作时间运算的类 * @author cc * */public c原创 2017-06-14 16:10:28 · 3886 阅读 · 0 评论 -
java分页实现
package com.tradingplatform.dto;import java.util.List;/** * 分页原理页面传送数据的Dto * @param :传送的数据的类型 */public class PageJumpDataDto { private int currentPage=1; //当前页 private int totalPage=0; //总共页原创 2017-06-14 16:14:39 · 332 阅读 · 0 评论 -
Lombok插件讲解
Lombok是什么?lombok是java自动生成代码的插件。它能提高开发效率,减少自己编写繁琐的代码,让代码看起来更整洁简略,比如getter、setter、equals以及construct等方法。其也有val、var这种自动判断变量类型的变量定义方式(类似javascript中的let、const)。Lombok使用在开发ide中安装lombok插件,然后加上lombok的依赖包...原创 2018-07-08 19:25:34 · 3153 阅读 · 0 评论 -
Dozer BeanMapper 对象转换
dozer是什么?在开发过程中,常常会涉及到对象之间的转换,bean到dto到vo等等,dozer便是很好的一个对象转换的组件。它可以将一个对象递归拷贝到另外一个对象。既支持简单的对象映射,也支持复杂的对象映射。对象映射dozer支持两种映射方式,调用api的简单映射方式和使用xml的映射方式。api调用的方式约束我们定义的两个bean中的成员变量名要一样,方便自动映射,至于类型可...原创 2018-07-09 22:23:01 · 15892 阅读 · 0 评论 -
java正则表达式讲解
正则表达式基本简介正则表达式(Regular Expression)是一种文本模式,包含数字,字母和以及特殊字符(元字符)等。从语法上来看,它虽然繁琐难以理解,但是在描述和处理文本方面它显得格外强大。很多编程语言都支持正则,包括但不限于C++、C#、Golang、java、python、js等等,而不同的语言其正则的语法亦略微有些差异。正则表达式的的底层引擎实现有两种:DFA 自动机(Dete...原创 2018-12-15 21:06:27 · 436 阅读 · 0 评论