之前在问答频道回答的一道题。问答频道没有收录到博客的功能,自己整理收藏一下。 http://www.javaeye.com/problems/1737 使用volatile和不使用volatile的区别在于JVM内存主存和线程工作内存的同步之上。volatile保证变量在线程工作内存和主存之间一致。以下是示例程序,成员变量boolValue用volatile修饰会导致程序很快退出: package linyumin.test.thread; /** * * @author llade * */ public class VolatileObj ...
过去的一个关于数据库设计的讨论,觉得有些价值,自己收藏起来。 antonyup_2006 写道hehe 我们现在的项目也是反向生成表结构 做电子商务方面的 怎么说呢 两种方法都接触过 对于一些前期已经把表结构都设计好了的(有dba参与)的 可能用先设计数据库 然后在根据数据库来建模会比较好 特别是比较大的项目 对于数据库的设计在项目设计中会靠前做好 ,而对于项目开始的时候,库没设计好 而开发人员已经开始设计了 annotation的方式也不错 在设计的时候建立bean的时候把关系建好 反向生成数据结构 但这里有个问题 不知道各位是怎么解决的 就是我们现在出现个情况就是在开发的过程中 每个 ...
查看源代码: <tr id="ul7404_view" onmouseover="$(this).addClassName('mouse_over');" onmouseout="$(this).removeClassName('mouse_over');"> <td>QQ交谈</td> <td><a href="http://sighttp.qq.com/cgi-bin/check?sigkey=5a47860199865b77da1c2f9267cac60b35b1145046f55d0bf7c6522469864f6884d080ceafcc ...
小弟:“经理,redirect和forward有什么区别?”。 经理不说话,把桌上一打报告给了小弟,说:"今天晚上帮我处理测试小组的今天提交过来的报告,明天给他们。this is forward."。 然后在一张白纸条上写了:“301”。 经理:“你拿着这张纸条,去找资料室小张,要编号是这个的那本书,回去看看。this is redirect”。
问题一:假设Spring的license不被项目接受,不允许用,作为项目经理你该怎么办? 项目经理:恩是个大麻烦,DAO的父类BaseDAO是继承了HibernateDAOSupport的,要调整了,N个spring.xml上的配置要移植,最要命的是那些FactoryBean。哎Spring由馅饼变陷阱了。 问题二:假设明天Hibernate的License不是免费了 项目经理:什么??Hibernate4.0收费了,汗~~~幸好是用3.2。^_^ ,?!啊。听错了,License改了,都不能用了。 第二天早上。。。 “听说项目经理住院了” “啊,怎么搞的?昨天还好好的” “昨天他翻 ...
2008-06-14

JSP的书

买本JSP的书,搜索一下"200","404","303","505".啥也没找到。。。。。。要么这几页给人撕了,要么。。。什么嘛,这本书只有199页。。。
线程(引用自Java API doc):引用线程 是程序中的执行线程。Java 虚拟机允许应用程序并发地运行多个执行线程。 线程的一些特性: 所有的Java代码都是在某个线程中执行的,所以在任一行Java代码中使用Thread.currentThread()都可以得到当前运行线程。 JVM允许多个线程并发执行,虽然同一时刻只能有一个线程占用CPU,但每个线程占有的时间片非常短,所以人类的感官上多个线程是并发执行的。 当 JVM启动时,至少有一个用户线程运行,即执行某个类的main方法的线程。 线程在下列情况之一终止运行: Thread.run方法运行完毕(或者是Thread包含的R ...
需要多线程修改字符串序列用StringBuffer.单线程使用StringBuilder。 Java API doc:引用通常应该优先使用 StringBuilder 类,因为它支持所有相同的操作,但由于它不执行同步,所以速度更快
Collection在很多情况下需要转换为数组来处理(很多接口方法都使用array作为参数)。 Collection的toArray()方法返回的Object[],是不能被强制转换为子元素类型的 例如: List l=new ArrayList(); l.add("a"); l.add("b"); String[] strs=(String[])l.toArray();//throw ClassCastException 通常的做法是: String[] strs=new String[l.size()]; l.toArray(strs); toArray(T[] a)方法有个比较 ...
数组对象创建的时候类型是确定,而不管其存储的元素类型如何。 以下代码能测试出数据转换的问题: Object[] objs=new Object[10]; for (int i = 0; i < objs.length; i++) { objs[i]="a"; } String[] strs =(String[])objs; 会抛出ClassCastException。 Object[] objs=new String[10]; for (int i = 0; i < ...