自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

X-Spirit的专栏

Always Be Ahead Of Time

  • 博客(19)
  • 资源 (2)
  • 收藏
  • 关注

Java 多线程同步问题的探究(五、你有我有全都有—— ThreadLocal如何解决并发安全性?)...

前面我们介绍了Java当中多个线程抢占一个共享资源的问题。但不论是同步还是重入锁,都不能实实在在的解决资源紧缺的情况,这些方案只是靠制定规则来约束线程的行为,让它们不再拼命的争抢,而不是真正从实质上解决他们对资源的需求。在JDK 1.2当中,引入了java.lang.ThreadLocal。它为我们提供了一种全新的思路来解决线程并发的问题。但是他的名字难免让我们望文生义:本地线程?什么是本...

2010-04-08 13:38:00 410

Java 多线程同步问题的探究(四、协作,互斥下的协作——Java多线程协作(wait、notify、notifyAll))...

Java监视器支持两种线程:互斥和协作。前面我们介绍了采用对象锁和重入锁来实现的互斥。这一篇中,我们来看一看线程的协作。举个例子:有一家汉堡店举办吃汉堡比赛,决赛时有3个顾客来吃,3个厨师来做,一个服务员负责协调汉堡的数量。为了避免浪费,制作好的汉堡被放进一个能装有10个汉堡的长条状容器中,按照先进先出的原则取汉堡。如果容器被装满,则厨师停止做汉堡,如果顾客发现容器内的汉堡吃完了,就可以拍...

2010-03-25 14:48:00 157

[转]关于hibernate的缓存使用

原文出自 http://blog.csdn.net/woshichenxu/archive/2006/01/22/586361.aspx1.     关于hibernate缓存的问题:1.1.1.         基本的缓存原理Hibernate缓存分为二级,第一级存放于session中称为一级缓存,默认带有且不能卸载。第二级是由sessionFactory控制的进程级缓存...

2010-03-23 11:21:00 149

NetBeans中配置OperaMask+Spring+JPA教程

创建项目:打开NetBeans 6.5.1,选择文件—》新建项目,选择Java Web,然后在项目列表中选择 Web 应用程序,下一步 选择使用专用文件夹存储库,指定库文件夹的位置,通常是默认的.\lib,即项目文件夹下的lib文件夹,下一步 选择Web应用服务器。这里选择Tomcat 6.0.18 ,Java EE版本选择 Java EE 5,下一步 ...

2010-03-17 13:33:00 247

Oracle 11g口令过期

今天发现服务器上的Oracle11g突然登录不上去了,提示ORA-28002错误,说是口令过期。不当DBA还真不知道Oracle有这神秘功能。上网上一查,有类似遭遇的朋友在论坛上求助,人家让他找DBA。汗。。。好在有的DBA乐于分享,终于找到了解决方案:1. 用DBA账户登录SQL PLUS。我用的是sysman。2. 系统会提示口令失效,但是会马上让你重置新密码。3. 重...

2010-03-17 10:57:00 152

Java 多线程同步问题的探究(三、Lock来了,大家都让开【2. Fair or Unfair? It is a question...】)...

让我们继续前面有关ReentrantLock的话题。首先,ReentrantLock有一个带布尔型参数的构造函数,在JDK官方文档中对它是这样描述的:“此类的构造方法接受一个可选的公平 参数。当设置为 true 时,在多个线程的争用下,这些锁倾向于将访问权授予等待时间最长的线程。否则此锁将无法保证任何特定访问顺序。与采用默认设置(使用不公平锁)相比,使用公平锁的程序在许多线程访问时表现为很...

2010-03-16 18:02:00 140

Java 多线程同步问题的探究(三、Lock来了,大家都让开【1. 认识重入锁】)

在上一节中,我们已经了解了Java多线程编程中常用的关键字synchronized,以及与之相关的对象锁机制。这一节中,让我们一起来认识JDK 5中新引入的并发框架中的锁机制。我想很多购买了《Java程序员面试宝典》之类图书的朋友一定对下面这个面试题感到非常熟悉:问:请对比synchronized与java.util.concurrent.locks.Lock的异同...

2010-03-15 22:51:00 117

Oracle not in查不到应有的结果(NULL、IN、EXISTS详解)

首先我要感谢aa和Liu Xing帮我发现了我日志中的错误。之前比较粗心,把3条SQL语句写成一样的了,对于给读者造成的麻烦,我深表抱歉。今天我把原文做了修订,为了对得起读者对我的关注,我重新深入的研究了这个问题,在后面,我会把来龙去脉写清楚。问题:语句1:Select * from  table1 A whe...

2010-03-15 11:08:22 154

Java 多线程同步问题的探究(一、线程的先来后到)

众所周知,在Java多线程编程中,一个非常重要的方面就是线程的同步问题。关于线程的同步,一般有以下解决方法:1. 在需要同步的方法的方法签名中加入synchronized关键字。转载注明出处:http://x-spirit.iteye.com/、http://www.blogjava.net/zhangwei217245/2. 使用synchronized块对需要进行同步的...

2010-03-15 10:42:19 155

Java 多线程同步问题的探究(二、给我一把锁,我能创造一个规矩)

在上一篇中,我们讲到了多线程是如何处理共享资源的,以及保证他们对资源进行互斥访问所依赖的重要机制:对象锁。本篇中,我们来看一看传统的同步实现方式以及这背后的原理。很多人都知道,在Java多线程编程中,有一个重要的关键字,synchronized。但是很多人看到这个东西会感到困惑:“都说同步机制是通过对象锁来实现的,但是这么一个关键字,我也看不出来Java程序锁住了哪个对象阿?“没错...

2010-03-15 10:31:14 114

Oracle 导入DMP文件命令。导出基本上就是换成EXP。

想从备份的dmp文件中导入某些表的时候,可以用如下imp命令,格式:imp username/password@本地net服务名 file=xxx.dmp fromuser=xx touser=xx tables=(tablename)username:登陆数据库的用户名password:登陆数据库的密码本地net服务名:连接服务器的本地net服务名file:你的dmp文件的路...

2010-01-25 10:19:00 147

[导入]有关Emacs的一些摘抄

一、emacs编辑器简介     emacs编辑器是由C语言和LISP语言编写的。LISP(链表处理语言)是由约翰·麦卡锡在1960年左右创造的一种基于λ演算的函数式编程语言。 我们可以使用LISP来扩展emacs,从而为emacs添加更多的命令。(补:emacs -nw:以命令行的方式来运行emacs,而不启动GUI界面)* 自动保存功能      如果你已经修改了一个文件,但是还...

2009-11-12 10:24:00 115

FreeMarker 应用笔记(1)

前不久项目中遇到一个问题:要求生成静态页面。于是想到了velocity和FreeMarker。。。。这是两个JAVA模板引擎,作为当前流行的几大MVC框架的有益补充,受到了开源框架Spring的支持。下面总结一下初步FreeMarker应用。1。要和Spring结合,首先要在Spring的Context中注册org.springframework.web.servl...

2009-09-28 15:35:35 113

原创 如何解决WINE环境中文显示问题

Wine 为我们提供了一个可以在Linux上使用windows程序的途径。但是中文显示却总是出现方块或者乱码。怎么解决呢?  Google 搜索或到 windows xp 的 Fonts 目录下,把 simsun.ttc (即宋体)复制到 ~/.wine/drive_c/windows/fonts下。推荐使用msyh.ttf(微软雅黑)。将这个字体复制到你的 ~/.wine/drive

2009-07-20 11:22:00 2816

原创 用WineTricks令你的Wine更完整

Linux下最有名的Windows环境模拟器就是WINE了。它提供了一个可以模拟WINDOWS环境的基本平台,在这上面你几乎可以运行任何你想运行的windows程序。 什么?你不相信?不要告诉我你的程序运行时总是提示缺少mfc42.dll。。。 默认的WINE环境缺少很多WIN平台的库,而且最可恨的是,system32目录下竟然没有regedit程序。 下面我来介绍一下,如

2009-07-20 10:57:00 16814 2

原创 Linux下Java Web应用程序需要注意的几点问题

前不久,用于公司的机器实在是很慢,我一气之下把Windows格式化掉了,装上了Ubuntu这个操作系统。 但是发现Java程序出了点问题: 1。MySQL的默认字符集设定:重建数据表之前,MYSQL的数据库设定:首先是要修改MYSQL数据库的默认字符集设定。在重建数据库之前,应当把默认字符集设定为UTF8。操作办法:停止MYSQL服务器:  sudo /et

2009-07-06 16:07:00 1127 1

原创 Ubuntu上安装Sun Pinyin输入法

按照原文提示进行Sun拼音编译安装:1. 去http://mentors.debian.net/debian/pool/main/s/sunpinyin/ 把三个包包下下来。2. $ dpkg-source -x sunpinyin_1.0~hg20090201-1.dsc3. $ cd sunpinyin-1.0~hg20090201/4. $ sudo dpkg-b

2009-07-06 16:01:00 2447

原创 Quartz调度框架应用总结

前一段时间项目需要做一个定时发送消息的功能,该功能依附于Web应用上,即当Web应用启动时,该应用就开始作用。起先决定使用java.util.Timer和java.util.TimerTask来实现,但是研究了一下以后发现Java Timer的功能比较弱,而且其线程的范围不受Web应用的约束。后来发现了Quartz这个开源的调度框架,非常有趣。 首先我们要得到Quartz的最新发布版。目前

2008-06-16 18:05:00 1487

原创 最简单的JavaDB(Derby)嵌入式使用教程

Derby作为一个轻量级的数据库解决方案,备受偶的关注。最新的JDK和GlassFish都携带了这个方便易用的嵌入式数据库系统。这是一个纯Java编写的数据库系统,最大的优点在于它的配置方便,使用简单。并且它支持许多高级数据库特性,例如存储过程、触发器等等。有兴趣的朋友不妨可以在Baidu上搜索一下,或者到Apache基金会的官方站点去看看相关介绍。废话不多说了,赶紧记录下来今天下午配置D

2007-12-20 19:41:00 6889

DNS服务器模拟

本程序采用NetBeans开发,数据库为开源项目Derby(JavaDB),模拟多个DNS协同工作的原理。

2007-11-12

【Netbeans 5 project】音像管理系统

用NetBeans写的一个音像管理系统,数据库为MS-SQL2000

2007-11-12

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除