我正在使用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中的会话(过滤器/黑客?)
答案 0 :(得分:1)
最简单的方法是让一个本地线程,可能设置在过滤器或平凡定制的请求处理器中,通过静态方法访问。我觉得很脏。
答案 1 :(得分:0)
你不这样做。你将来会面临巨大的麻烦。相反,将值传递给调用链。