下面哪个web.xml片段正确地web.xml配置servlett Context的初始化参数?

一个web项目web.xml的配置中&context-param&配置是起什么作用的_百度知道
一个web项目web.xml的配置中&context-param&配置是起什么作用的
提问者采纳
; }&#47:&&#47.}另外, IOException {
String paramValue1 =init-param&init-param&ParamName1&quot,配置在servlet中的init-param的用法为在任一个 servlet 或 filter 中使用.getServletContext();/
&/param-name&);/description&gt.controller.TestServlet&);or @Override protected void doGet(HttpServletRequest req.; &InitParam1&
;getServletConfig(), HttpServletResponse resp)
throws ServletEservlet-class&
&servlet& }/
&This is an init parameter example&param-value&gt.getInitParameter(&description&
&or @Override protected void doGet(HttpServletRequest req.getInitParameter();&#47.;init param value&param-value&ParamName1&).getServletContext().getInitParameter();/
&lt, IOException {
String initParam1 = getServletConfig();servlet-class&gt. }比较一下;);A Servlet&lt.getInitParameter(&quot. } .getInitParameter(&quot.;servlet-name&
& @Override public void init(ServletConfig config) throws ServletException {
String initParam1
= config.;InitParam1&/servlet&InitParam1&servlet-name&
, HttpServletResponse resp)
throws ServletE&#47.getInitParameter(&param-name&gt: @Override public void init(ServletConfig config) throws ServletException {
String paramValue1 = config:getServletContext()
提问者评价
非常非常感谢
其他类似问题
param的相关知识
按默认排序
其他1条回答
传递 参数!
参考资料:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁编程开发子分类JavaWeb学习之Servlet(四)----ServletConfig获取配置信息、ServletContext的应用 - 推酷
JavaWeb学习之Servlet(四)----ServletConfig获取配置信息、ServletContext的应用
欢迎转载,但请保留文章原始出处→_→
文章来源:
支付宝账号:
一、ServletConfig:代表当前Servlet在web.xml中的配置信息(
String getServletName()& -- 获取当前Servlet在web.xml中配置的名字
String getInitParameter(String name) -- 获取当前Servlet指定名称的初始化参数的值
Enumeration getInitParameterNames()& -- 获取当前Servlet所有初始化参数的名字组成的枚举
ServletContext getServletContext()& -- 获取代表当前web应用的ServletContext对象
在Servlet的配置文件中,可以使用一个或多个&init-param&标签为servlet配置一些初始化参数。
当servlet配置了初始化参数后,web容器在创建servlet实例对象时,会自动将这些初始化参数封装到ServletConfig对象中,并 在调用servlet的init方法时,将ServletConfig对象传递给servlet 。进而,程序员通过ServletConfig对象就可以得到当前servlet的初始化参数信息。
这样做的好处是:如果将数据库信息、编码方式等配置信息放在web.xml中,如果以后数据库的用户名、密码改变了,则
直接很方便地修改web.xml就行了,避免了直接修改源代码的麻烦
代码举例:
新建一个名为ServletConfigTest的Servlet,然后在web.xml中的&servlet&标签下,通过&init-param&标签为这个servlet配置两个初始化参数:
&servlet-name&ServletConfigTest&/servlet-name&
&servlet-class&com.vae.servlet.ServletConfigTest&/servlet-class&
&init-param&
&param-name&name1&/param-name&
&param-value&value1&/param-value&
&/init-param&
&init-param&
&param-name&encode&/param-name&
&param-value&utf-8&/param-value&
&/init-param&
&/servlet&
然后在代码中获取上面的两个参数。代码实现如下:
1 package com.vae.
3 import java.io.IOE
4 import java.util.E
6 import javax.servlet.ServletC
7 import javax.servlet.ServletE
8 import javax.servlet.http.HttpS
9 import javax.servlet.http.HttpServletR
10 import javax.servlet.http.HttpServletR
12 public class ServletConfigTest extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
ServletConfig config = this.getServletConfig();
//拿到init方法中的ServletConfig对象
// --获取当前Servlet 在web.xml中配置的名称(用的不多)
String sName = config.getServletName();
System.out.println(&当前Servlet 在web.xml中配置的名称:&+sName);
// --获取当前Servlet中配置的初始化参数(只能获取一个)经常用到
// String value = config.getInitParameter(&name2&);
// System.out.println(value);
// --获取当前Servlet中配置的初始化参数(全部获取)经常用到
Enumeration enumration = config.getInitParameterNames();
while(enumration.hasMoreElements()){
String name = (String) enumration.nextElement();
String value = config.getInitParameter(name);
System.out.println(name+&:&+value);
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
核心代码是第17行,通过this.getServletConfig()方法拿到init方法中的ServletConfig对象,然后获取配置信息。
运行程序,后台打印日志如下:
二、ServletContext:代表当前web应用(
非常重要 )
WEB容器在启动时,它会为
每个 WEB应用
程序都创建一个对应的ServletContext对象,
它代表当前web应用 。
ServletConfig对象中维护了ServletContext对象的引用,开发人员在编写servlet时,可以通过 ServletConfig.getServletContext 方法获得ServletContext对象。
由于一个WEB应用中的所有Servlet共享同一个ServletContext对象,因此Servlet对象之间可以通过ServletContext对象来实现通讯。ServletContext对象通常也被称之为
context域对象
ServletContext的应用:
1.做为域对象可以在整个web应用范围内 共享数据 。
这里涉及到一些概念:
域对象:在一个可以被看见的范围内共享数据用到对象
作用范围:整个web应用范围内共享数据
生命周期:当服务器启动web应用加载后创建出ServletContext对象后,域产生。当web应用被移除出容器或服务器关闭,随着web应用的销毁域销毁。
代码举例:
ServletTest01.java:
1 package com.vae.
3 import java.io.IOE
5 import javax.servlet.ServletC
6 import javax.servlet.ServletE
7 import javax.servlet.http.HttpS
8 import javax.servlet.http.HttpServletR
9 import javax.servlet.http.HttpServletR
11 public class ServletTest01 extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
ServletContext context = this.getServletContext();
context.setAttribute(&name&, &smyhvae&);
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
ServletTest02.java:
1 package com.vae.
3 import java.io.IOE
5 import javax.servlet.ServletC
6 import javax.servlet.ServletE
7 import javax.servlet.http.HttpS
8 import javax.servlet.http.HttpServletR
9 import javax.servlet.http.HttpServletR
11 public class ServletTest02 extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
ServletContext context = this.getServletContext();
String myName = (String) context.getAttribute(&name&);
System.out.println(myName);
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
我们在ServletTest01中给Context加一个参数name(16行),然后就能在ServletTest02中得到这个参数了(16行)。
context中常用的方法有:
void setAttribute(String,Object);
Object getAttribute(String);
void removeAttribute(String);
2、获取WEB应用的初始化参数
我们在第一段中,通过&init-param&标签为某一个单独的servlet加配置信息,这种配置信息在其他的Servlet中是无法访问到的。可如果我们 使用&context-param&标签(与Servlet标签并列)为整个Web应用配置属性 的话,那所有的Servlet就都能访问里面的参数了。例如:可以把数据库的配置信息放在这里。
这里涉及到一些概念不要混淆:
--- 浏览器发送过来的请求中的参数信息
初始化参数
initparameter
--- 在web.xml中为Servlet或ServletContext配置的初始化时带有的基本参数
--- 四大作用域中存取的键值对
代码举例:
在web.xml中为整个web应用添加初始化参数:用户名、密码。代码位置如下:
然后接下来我们在代码中来获取这些参数。代码如下:
ServletTest03.java:
1 package com.vae.
3 import java.io.IOE
4 import java.util.E
6 import javax.servlet.ServletC
7 import javax.servlet.ServletE
8 import javax.servlet.http.HttpS
9 import javax.servlet.http.HttpServletR
10 import javax.servlet.http.HttpServletR
12 public class ServletTest03 extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
ServletContext context = this.getServletContext(); // 得到上下文对象
// 获取单个的Context里面的初始化参数
String value1 = context.getInitParameter(&username&);
String value2 = context.getInitParameter(&password&);
System.out.println(value1 + &;& + value2);
System.out.println();
// 一次性获取Context里所有的初始化参数
Enumeration enumeration = context.getInitParameterNames();
while (enumeration.hasMoreElements()) {
String name = (String) enumeration.nextElement();
String value = context.getInitParameter(name);
System.out.println(name + &;& + value);
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
上面的代码可以看到,我们可以通过context.getInitParameter()方法获得初始化参数。
运行效果如下:
3、实现Servlet的转发
这里涉及到一些概念要区分:
请求重定向:302+Location( 两次请求两次响应 )
请求转发:服务器内不进行资源流转 ( 一次请求一次响应 ,来实现资源流转)
注:上方括号中的内容是二者的区别。打个比方,假如你找我借钱,如果是请求重定向的话,那你再去找别人借;如果是请求转发的话,那我去找别人借,然后再借给你。
代码举例:
ServletTest04.java实现请求转发:
1 package com.vae.
3 import java.io.IOE
5 import javax.servlet.RequestD
6 import javax.servlet.ServletE
7 import javax.servlet.http.HttpS
8 import javax.servlet.http.HttpServletR
9 import javax.servlet.http.HttpServletR
* ServletContext实现请求转发
14 public class ServletTest04 extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
RequestDispatcher dispatcher = this.getServletContext()
.getRequestDispatcher(&/servlet/ServletTest05&);// 参数中写虚拟路径
dispatcher.forward(request, response); // 执行完这一行代码后,将会跳到ServletTest05中去执行。
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
通过19行代码拿到转发器dispatcher,这个转发器指向ServletTest05(参数中写虚拟路径),然后一旦执行完20行代码,就会跳到ServletTest05中去执行。
那么ServletTest05.java的代码如下:
1 package com.vae.
3 import java.io.IOE
5 import javax.servlet.ServletE
6 import javax.servlet.http.HttpS
7 import javax.servlet.http.HttpServletR
8 import javax.servlet.http.HttpServletR
* ServletContext实现请求转发
13 public class ServletTest05 extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.getWriter().write(&10000yuan&);
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
在浏览器中输入url,效果如下:
4.加载资源文件:
这里有一个问题需要注意:
在Servlet中读取资源文件时:
如果写相对路径或绝对路径,这个路径指的是【
当前程序启动的目录下 】
里面的路径。所以,在web环境下,就是tomcat启动的目录即 tomcat/bin ,所以找不到资源。效果如下:
如果写硬盘的路径D:\\apache-tomcat-7.0.57\\webapps\\WebTest\\config.properties,可以找到资源,但是只要一换发布环境,这个硬盘路径很可能是错误的,同样不行。
为了解决这样的问题,ServletContext提供了
getRealPath
方法,在这个方法中传入一个路径,这个方法的底层会在
传入的路径的前面拼接当前web应用的硬盘路径
,从而得到当前资源的硬盘路径,这种方式即使换了发布环境,方法的底层也能得到正确的web应用的路径从而永远都是正确的资源的路径。代码如下:
this.getServletContext().getRealPath(&config.properties&)
代码举例:
先在WebRoot的根目录下新建一个文件为config.properties,里面的参数如下:
config.properties:
username=smyhvae
password=007
紧接着,新建一个Servlet,代码如下:
ServletTest06.java:
1 package com.vae.
3 import java.io.FileR
4 import java.io.IOE
5 import java.util.P
7 import javax.servlet.ServletE
8 import javax.servlet.http.HttpS
9 import javax.servlet.http.HttpServletR
10 import javax.servlet.http.HttpServletR
12 public class ServletTest06 extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
Properties prop = new Properties(); // 注意导的包是import java.util.P
prop.load(new FileReader(this.getServletContext().getRealPath(&config.properties&)));
System.out.println(prop.getProperty(&username&));
System.out.println(prop.getProperty(&password&));
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
核心代码是第17行中的
this.getServletContext().getRealPath(&config.properties&)
运行效果如下:
在很多情况下,Servlet中并不会处理大量的逻辑,而是直接调用其他的java代码,那就涉及到了下面的这个问题:
如果在非Servlet环境下要读取资源文件时可以采用
加载文件的方式读取资源:MyService.class.getClassLoader().getResource(& ../../../config.properties &).getPath()
那现在getResource()里面的路径该怎么写呢?只要记住一句话: 类加载器从哪里加载类,就从哪里加载资源 。这句话有点抽象,我们还是通过代码来看吧:
新建一个Servlet类:
ServletTest07.java:
1 package com.vae.
3 import java.io.IOE
5 import javax.servlet.ServletE
6 import javax.servlet.http.HttpS
7 import javax.servlet.http.HttpServletR
8 import javax.servlet.http.HttpServletR
10 import com.vae.service.MyS
12 public class ServletTest07 extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
MyService service = new MyService();
service.method();
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
在16、17行代码中,调用了MyService类中的方法。下面来定义MyService类,在里面加载资源文件。
MyService.java:
1 package com.vae.
3 import java.io.FileNotFoundE
4 import java.io.FileR
5 import java.io.IOE
6 import java.util.P
8 public class MyService {
public void method() throws FileNotFoundException, IOException{
//在没有ServletContext的环境下,如果想要读取资源,可以使用类加载器以加载类的方式加载资源,
//这里要注意,类加载器从哪个目录加载类,就从哪个目录加载资源,
//所以此处的路径一定要给一个相对于类加载目录的路径
Properties prop = new Properties();
prop.load(new FileReader(MyService.class.getClassLoader().getResource(&config.properties&).getPath()));
System.out.println(prop.getProperty(&username&));
System.out.println(prop.getProperty(&password&));
在浏览器输入url后,后台输出如下:
【特别注意】第15行代码中getResource()里面的路径。
类加载器从哪个目录加载类,就从哪个目录加载资源,所以此处的路径一定要给一个相对于类加载目录的路径
我们先看一下这个工程发布到tomcat里面的目录:
进入WEB-INF目录下,是下面的样子:
上图中的classes目录和工程文件的src目录等价。
(1)如果config.properties文件放在src目录下,那路径为:getResource(&config.properties&)
(2)如果config.properties文件的位置如下:
那路径和上面的代码一样:getResource(&com/vae/servlet/config.properties&)
(3)如果config.properties文件和MyService.java文件并列,那路径为:getResource(&com/vae/service/config.properties&)
(4)如果config.properties文件的位置如下:
此时config.properties文件和classes文件并列:
那路径为:getResource(&../config.properties&)&& 注:&../&表示上一级目录。
(5)如果config.properties文件放在整个工程文件的根目录下,是无效的的,因为此时文件并没有发布到Tomcat。
【工程文件】
链接:/s/1ntBPHd3
密码:5qr2
已发表评论数()
&&登&&&陆&&
已收藏到推刊!
请填写推刊名
描述不能大于100个字符!
权限设置: 公开
仅自己可见随笔- 235&
&&&&&&&&&&&
& &1、Web应用图标:指出IDE和GUI工具用来表示Web应用的大图标和小图标&&&&&&icon&&&&&&&small-icon&/images/app_small.gif&/small-icon&&&&&&&large-icon&/images/app_large.gif&/large-icon&&&&&&&/icon&&&&&&2、Web 应用名称:提供GUI工具可能会用来标记这个特定的Web应用的一个名称&&&&&&display-name&Tomcat Example&/display-name&&&&&&3、Web 应用描述: 给出于此相关的说明性文本&&&&&&disciption&Tomcat Example servlets and JSP pages.&/disciption&&&&&&4、上下文参数:声明应用范围内的初始化参数。&&&&&& &context-param&&&&&&&&& &param-name&ContextParameter&/para-name&&&&&&&&& &param-value&test&/param-value&&&&&&&&& &description&It is a test parameter.&/description&&&&&&& &/context-param&&&&&&& 在servlet里面可以通过getServletContext().getInitParameter("context/param")得到&&&&&&&&5、过滤器配置:将一个名字与一个实现javaxs.servlet.Filter接口的类相关联。&&&&&& &filter&&&&&&&&&&&&& &filter-name&setCharacterEncoding&/filter-name&&&&&&&&&&&&& &filter-class&com.myTest.setCharacterEncodingFilter&/filter-class&&&&&&&&&&&&& &init-param&&&&&&&&&&&&&&&&& &param-name&encoding&/param-name&&&&&&&&&&&&&&&&& &param-value&GB2312&/param-value&&&&&&&&&&&&& &/init-param&&&&&&& &/filter&&&&&&& &filter-mapping&&&&&&&&&&&&& &filter-name&setCharacterEncoding&/filter-name&&&&&&&&&&&&& &url-pattern&/*&/url-pattern&&&&&&& &/filter-mapping&&&&&&6、监听器配置&&&&&& &listener&&&&&&&&&&& &listerner-class&listener.SessionListener&/listener-class&&&&&&& &/listener&&&&&&7、Servlet配置&&&&&&& 基本配置&&&&&&& &servlet&&&&&&&&&&& &servlet-name&snoop&/servlet-name&&&&&&&&&&& &servlet-class&SnoopServlet&/servlet-class&&&&&&&& &/servlet&&&&&&&& &servlet-mapping&&&&&&&&&&& &servlet-name&snoop&/servlet-name&&&&&&&&&&& &url-pattern&/snoop&/url-pattern&&&&&&&& &/servlet-mapping&&&&&&&& 高级配置&&&&&&& &servlet&&&&&&&&&&& &servlet-name&snoop&/servlet-name&&&&&&&&&&& &servlet-class&SnoopServlet&/servlet-class&&&&&&&&&&& &init-param&&&&&&&&&&&&&& &param-name&foo&/param-name&&&&&&&&&&&&&& &param-value&bar&/param-value&&&&&&&&&&& &/init-param&&&&&&&&&&& &run-as&&&&&&&&&&&&&& &description&Security role for anonymous access&/description&&&&&&&&&&&&&& &role-name&tomcat&/role-name&&&&&&&&&&& &/run-as&&&&&&&& &/servlet&&&&&&&& &servlet-mapping&&&&&&&&&&& &servlet-name&snoop&/servlet-name&&&&&&&&&&& &url-pattern&/snoop&/url-pattern&&&&&&&& &/servlet-mapping&&&&&&&& 元素说明&&&&&&&&& &servlet&&/servlet& 用来声明一个servlet的数据,主要有以下子元素:&&&&&&&&& &servlet-name&&/servlet-name& 指定servlet的名称&&&&&&&&& &servlet-class&&/servlet-class& 指定servlet的类名称&&&&&&&&& &jsp-file&&/jsp-file& 指定web站台中的某个JSP网页的完整路径&&&&&&&&& &init-param&&/init-param& 用来定义参数,可有多个init-param。在servlet类中通过getInitParamenter(String name)方法访问初始化参数&&&&&&&&& &load-on-startup&&/load-on-startup&指定当Web应用启动时,装载Servlet的次序。&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 当值为正数或零时:Servlet容器先加载数值小的servlet,再依次加载其他数值大的servlet.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 当值为负或未定义:Servlet容器将在Web客户首次访问这个servlet时加载它&&&&&&&&& &servlet-mapping&&/servlet-mapping& 用来定义servlet所对应的URL,包含两个子元素&&&&&&&&&&& &servlet-name&&/servlet-name& 指定servlet的名称&&&&&&&&&&& &url-pattern&&/url-pattern& 指定servlet所对应的URL&&&&&8、会话超时配置(单位为分钟)&&&&&&& &session-config&&&&&&&&&&& &session-timeout&120&/session-timeout&&&&&&&& &/session-config&&&&&&9、MIME类型配置&&&&&&& &mime-mapping&&&&&&&&&&& &extension&htm&/extension&&&&&&&&&&& &mime-type&text/html&/mime-type&&&&&&&& &/mime-mapping&&&&&&10、指定欢迎文件页配置&&&&&&& &welcome-file-list&&&&&&&&&&& &welcome-file&index.jsp&/welcome-file&&&&&&&&&&& &welcome-file&index.html&/welcome-file&&&&&&&&&&& &welcome-file&index.htm&/welcome-file&&&&&&&& &/welcome-file-list&&&&&&11、配置错误页面&&&&&& 一、 通过错误码来配置error-page&&&&&&& &error-page&&&&&&&&&&& &error-code&404&/error-code&&&&&&&&&&& &location&/NotFound.jsp&/location&&&&&&&& &/error-page&&&&&&& 上面配置了当系统发生404错误时,跳转到错误处理页面NotFound.jsp。&&&&&二、通过异常的类型配置error-page&&&&&&& &error-page&&&&&&&&&&&& &exception-type&java.lang.NullException&/exception-type&&&&&&&&&&&& &location&/error.jsp&/location&&&&&&&& &/error-page&&&&&&& 上面配置了当系统发生java.lang.NullException(即空指针异常)时,跳转到错误处理页面error.jsp&&&&&12、TLD配置&&&&&&& &taglib&&&&&&&&&&&& &taglib-uri&http://jakarta.apache.org/tomcat/debug-taglib&/taglib-uri&&&&&&&&&&&& &taglib-location&/WEB-INF/jsp/debug-taglib.tld&/taglib-location&&&&&&&& &/taglib&&&&&&&& 如果MyEclipse一直在报错,应该把&taglib& 放到 &jsp-config&中&&&&&&& &jsp-config&&&&&&&&&&& &taglib&&&&&&&&&&&&&&& &taglib-uri&http://jakarta.apache.org/tomcat/debug-taglib&/taglib-uri&&&&&&&&&&&&&&& &taglib-location&/WEB-INF/pager-taglib.tld&/taglib-location&&&&&&&&&&& &/taglib&&&&&&&& &/jsp-config&&&&&&13、资源管理对象配置&&&&&&& &resource-env-ref&&&&&&&&&&&& &resource-env-ref-name&jms/StockQueue&/resource-env-ref-name&&&&&&&& &/resource-env-ref&&&&&&14、资源工厂配置&&&&&&& &resource-ref&&&&&&&&&&&& &res-ref-name&mail/Session&/res-ref-name&&&&&&&&&&&& &res-type&javax.mail.Session&/res-type&&&&&&&&&&&& &res-auth&Container&/res-auth&&&&&&&& &/resource-ref&&&&&&&& 配置数据库连接池就可在此配置:&&&&&&& &resource-ref&&&&&&&&&&&& &description&JNDI JDBC DataSource of shop&/description&&&&&&&&&&&& &res-ref-name&jdbc/sample_db&/res-ref-name&&&&&&&&&&&& &res-type&javax.sql.DataSource&/res-type&&&&&&&&&&&& &res-auth&Container&/res-auth&&&&&&&& &/resource-ref&&&&&&15、安全限制配置&&&&&&& &security-constraint&&&&&&&&&&& &display-name&Example Security Constraint&/display-name&&&&&&&&&&& &web-resource-collection&&&&&&&&&&&&&& &web-resource-name&Protected Area&/web-resource-name&&&&&&&&&&&&&& &url-pattern&/jsp/security/protected/*&/url-pattern&&&&&&&&&&&&&& &http-method&DELETE&/http-method&&&&&&&&&&&&&& &http-method&GET&/http-method&&&&&&&&&&&&&& &http-method&POST&/http-method&&&&&&&&&&&&&& &http-method&PUT&/http-method&&&&&&&&&&& &/web-resource-collection&&&&&&&&&&& &auth-constraint&&&&&&&&&&&&& &role-name&tomcat&/role-name&&&&&&&&&&&&& &role-name&role1&/role-name&&&&&&&&&&& &/auth-constraint&&&&&&&& &/security-constraint&&&&&&16、登陆验证配置&&&&&&& &login-config&&&&&&&&&& &auth-method&FORM&/auth-method&&&&&&&&&& &realm-name&Example-Based Authentiation Area&/realm-name&&&&&&&&&& &form-login-config&&&&&&&&&&&&& &form-login-page&/jsp/security/protected/login.jsp&/form-login-page&&&&&&&&&&&&& &form-error-page&/jsp/security/protected/error.jsp&/form-error-page&&&&&&&&&& &/form-login-config&&&&&&&& &/login-config&&&&&&17、安全角色:security-role元素给出安全角色的一个列表,这些角色将出现在servlet元素内的security-role-ref元素的role-name子元素中。&&&&&&&& 分别地声明角色可使高级IDE处理安全信息更为容易。&&&&&& &security-role&&&&&&&&&& &role-name&tomcat&/role-name&&&&&&& &/security-role&&&&&&18、Web环境参数:env-entry元素声明Web应用的环境项&&&&&& &env-entry&&&&&&&&&& &env-entry-name&minExemptions&/env-entry-name&&&&&&&&&& &env-entry-value&1&/env-entry-value&&&&&&&&&& &env-entry-type&java.lang.Integer&/env-entry-type&&&&&&& &/env-entry&&&&&&19、EJB 声明&&&&&& &ejb-ref&&&&&&&&&& &description&Example EJB reference&/decription&&&&&&&&&& &ejb-ref-name&ejb/Account&/ejb-ref-name&&&&&&&&&& &ejb-ref-type&Entity&/ejb-ref-type&&&&&&&&&& &home&com.mycompany.mypackage.AccountHome&/home&&&&&&&&&& &remote&com.mycompany.mypackage.Account&/remote&&&&&&& &/ejb-ref&&&&&&20、本地EJB声明&&&&&& &ejb-local-ref&&&&&&&&&& &description&Example Loacal EJB reference&/decription&&&&&&&&&& &ejb-ref-name&ejb/ProcessOrder&/ejb-ref-name&&&&&&&&&& &ejb-ref-type&Session&/ejb-ref-type&&&&&&&&&& &local-home&com.mycompany.mypackage.ProcessOrderHome&/local-home&&&&&&&&&& &local&com.mycompany.mypackage.ProcessOrder&/local&&&&&&& &/ejb-local-ref&&&&&&21、配置DWR&&&&&& &servlet&&&&&&&&&&& &servlet-name&dwr-invoker&/servlet-name&&&&&&&&&&& &servlet-class&uk.ltd.getahead.dwr.DWRServlet&/servlet-class&&&&&&& &/servlet&&&&&&& &servlet-mapping&&&&&&&&&&& &servlet-name&dwr-invoker&/servlet-name&&&&&&&&&&& &url-pattern&/dwr/*&/url-pattern&&&&&&& &/servlet-mapping&&&&&&22、配置Struts&&&&&&&& &display-name&Struts Blank Application&/display-name&&&&&&&&& &servlet&&&&&&&&&&&&& &servlet-name&action&/servlet-name&&&&&&&&&&&&& &servlet-class&&&&&&&&&&&&&&&&& org.apache.struts.action.ActionServlet&&&&&&&&&&&& &/servlet-class&&&&&&&&&&&&& &init-param&&&&&&&&&&&&&&&&& &param-name&detail&/param-name&&&&&&&&&&&&&&&&& &param-value&2&/param-value&&&&&&&&&&&&& &/init-param&&&&&&&&&&&&& &init-param&&&&&&&&&&&&&&&&& &param-name&debug&/param-name&&&&&&&&&&&&&&&&& &param-value&2&/param-value&&&&&&&&&&&&& &/init-param&&&&&&&&&&&&& &init-param&&&&&&&&&&&&&&&&& &param-name&config&/param-name&&&&&&&&&&&&&&&&& &param-value&/WEB-INF/struts-config.xml&/param-value&&&&&&&&&&&&& &/init-param&&&&&&&&&&&&& &init-param&&&&&&&&&&&&&&&&& &param-name&application&/param-name&&&&&&&&&&&&&&&&& &param-value&ApplicationResources&/param-value&&&&&&&&&&&&& &/init-param&&&&&&&&&&&&& &load-on-startup&2&/load-on-startup&&&&&&&&& &/servlet&&&&&&&&& &servlet-mapping&&&&&&&&&&&&& &servlet-name&action&/servlet-name&&&&&&&&&&&&& &url-pattern&*.do&/url-pattern&&&&&&&&& &/servlet-mapping&&&&&&&&& &welcome-file-list&&&&&&&&&&&&& &welcome-file&index.jsp&/welcome-file&&&&&&&&& &/welcome-file-list&&&&&&&&&&&& &!-- Struts Tag Library Descriptors --&&&&&&&&& &taglib&&&&&&&&&&&&& &taglib-uri&struts-bean&/taglib-uri&&&&&&&&&&&&& &taglib-location&/WEB-INF/tld/struts-bean.tld&/taglib-location&&&&&&&&& &/taglib&&&&&&&&& &taglib&&&&&&&&&&&&& &taglib-uri&struts-html&/taglib-uri&&&&&&&&&&&&& &taglib-location&/WEB-INF/tld/struts-html.tld&/taglib-location&&&&&&&&& &/taglib&&&&&&&&& &taglib&&&&&&&&& &taglib-uri&struts-nested&/taglib-uri&&&&&&&&& &taglib-location&/WEB-INF/tld/struts-nested.tld&/taglib-location&&&&&&&&& &/taglib&&&&&&&&& &taglib&&&&&&&&&&&&& &taglib-uri&struts-logic&/taglib-uri&&&&&&&&&&&&& &taglib-location&/WEB-INF/tld/struts-logic.tld&/taglib-location&&&&&&&&& &/taglib&&&&&&&&& &taglib&&&&&&&&&&&&& &taglib-uri&struts-tiles&/taglib-uri&&&&&&&&&&&&& &taglib-location&/WEB-INF/tld/struts-tiles.tld&/taglib-location&&&&&&&&& &/taglib&&&&&&23、配置Spring(基本上都是在Struts中配置的)&&&&&&&&&& &!-- 指定spring配置文件位置 --&&&&&&&& &context-param&&&&&&&&&&& &param-name&contextConfigLocation&/param-name&&&&&&&&&&& &param-value&&&&&&&&&&&& &!--加载多个spring配置文件 --&&&&&&&&&&&&& /WEB-INF/applicationContext.xml, /WEB-INF/action-servlet.xml&&&&&&&&&& &/param-value&&&&&&&& &/context-param&&&&&&&&&&& &!-- 定义SPRING监听器,加载spring --&&&&&&&&&& &listener&&&&&&&&&& &listener-class&org.springframework.web.context.ContextLoaderListener&/listener-class&&&&&&& &/listener&&&&&&&&&& &listener&&&&&&&&&& &listener-class&&&&&&&&&&&& org.springframework.web.context.request.RequestContextListener&&&&&&&&& &/listener-class&&&&&&& &/listener&
阅读(...) 评论()

我要回帖

更多关于 web.xml配置servlet 的文章

 

随机推荐