一个关于servlet中参数配置的小问题??

yzk775love 2007-11-26 09:52:51
求助:各位大侠ServletConfig 与 ServletContext的区别?详细点!!最好举个例子;好吧!^^^
在web.xml中有<init-param></init-param> 与<conttext-param></context-param>的用法!!!!!
...全文
75 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
阿杜S考特 2007-11-28
  • 打赏
  • 举报
回复
以下是一个web.xml文件的简单部署
-------------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems,Inc.//
DTD Web Application 2.3//EN"
"http://java.sun.com/j2ee/dtds/web-app_2_3.dtd">

<web-app>

<context-param>
<param-name>author</para-name>
<param-value>john@abc.com</param-value>
</context-param>

<servlet>
<servlet-name>test</servlet-name>
<servlet-class>com.abc.TestServlet</servlet-class>
<init-param>
<param-name>greeting</para-name>
<param-value>Good Morning</param-value>
</init-param>
</servlet>

<servlet-mapping>
<servlet-name>test</servlet-name>
<url-pattern>/test/*</url-pattern>
</servlet-mapping>

</web-app>
-------------------------------------------------------
以上<context-param></context-param>中的参数是整个web应用范围内的,所以在应用范围内的任何servlet和JSP都能访问,而<init-param></init-param>中的参数是某个servlet的初始化参数,只有这个servlet才有;具体反问方法如下:
1.访问整个web应用范围的初始化参数
ServletContext ctx = getServletContext();
String contextValue = request.getInitParameter("author"); //值john@abc.com会传给contextValue
2.访问servlet初始化参数
ServletConfig cfg = getServletConfig();
String value = cfg.getInitParameter("greeting"); //值Good Morning会传给value

注意获取这两中参数的方法都是getInitParameter()方法,但一个是用ServletContext对象调用的,另一个是用ServletConfig对象调用的,不能混淆了!!!

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧