我正在使用 struts 1(遗留项目的维护任务)。该应用程序在调用 Manager 类的 ActionClasses 和实例化并使用 DAO 层类的 Manager 类中分层/
我必须编写条件逻辑代码,其中基于 session 变量,我希望 DAO 层在不同的 DB2 模式之间切换。
如何读取 DAO java 类中的 session ? 一种明显的方法是重构管理器/dao 类构造函数以通过调用链传递 session 变量
在struts 2中,我们使用ActionContext.getContext().getSession();
我可以在 struts 1 中做类似的事情吗?
---编辑给所有纯粹主义者(包括我)----------
我正在研究这个代码库,用于对更新的业务逻辑进行原型(prototype)设计。这是一个继承的代码,早在 2003-2004 年就写好了。原型(prototype)完成后,这段代码根本不会被使用,直接进入回收站。
我知道 DAO 不需要访问 HTTP session ,这就是我编写代码时遵循的。
但我的问题是,有没有办法在struts 1框架中访问DAO中的 session (过滤器/黑客?)
最佳答案
最简单的是有一个本地线程,可能设置在过滤器或简单定制的请求处理器中,通过静态方法访问。我感觉很脏。
关于java - 支柱 1 : how do i get session variable in DAO layer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10626273/