精华内容
下载资源
问答
  • Spring MVC中,applicationContext.xml [ServletName]-servlet.xml配置文件web.xml中的配置详解 <!-- spring 配置 --><servlet><servlet-name>swork</servlet-...
        

    Spring MVC中,applicationContext.xml [ServletName]-servlet.xml配置文件在web.xml中的配置详解

    <!-- spring 配置 --><servlet><servlet-name>swork</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><load-on-startup>1</load-on-startup></servlet><servlet-mapping><servlet-name>swork</servlet-name><url-pattern>/*</url-pattern></servlet-mapping>
    
    

    这样配置,SpringMVC会自动按照约定去找<servlet-name>swork</servlet-name>的swork-servlet.xml配置文件作为其servlet配置文件.

    如果是显式指定Springmvc-servlet.xml, 加上

    <init-param> <param-name>contextConfigLocation</param-name> <!-- <param-value>classpath*:config/Springmvc-servlet.xml</param-value> --> <param-value>/WEB-INF/classes/config/Springmvc-servlet.xml</param-value></init-param>
    
    

    如下:

    <servlet> <servlet-name>springmvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <!-- <param-value>classpath*:config/Springmvc-servlet.xml</param-value> --> <param-value>/WEB-INF/classes/config/Springmvc-servlet.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springmvc</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>
    
    

    看web.xml中的配置情况。

    <?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> <display-name>SpringMVC</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>default.html</welcome-file> <welcome-file>default.htm</welcome-file> <welcome-file>default.jsp</welcome-file> </welcome-file-list> <context-param> <param-name>contextConfigLocation</param-name> <!-- <param-value>classpath*:config/applicationContext.xml</param-value> --> <param-value>/WEB-INF/classes/config/applicationContext.xml</param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <servlet> <servlet-name>springmvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <!-- <param-value>classpath*:config/Springmvc-servlet.xml</param-value> --> <param-value>/WEB-INF/classes/config/Springmvc-servlet.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springmvc</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping></web-app>
    
     
    

    三、下面是对配置文件的说明。

    <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener>
    
    

    ContextLoaderListener是Spring的监听器,它的作用就是启动Web容器时,自动装配ApplicationContext的配置信息。因为它实现了ServletContextListener这个接口,在web.xml配置这个监听器,启动容器时,就会默认执行它实现的方法。

    <context-param> <param-name>contextConfigLocation</param-name> <!-- <param-value>classpath*:config/applicationContext.xml</param-value> --> <param-value>/WEB-INF/classes/config/applicationContext.xml</param-value> </context-param>
    
    

    这段配置是用于指定applicationContext.xml配置文件的位置,可通过context-param加以指定:
    这里需要搞清楚classpath是什么,以及classpath:和classpath*有何区别:

    1. 首先 classpath是指 WEB-INF文件夹下的classes目录
    2. classpath 和 classpath* 区别: classpath:只会到你的class路径中查找找文件; classpath*:不仅包含class路径,还包括jar文件中(class路径)进行查找.

    如果applicationContext.xml配置文件存放在src目录下,就好比上面的代码结构中的存放位置,那么在web.xml中的配置就如下所示:

    <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:applicationContext.xml</param-value> </context-param>
    
    

    如果applicationContext.xml配置文件存放在WEB-INF下面,那么在web.xml中的配置就如下所示:

    <context-param> <param-name>contextConfigLocation</param-name> <param-value>WEB-INF/applicationContext*.xml</param-value> </context-param>
    
    

    需要注意的是,部署到应用服务器后,src目录下的配置文件会和class文件一样,自动copy到应用的 classes目录下,spring的 配置文件在启动时,加载的是web-info目录下的applicationContext.xml, 运行时使用的是web-info/classes目录下的applicationContext.xml。因此,不管applicationContext.xml配置文件存放在src目录下,还是存放在WEB-INF下面,都可以用下面这种方式来配置路径:

    <context-param> <param-name>contextConfigLocation</param-name> <param-value>WEB-INF/applicationContext*.xml</param-value> </context-param>
    
    

    当有多个配置文件加载时,可采用下面代码来配置:

    ![复制代码](http://upload-images.jianshu.io/upload_images/1233356-61a1170cf5642d48.gif?imageMogr2/auto-orient/strip)
    <context-param> <param-name>contextConfigLocation</param-name> <param-value> classpath*:conf/spring/applicationContext_core*.xml, classpath*:conf/spring/applicationContext_dict*.xml, classpath*:conf/spring/applicationContext_hibernate.xml,...... </param-value> </context-param>
    [图片上传中。。。(4)]
    
    

    也可以用下面的这种方式:

    <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath*:**/applicationContext-*.xml</param-value> </context-param>
    
    

    "/"表示的是任意目录;
    "
    /applicationContext-*.xml"表示任意目录下的以"applicationContext-"开头的XML文件。
    Spring配置文件最好以"applicationContext-"开头,且最好把所有Spring配置文件都放在一个统一的目录下,也可以分模块创建。

    展开全文
  • Servlet在web.xml中的配置

    千次阅读 2014-06-27 15:37:44
    Servlet在web.xml中的配置
    import javax.servlet.*;
    import java.io.IOException;
    import java.io.PipedWriter;
    import java.io.PrintWriter;
    
    /**
     * Created with IntelliJ IDEA.
     * User: wbb
     * Date: 14-6-17
     * Time: 上午11:56
     * To change this template use File | Settings | File Templates.
     */
    public class HelloWorldServlet implements Servlet {
        private ServletConfig config;
    
        @Override
        public void init(ServletConfig config) throws ServletException {
            this.config = config;
        }
    
        @Override
        public ServletConfig getServletConfig() {
            return config;
        }
    
        @Override
        public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
            PrintWriter out = servletResponse.getWriter();
            out.println("Hello World");
            out.close();
        }
    
        @Override
        public String getServletInfo() {
            return null;  //To change body of implemented methods use File | Settings | File Templates.
        }
    
        @Override
        public void destroy() {
    
        }
    }
    

       

    web.xml的配置

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns="http://java.sun.com/xml/ns/javaee"
               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
               xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
    <span style="white-space:pre">		</span>  http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
               version="2.5">
    
    
        <!--用于声明Servlet-->
        <servlet>
            <!--指定Servlet的名字,在同一个Web应用程序中,每一个Servlet的名字必须是唯一的,该元素的内容不能为空-->
            <servlet-name>HelloWorldServlet</servlet-name>
            <!--指定Servlet的完整限定名(即该类所在的路径)-->
            <servlet-class>wbb.servlet.HelloWorld.HelloWorldServlet</servlet-class>
            <!--配置初始化参数-->
            <init-param>
                <param-name>greeting</param-name>
                <param-value>Welcome you</param-value>
            </init-param>
        </servlet>
    
    
        <!--用于在Servlet跟URL之间定义一个映射-->
        <servlet-mapping>
            <!--此处的Servlet名字必须跟<servlet>中的子元素<servlet-name>给的名字相同-->
            <servlet-name>HelloWorldServlet</servlet-name>
            <!--用于指定该Servlet的URL路径,该路径是相对Web应用程序上下文根的路径-->
            <url-pattern>/helloworld</url-pattern>
        </servlet-mapping>
    

    在浏览器中输入:http://localhost:8080/helloworld即可,此处可以看出helloworld即为web.xml中定义的<url-pattern>



    展开全文
  • 服务器启动时做些初始化工作【比如 将一些数据导入到内存】, 用Servlet的初始化init()方法可以很好做到这一点。 <servlet> <servlet-name>myser</servlet-name> <servlet-class>...

    为啥这么搞?
    在服务器启动时做些初始化的工作【比如 将一些数据导入到内存】【比如 读取数据库的配置信息】,
    用Servlet的初始化init()方法可以很好的做到这一点。

    <load-on-startup>0</load-on-startup> 控制init加载时机
    加了=0或>0是在服务器启动时就init 
    不写=默认 或 小于0则在 第一次请求来了 才init【=容器才加载这个servlet】
    
    <servlet>
    	<servlet-name>myser</servlet-name>
    	<servlet-class>com.wn.controller.MyServlet</servlet-class>
    	<load-on-startup>0</load-on-startup> 控制init加载时机
    </servlet>
    <servlet-mapping>
    	<servlet-name>myser</servlet-name>
    	<url-pattern>/login</url-pattern>
    </servlet-mapping>
    

    1)load-on-startup 元素标记容器是否应该在启动的时候加载这个servlet,(实例化并调用其init()方法)。

    2)它的值必须是一个整数,表示servlet应该被载入的顺序

    3)如果该元素不存在或者这个数为负时,则容器会当该Servlet被请求时,再加载。

    4)当值为0或者大于0时,表示容器在应用启动时就加载并初始化这个servlet;

    5)正数的值越小,该servlet的优先级越高,应用启动时就越先加载。

    6)当值相同时,容器就会自己选择顺序来加载。

    展开全文
  • Servlet的配置分为两种:一种为文件配置(web.xml配置),另一种为注解配置(注入声明) 下面我们通过实例来分别使用这两种方法 一、 首先创建一个项目 首先创建一个Dynamic文件,对勾要勾上,自动生成xml文件,...


    前言

    Servlet的配置分为两种:一种为文件配置(web.xml配置),另一种为注解配置(注入声明)


    下面我们通过实例来分别使用这两种方法

    一、 首先创建一个项目

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    首先创建一个Dynamic文件,对勾要勾上,自动生成xml文件,这样一个工程我们就创建完毕。

    ====================================================================

    接下来创建包和类
    新建包
    新建包
    新建类
    新建类
    在类中输入代码如下:

    package first;
    import java.io.IOException;
    import java.io.PrintWriter;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.ServletException;
    import javax.servlet.ServletRequest;
    import javax.servlet.ServletResponse;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    public class firstServlet extends HttpServlet{
    	private static final long serialVersionUID = 1L;
    	
    	public void init() throws ServletException{
    		System.out.println("初始化 init()");
    	}
    	public void doGet(HttpServletRequest request,
    							HttpServletResponse response)
    					throws ServletException,IOException
    					{
    						System.out.println("调用doGet()方法");
    						response.setContentType("text/html;charset=UTF-8");
    						PrintWriter out = response.getWriter();
    						out.println("<html>");
    						out.println("<head><title>输出一个九九乘法表</title>");
    						out.println("<body>");
    						int i,j;
    						for(i=1;i<10;i++) {
    							out.println("<br>");
    							for(j=1;j<=i;j++) {
    								out.println(j+"*"+i+"="+j*i+"\t");
    							}
    						}
    						out.println("<body>");
    						out.flush();
    						out.close();
    					}
    	
    }
    
    

    二、配置xml文件

    2. 1在相应文件夹找到web.xml文件

    在这里插入图片描述

    2. 2点击进入web.xml文件进行配置

    在这里插入图片描述

    2. 3运行结果

    在这里插入图片描述

    三、注解方法

    3. 1在类文件中直接加入注解

    在这里插入图片描述

    3. 2运行结果

    在这里插入图片描述

    总结

    以上就是今天总结的内容,本文仅仅简单介绍了Servlet的两种配置方法及详细步骤,直接注入的方法用的比较多些,因为代码量少且方便。
    觉得有用的顺便留下个小爱心再走吧😀🌹

    展开全文
  • 旧版本的Servlet在web.xml文件中配置,内容如下: <servlet> <servlet-name>UserServlet</servlet-name> <servlet-class>net.tjk.web.UserServlet</servlet-class> </servlet&...
  • 需要web.xml中给 标签配置子标签 xml文件中设置标签: <load-on-startup>3</load-on-startup> 中间数字越小,优先级越高,tomCat就会越先加载,但是tomCat中也有设置此标签,并且值为1,所以...
  • SpringMVC项目我们一般会引入applicationContext.xml和dispatcher-servlet.xml两个配置文件,这两个配置文件具体区别是什么呢?  Spring 官方文档介绍如下: Spring lets you define multiple ...
  • Servlet被设计为多线程的,当web应用程序初始化的时候,Servlet会根据web.xml中的配置文件实例化一个Servlet类,每当一个用户请求通过Tomucat获其他服务器进来直接调用已经实例化的Servlet对...
  • action  org.apache.struts.action.ActionServlet    config  /WEB-INF/struts-config.xml      debug  true    0  action  *.do 首先
  • --配置servlet的加载方式,如果为0,会第一次访问时候加载servlet,如果为1,会tomcat启动时候加载servlet--> <load-on-startup>1 </servlet> <!--servlet的访问方式--> <servlet-mapping> <!--指定...
  • web.xml (截取需要转换) 当拦截到 /socke t时执行该servlet <servlet> <servlet-name>websocket</servlet-name> <servlet-class>org.ldd.ssm.hangyu.socket.MyWebSocke...
  • 1.application.xml :对应的是系统级别的配置...3.它们web.xml 中的配置3.1.因为 application.xml 是系统级别的上下文,所以它的初始化需要放到 web.xml 中的&lt;context-param&gt;标签中,同时其他的类...
  • url-pattern 标签中的值是要浏览器地址栏中输入的 url,可以自己命名,这个 url 访问名为 servlet-name 中值的 servlet,两个 servlet-name 标签的值必须相同,因为通过 servlet 标签中的 servlet-name 标签映射到...
  • Tomcat组件可以/conf/server.xml文件进行配置,每个Tomcat组件server.xml文件对应一种配置元素.一下代码以XML的形式展示了各种Tomcat组件之间关系: 元素  代表了整个Catalina 
  • web.xml中filter的配置循序决定了过滤器的执行顺序,而servlet的初始化顺序是由web.xml中servlet的...servlet创建则是有web.xml中的配置的名称首字母排序决定的! servlet、filter均为单例模式,一个对象处理多...
  • SpringMVC项目我们一般会引入applicationContext.xml和dispatcher-servlet.xml两个配置文件,这两个配置文件具体区别是什么呢?Spring 官方文档介绍如下: Spring lets you define multiple contexts
  • web.xml中配置servlet

    2018-06-03 20:01:09
    红色地方写上你的Servlet名字 配置的Servlet的映射路由,这样你的Servlet会自动配置文件加入到web.xml文件之,但是Servlet3.0新特性(得Tomcat7.0版本及以上)则不一样可以参考 ...
  • servlet在web.xml中的路径配置的映射

    千次阅读 2013-04-08 21:23:55
    定义servlet  hello与servlet-mapping相对应    org.wj.servletdemo.HelloServlet      映射路径  hello与servlet相对应  /helloServlet页面映射路径    这个和上同  info    org.wj....
  • 使用eclipse软件编写JavaWeb项目时,需要自己.xml文件配置servlet、filter和listener,简单介绍如下: 一、servlet的配置   AServlet cn.dahua.web.servlet.AServlet     AServlet /AServlet  ...
  • servletservlet-name>actionservlet-name> servlet-class>org.apache.struts.action.ActionServletservlet-class> init-param> param-name>configparam-name> param-val
  • 我们进行 Spring-servlet 进行开发...1.SpringMVC 的配置分为两部分 application.xml 和 spring-servlet.xml 2.两个配置文件的作用和配置位置 1.application.xml :对应的是系统级别的配置,作用范围是系统上下文。
  • web.xml 文件中servlet的配置

    千次阅读 2013-07-20 18:19:17
    servlet在web.xml文件中的配置 格式:        / servlet配置放在 后 语句解释如下: 这是你的servlet的名字,名字可以任意取 这是servlet的路径,即包名加上servlet类名 这是你的servlet的名字,...
  • 它们在配置文件中的相对位置是: 第一:全局初始化参数(context-param) 第二:监听器(listener) 第三:过滤器(filter) 第四:Servlet 值得我们注意的是:监听器 和 过滤器都是( ) <?xml version="1.0" encoding=...
  • you  com.servlet.loginServlet  2      you  /login   访问时地址必须后面为name中的name

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 12,012
精华内容 4,804
关键字:

servlet在xml中的配置