- 浏览: 276459 次
- 性别:
- 来自: 深圳
最新评论
-
highphd:
海量用户如何处理啊?缓存服务器?大数据?
面向海量服务的设计原则和策略总结 -
AKka:
看了这篇博文更感觉到自己要学的东西更多了。同时感谢博主的辛勤写 ...
[Java性能剖析]JVM Management API -
sswh:
非常不错,感谢分享!!
[Java性能剖析]Sun JVM Attach API -
muyexi:
请问在Android开发中的什么场景下,会用到ObjectWe ...
[字节码系列]ObjectWeb ASM构建Method Monitor -
zoutuo:
前辈可否告知其中的“吞吐量”指的是什么?谢谢!
[Java性能剖析]Sun JVM内存管理和垃圾回收
文章列表
Java虚拟机的一个强大之处在于其提供垃圾自动回收,对开发人员掩盖了内存分配和回收的细节。本篇将探索JVM的内存分配和垃圾回收机制,以在内存分析实战中提供一些理论和实践参考。
1. 从理论开始
1.1.垃圾检测
任 ...
- 2008-07-13 22:42
- 浏览 8124
- 评论(2)
首先,真正的高级人才是不用找工作的,因为只有被工作找的份。
但是,难免有些高级人才厌倦了旧的工作环境,或者遇到天花板,没有了发展空间,或者遇到新老板上任
后排除异己来提拔自己的亲信等等,如果您真打算 ...
- 2008-06-27 09:12
- 浏览 2372
- 评论(3)
随着Java5的流行,Annotation渐有取代XML的配置作用之势,反对者有之,赞成者有之。与Annotation相对比,传统的XML的配置方式的缺点是,1)代码与配置的分开,必须维护两份相对应的代码(配置也可以认为是一种代码)2)相对比较烦琐;而Annotation令人诟病的地方是,对Annotation的修改必须重新编译代码,当然好处也是非常地明显,配置与代码本身集中在同一个地方,修改比较方便。
根据项目的需求,对Annotation与XML配置的使用原则是这样的:大部分情况下,配置是很少会变更的,特别是像服务类之间的相互依赖,因此对这部分可以使用Annotati ...
- 2008-06-19 22:06
- 浏览 1767
- 评论(0)
Ø
BeanPostProcessors
:该扩展点允许用户在
Bean
被实例化之后做一些修改,自动对对象进行
AOP
就是通过这种方式来实现的
Ø
BeanFactoryPostProcessors
:该扩展点允许用户在
Bean
被实例化之前对配置做修改,譬如
Spring
中提供的
PlaceHolder
的处理
看看目前系统中应用
BeanFactoryPostProcessors
做的一个扩展功能
一般配置:
public @Service() class UcdServiceImpl implements IUcdService
{
public v ...
- 2008-06-19 21:51
- 浏览 3990
- 评论(0)
1.
事务四要素(
ACID
)
Ø
Atomicity
(原子性):工作单元不可分;要么执行所有数据修改,要么不执行任何数据修改。
Ø
Consistency
(一致性):事务完成后,必须使所有数据处于一致的状态。
Ø
Isolation
(隔离性):无法在事务之外看到中间状态的数据。
Ø
Durability
(持久性):事务完成之后,其作用将永久保留在系统中。
2.
并发
1)
并发的基本问题
Ø
丢失更新
Ø
- 2008-06-16 22:41
- 浏览 1805
- 评论(0)
1.spring设计艺术
1)spring源码重读
2)重读 Rod Johnson<<Export
One-on-one J2EE Design&Development>>和<<Export
One-one-one J2EE Deveopment Without EJB>>
2.持久层-业务层设计
1)hibernate源码重读
2)了解JPA&EJB3
3)重读 Martin Flower <<企业应用架构模式>>
3.架构和设计 ...
- 2008-06-16 22:40
- 浏览 1619
- 评论(1)
一、效果
java 代码
public class HqlCompilerImplTest extends TestCase
{
private IHqlCompiler compiler = new HqlCompilerImpl();
public void test1()
{
Hql hql = compiler.compile("from User u where u.username = :username and u.age = :age ord ...
前一阵子在研究使用数据库来配置表现层的信息的技术可行性,由于之前已经使用FreeMarker封装了很多macro,很显然,
这些投资不能浪费,方案的选择上最终我确定在根据数据库的配置来动态生成Template,然后由FreeMarker引擎加载,那么
FreeMarker是如何加载Template的呢,是否能够支持非文件的Template的加载呢?
通过源码分析,FreeMarker对Template的加载过程如下
Configuration(getTemplate)-->TemplateCache(getTemplate)-->Templ ...
FreeMarker3.8中引入了一个非常实用的!功能,在FreeMarker3.8-中,如果要显示类似${user.phone.areacode}的值,需要层层判断是否为NULL,譬如如上的表达式一般在FTL中需要写成<#if user?exists><#if user.phone?exists><#if user.phone.areacode?exists>${user.phone.areacode}},不胜烦琐,而在FreeMarker3.8中可以使用${(user.phone.areacode)!}达到同样的目的。那么如果使用的是Free ...