2012-01-06 93 views
3

我正在对我的一些业务对象执行一些运行时字节码操作,并且以正确的顺序加载它们是非常重要的。目前我只是在我的Startup servlet中以正确的顺序在它们上调用Class.getSimpleName()。这一直工作得很好,但如果有更好的方法,我全都是耳朵。我可以在Tomcat上加载servlet类之前运行代码吗?

然而,现在,我需要一个方法在我的一个servlet过滤器中返回一个具体的业务对象类型。这导致类加载器首先加载该特定的业务对象类(无序),并且事件中断。

我想什么是能够运行我getSimpleName()我的任何servlet或过滤器加载之前破解。有没有什么地方可以放置类加载器之前运行的代码,甚至可以加载我的过滤器?

回答

1

tomcat类加载器以这种方式工作。

enter image description here

如果你想之前任何你加载任何类web应用程序的类加载,那么你可以把这些类的jar文件并将其部署到Tomcat公共库,这些类将被加载之前您的Web应用程序类由类加载器加载。

你可以查看apache tomcat类加载器如何工作的文档here

相关问题