JFinal中在什么地方设置application全局变量

cyper 发布于 2015/01/26 20:08
阅读 2K+
收藏 2

JFinal +Tomcat + JSP, 我想在系统启动后从某个参数表中读取站点的配置信息然后放在application范围中,这样只用读一次表,在任何jsp中可以直接使用系统参数。应该怎么做?

类似于这段代码getServletContext().setAttr("xxx",Db.findById("config",1)),放在哪里比较好。

@jfinal

加载中
1
JFinal
JFinal
在全局范围内都可以通过 JFinal.me().getServletContext() 来得到 ServletContext 对象,在 afterJFinalStart() 方法中来调用比较好
1
cyper
cyper

引用来自“JFinal”的评论

在全局范围内都可以通过 JFinal.me().getServletContext() 来得到 ServletContext 对象,在 afterJFinalStart() 方法中来调用比较好
多谢,完美解决。
堂客
追问下,jfinal页面上指定applicationScope范围拿不到值,如果不加就可以拿到值。
0
cyper
cyper

问题解决,加了一个load on startup Servlet在web.xml里,看起来servlet是在JFinal filter初始化后启动的。可以直接使用Db类。

我原先以为在JFInal的Config类中的afterJFinalStart中可以做, 无奈得不到Servlet上下文.


返回顶部
顶部