- 浏览: 21948 次
- 性别:
- 来自: 深圳
最新评论
文章列表
ThreadLocal最常用的场景:一个对象并非是线程安全的,但是你想让每个线程中访问的该对象是唯一的,不会和其他线程冲突,那么你就要用到ThreadLocal了。
举个简单的例子,比如SimpleDateFormat对象,不是线程安全的,假设该对象在多线程访问下会出问题,发生冲突,那么应该让每个线程只获取到唯一的该对象的实例,而且彼此线程不能访问对方的该实例。
package com.example;
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateFormat {
...
JCS是一个对象Cache,它可以把Java对象缓存起来,提高那些访问频率很高的Java对象的存取效率。
如果要对一个持久对象做缓冲,就是在hbm的class标签前面加一行:
<jcs-cache usage="read-only"/>
<jcs-cache usage="read-write"/>
这是一个只读缓冲,只对Read操作做缓冲,也可以用read-write,对update也进行缓冲,不过不能用在集群环境中。
例如:
<?xml version="1.0"?>
&l ...
- 2009-07-28 17:01
- 浏览 1138
- 评论(0)
http://oracle.chinaitlab.com/induction/787876.html
在Oracle数据库中,创建索引虽然比较简单。但是要合理的创建索引则比较困难了。笔者认为,在创建索引时要做到三个适当,即在适当的表上、适当的列上创建适当数量的索引。虽然这可以 ...
- 2009-07-27 13:53
- 浏览 1253
- 评论(0)
1. 事务处理和并发性
1.1. 基础知识和相关概念
1)全部的表类型都可以使用锁,但是只有InnoDB和BDB才有内置的事务功能。
2)使用begin开始事务,使用commit结束事务,中间可以使用rollback回滚事务。
3)在默认情 ...
- 2009-07-27 13:16
- 浏览 4664
- 评论(0)
InnoDB行锁是通过给索引上的索引项加锁来实现的,这一点MySQL与Oracle不同,后者是通过在数据块中对相应数据行加锁来实现的。InnoDB这种行锁实现特点意味着:只有通过索引条件检索数据,InnoDB才使用行级锁,否则,InnoDB将使用表锁!
在实际应用中,要特别注意InnoDB行锁的这一特性,不然的话,可能导致大量的锁冲突,从而影响并发性能。下面通过一些实际例子来加以说明。
(1)在不通过索引条件查询的时候,InnoDB确实使用的是表锁,而不是行锁。
在如表20-9所示的例子中,开始tab_no_index表没有索引:
mysql> create t ...
- 2009-07-27 13:10
- 浏览 4856
- 评论(0)
作者:丹臣 | 【转载时请务必以超链接形式标明文章原始出处和作者信息及本声明】
地址:http://rdc.taobao.com/blog/dba/html/110_innodb_row_lock_current_waits.html
MySQL innodb存储引擎使用与oracle相同的行锁机制,对如何查看系统中存在的行锁情况在下面的实验中,将可以看到。下面是测试过程:
session 1:更新记录
mysql> set autocommit=off;
Query OK, 0 rows affected (0.01 sec)
mysql> update t1 set emai ...
- 2009-07-27 12:07
- 浏览 2583
- 评论(0)
效率上,union all比union更好一点.因为union在执行的时候会把结果集进行排序并删除重复的记录,而union all则会把两个结果集原封不动地合并在一起.
- 2009-07-24 14:15
- 浏览 3940
- 评论(0)
序列化 的应用:
* 1. 永久性保存对象,保存对象的字节序列到本地文件中;
* 2. 通过序列化对象在网络中传递对象;
* 3. 通过序列化在进程间传递对象。
- 2009-07-23 11:46
- 浏览 1144
- 评论(0)
⑴浅复制(浅克隆)
被复制对象的所有变量都含有与原来的对象相同的值,而所有的对其他对象的引用仍然指向原来的对象。换言之,浅复制仅仅复制所考虑的对象,而不复制它所引用的对象。
⑵深复制(深克隆)
被复制对象的所有变量都含有与原来的对象相同的值,除去那些引用其他对象的变量。那些引用其他对象的变量将指向被复制过的新对象,而不再是原有的那些被引用的对象。换言之,深复制把要复制的对象所引用的对象都复制了一遍。
Java的clone()方法
⑴clone方法将对象复制了一份并返回给调用者。一般而言,clone()方法满足:
①对任何的对象x,都有x.clone() !=x//克隆对象与原对象不是同一个 ...
- 2009-07-23 11:35
- 浏览 899
- 评论(0)