Struts 1:如何在DAO层中获取会话变量

时间:2012-05-16 20:33:24

标签: java struts-1 struts1

我正在使用struts 1(遗留项目的维护任务)。该应用程序在ActionClasses中分层,调用Manager类和Manager类实例化并使用DAO层类/

我必须对条件逻辑进行编码,其中基于会话变量,我希望DAO层在不同的DB2模式之间切换。

如何在DAO java类中读取会话? 一种显而易见的方法是重构manager / dao类构造函数以通过调用链

传递会话变量 在struts 2中,我们使用ActionContext.getContext().getSession();

有什么类似我可以在struts 1中做的吗?

---编辑所有纯粹主义者(包括我)-------------

我正在研究这个代码库,用于原型化更新的业务逻辑。这是一个继承的代码,在2003 - 2004年写道。在原型设计之后,这个代码将不会被使用,直接进入recycle-bin。

我知道DAO不需要访问HTTP会话,这就是我编写代码时所遵循的内容。

但我的问题是,有没有办法在struts 1框架中访问DAO中的会话(过滤器/黑客?)

2 个答案:

答案 0 :(得分:1)

最简单的方法是让一个本地线程,可能设置在过滤器或平凡定制的请求处理器中,通过静态方法访问。我觉得很脏。

答案 1 :(得分:0)

你不这样做。你将来会面临巨大的麻烦。相反,将值传递给调用链。