Java
iteye_667
这个作者很懒,什么都没留下…
展开
-
通过调试确定JVM是否从错误的位置装入了类
在实际开发中,我们经常会遇到由于ClassNotFoundException、NoClassDefFoundError、NoSuchMethodException等异常而导致应用等无法正常启动。一般都是由于包冲突等导致的。 这种情况下,我们可以用 -verbose 命令行选项打开JVM 的详细输出。当某些事件发生的时候(例如,类装入时),详细输出会在控制台上显示信息。要想得到额外的类...2011-05-26 21:08:55 · 85 阅读 · 0 评论 -
Spring之LoadTimeWeaver——一个需求引发的思考
最近有个需求——记录应用中某些接口被调用的轨迹,说白了,记录下入参、出参等即可。 我选用ApsectJ解决这个问题,前期讨论说在接口层埋点,但这样有个问题,代码侵入比较严重,需要修改每个需要关注的接口实现类。经过一番讨论,决定使用AOP拦截所有这样的接口。 后面又有个新的要求——沙箱环境拦截,生产环境不予拦截。 这样就有个眼前的问题需要我们解决,就是同一份应用包如何区分沙箱...2011-05-27 20:58:45 · 137 阅读 · 0 评论 -
一个XML解析失败排查过程的分享
今天遇到一个比较诡异的问题, 我们的应用在JBoss下可以正常部署, 到Jetty环境下则部署失败,并提示如下信息:2011-06-14 18:14:34.812:WARN::Failed startup of context runjettyrun.HSFJettyWebAppContext@1f21c50{/,src/main/webapp}org.springframe...2011-06-14 19:52:36 · 534 阅读 · 0 评论 -
也谈Spring Bean的生命周期
开篇先用一张老图描述下Spring中Bean容器的生命周期。 插叙一下,记得某个博文中提到:“Spring的Bean容器只管理非单例Bean的生命周期,单例Bean的生命周期不在管理范围内”,其实我认为这句话恰好说反了。首先明确一点,并非Spring容器中所有的Bean都有生命周期行为,只有接受容器管理生命周期的Bean才具有生命周期行为:而单例(Singleton)Bean接受...2011-05-17 11:07:25 · 85 阅读 · 0 评论 -
源码解析:init-method、@PostConstruct、afterPropertiesSet孰先孰后
Spring 容器中的 Bean 是有生命周期的,Spring 允许在 Bean 在初始化完成后以及Bean 销毁前执行特定的操作,常用的设定方式有以下三种:通过实现InitializingBean/DisposableBean 接口来定制初始化之后/销毁之前的操作方法;通过<bean> 元素的 init-method/destroy-metho...2011-05-17 14:33:56 · 1002 阅读 · 0 评论