摘要:
1. 基于数据库的悲观锁调用: select * from account where name=”Erica” for update 这条sql 语句锁定了account 表中所有符合检索条件(name=”Erica”)的记录。 本次事务提交之前(事务提交时会释放事务过程中的锁),外界无法修改这些 阅读全文
摘要:
1.纵向分表 a。根据活跃度来分表,变化频度慢,查询次数多,称为冷数据,变化频路高的数据,称为活跃数据。 b。冷数据使用mylsam可以更好的查询数据,活跃数据使用Innodb,可以有更好的更新速度 c。对于一些特殊的活跃数据,也可以考虑使用redis,memcache之类的缓存,或者mongodb 阅读全文
摘要:
例如你有一个 学生表。 字段包含 学号, 班级, 姓名,性别, 出生年月日。 你创建一个 组合索引 ( 班级, 姓名) 那么 SELECT * FROM 学生表 WHERE 班级='2010级3班' AND 姓名='张三' 将使用索引. SELECT * FROM 学生表 WHERE 班级='201 阅读全文
摘要:
1.synchronized 用在方法和代码块的区别? a. 可以只对需要同步的使用 b.与wait(),notify()和notifyall()方法使用比较方便 2.wait() a。释放持有的对象锁,线程进入等待池,释放cpu,其他正在等待的线程可以获得锁,而sleep方法,线程会休眠一段时间, 阅读全文
摘要:
1.clone() a.是一个native方法,效率比非native高 b.是protected 修饰的,要用他必须继承object,默认都是继承object的 c.返回是一个object 对象,需要强制转换为需要的对象。 2.getClass() a.可以获得一个类的定义信息,根据这对象的方法可以 阅读全文