如何用注释实现servletcontext获取web应用的初始化参数

如何用注释实现servletcontext获取web应用的初始化参数,第1张

因为现在很少用原始的 servlet api 开发,所以下面说的不对的地方请见谅。

servlet 30开始提供基于注解的开发,这样就可以不要 webxml 了,那么以前那种基于 webxml 的配置参数如何配置呢?

虽然我没用过,但我想,无非就两点:

通过专有的注解配置

按照常规的一般配置方式配置

像这种参数配置,应该更倾向于第2种,就是自己定义一个配置在你要用的地方获取到就是了

这种是可修改的,一般用于:应用配置,用户配置之类的。

而第1种一般用于开发配置,跟代码是强相关的。

当然,也有很多其他的方式可以让你省去自己编写读写配置的麻烦,这个就看你使用的框架环境有没有替你解决了。像常用的 spring 就有非常多的方式 *** 作配置文件了。

其实配置这东西不用想的太复杂,一般默认配置方式是减少编码,只要你知道代码里哪个地方是设置配置参数的,一切都可以由你自己决定。

ServletContext s = ServletActionContextgetServletContext();

首先要导入相应的Struts jar包

获取ServletActionContext,然后获取ServletContext

ServletRequest的getServletContext方法是Servlet30添加的,本地用的是Tomcat90,版本比较高,支持requestgetServletContext()这种写法,而线上是Tomcat60,只支持到Servlet25,需要先用request拿到>

在web项目中,如果需要在后台java代码中获取web上下文对象(以及session、request、response等对象),可以使用ActionContext类:

ActionContext context=ActionContextgetContext(); --得到Action执行的上下文

在获取了context后,还可以继续获取session等对象:

Map request=(Map)contextget("request");--得到>

所谓上下文,它是用来存储系统的一些初始化信息,例如在jboss中通过配置文件指定了数据源,那么在jboss启动的时候就把这个文件的相关信息上下文中,于是在我们使用这个数据源的时候,就需要先获得系统的上下文,然后再通过一定的方式将数据源取出来。至于在系统启动时,是如何将这些初始化信息加载到上下文中,而上下文在程序中具体又是以什么形式体现的,应该随着系统的不同而不同。

上下文即ServletContext,是一个全局的储存信息的空间,服务器启动,其就存在,服务器关闭,其才释放。所有用户共用一个ServletContext。所以,为了节省空间,提高效率,ServletContext中,要放必须的、重要的、所有用户需要共享的线程又是安全的一些信息。如,做一个购物类的网站,要从数据库中提取物品信息,如果用session保存这些物品信息,每个用户都访问一便数据库,效率就太低了;所以要用来Servlet上下文来保存,在服务器开始时,就访问数据库,将物品信息存入Servlet上下文中,这样,每个用户只用从上下文中读入物品信息就行了。

获取ServletContext的方法:

   >

ServletActionContext是类对象,直接访问,可以通过ServletActionContext获取:

<1>取得>

以上就是关于如何用注释实现servletcontext获取web应用的初始化参数全部的内容,包括:如何用注释实现servletcontext获取web应用的初始化参数、struts2 怎么获取 ServletContext、request获取不到getServletContext()方法,求告知。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9349500.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存