![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA基础
清秋晓月
这个作者很懒,什么都没留下…
展开
-
dispatchaction与action的区别
在上一篇文章张讲到和HHS整合的例子,在login.jsp的from中"/login.do" method="post" focus="userName"> 的 "login.do”改成"login.do?method=loginCheck” 对应的action方法中,将execute方法名改成loginCheck。 修改之后,怎么也不走loginCheck这个方法,很是纳闷原创 2009-06-09 21:34:00 · 7910 阅读 · 2 评论 -
java concurrent系列3---ReentrantLock
ReentrantLock 一个可重入的互斥锁,它具有与使用 synchronized 方法和语句所访问的隐式监视器锁定相同的一些基本行为和语义,但功能更强大。 ReentrantLock 将由最近成功获得锁定,并且还没有释放该锁定的线程所拥有。当锁定没有被另一个线程所拥有时,调用 lock 的线程将成功获取该锁定并返回。如果当前线程已经拥有该锁定,此方法将立即返回。可以使用 isHeldByC转载 2011-12-30 16:40:27 · 688 阅读 · 0 评论 -
java对象的初始化顺序
public class Initializer { static void initialize(final Upper anUpper) { if (anUpper instanceof Lower) { Lower lower = (Lower) anUpper; lower.lowerString = "lowerInited"; } anUpper.转载 2011-12-30 15:52:38 · 378 阅读 · 0 评论 -
java concurrent系列2---BlockingQueue
BlockingQueue 阻塞队列,支持两个附加操作的 Queue,这两个操作是:检索元素时等待队列变为非空,以及存储元素时等待空间变得可用。 如果BlockingQueue是空的,从BlockingQueue取东西的操作将会被阻断进入等待状态直到BlocingkQueue进了新货才会被唤醒。如果BlockingQueue是满的任何试图往里存东西的操作也会被阻断进入等待状态, 直到Bloc翻译 2011-12-30 16:23:05 · 554 阅读 · 0 评论 -
java concurrent系列1---Java并发处理
1、 简介 了解java并发之前先了解java内存模型,java内存有主内存和工作内存,比有个对象Person,有实例变量name,那么Person的实例中name属性就是在主内存中,如果多个线程同时操作Person,那么每个线程会有Person属性name的副本放在每个线程的工作内存中,每个工作内存修改后会同步到主内存中,但是这里就有问题:一致性问题和可见性问题,导致数据丢失翻译 2011-12-30 16:11:40 · 579 阅读 · 0 评论