struts1 在web.xml中的配置

web.xml文件对于配置任何Java Web应用都必需的。
(1) 配置Struts的ActionServlet 
    元素来声明ActionServlet
    元素:用来定义Servlet的名称
    元素:用来指定Servlet的完整类名

  
   action
   org.apache.struts.action.ActionServlet
  


  还要配置元素,它用来指定ActionServlet可以处理哪些URL
 
  action
  *.do
 
 

    注意:(1)中的?的要填写一致,它就是一根线,把联接在一起的。
         (2)在Struts框架中只能有一个Servlet,因为Servlet支持多线程。而org.apache.struts.action.ActionServlet中的ActionServlet是在Struts.jar包中的.在导入Struts包时会导入。
         (3)在显示层所有以*.do为扩展名提交的URL,都会交由这个Servlet来处理。*.do可以改写成你想要的任何形式,例如:/do/* ,此时该Servlet会处理所有以"/do"为前缀的URL,如http://localhost:8080/helloapp/do/helloWord,
扩展 (1)我们可以继承 org.apache.struts.action.ActionServlet 得到我们可以扩展的子类,在子类中重写一个方法init()。这时?中的?是我们新建的类的路径,同样只能存在一个。 
    
(2)声明ActionServlet的初始化参数
   初始化参数用来对Servlet的运行时环境进行初始配置。子元素用于配置Servlet初始化参数。 
   config :以相对路径的方式指明Struts应用程序的配置文件位置,如不设置,则默认值为/WEB-INF/struts-config.xml
   debug : 设置Servlet的debug级别,控制日志记录的详细程度。默认为0,记录相对最少的日志信息。
   detail : 设置Digester的debug级别,Digester是Struts框架所使用的用来解析xml配置文件的一个框架,通过此设置,可以查看不同详细等级的解析日志。默认为0,记录相对最少的日志信息。
   中?号的值是此ActionServlet在服务器开启时加载的次序,数值越低,越先加载。

   
      action
      org.apache.struts.action.ActionServlet
     
        config
        /WEB-INF/struts-config.xml
     

     
        debug
        3
     

     
        detail
        3
      

      0


扩展:(1)当服务器启动后,加载ActionServlet,而ActionServlet会调用相关的方法去,会根据它下面的参数的初始值,对这个ActionServlet中的参数时行初始化
        (2)当多人协作开发项目时可以对Strutst的配置文件进行适当的扩充,但必须为config开头。如
        
        config/XXXXXXXXX
        /WEB-INF/XXXXX.xml
        

        
(3) 配置欢迎文件清单
     当客户访问Web应用时,如果仅仅给出Web应用的Root URL,没有指定具体的文件名。Web容器会自动调用Web应用的欢迎文件。是用来设置此项.
     
     welcome.jsp
    

      说明:在 下可以有多个。Web容器会依次寻找欢迎界面,直到找到为止。但如果不存在会向客户端返回”HTTP 404 NOT Found“错误信息。
     
      由于在元素中不能配置Servlet映射,则不能直接把Struts的Action作为欢迎文件。但可以通过Struts中的全局的(global)转发项来配置。
      A:welcome.jsp页面(可换文件名)
      <%@ taglib uri="http://jakarta.apache.org/struts/tags-logic" prefix="logic"%>
     
     
     
     
     
      B: web.xml
     
      welcome.jsp
     

      C: struts-config.xml
     
     
     

       我自已理解,仅供参考
      运行机制:当服务器启动时还是会加载 B中welcome.jsp中的welcome.jsp,然后读到(A)welcome.jsp中的 ,接下来会转到C中的,这是由于它是以.do(hello.do)结尾的,所以它会找到C文件中的相配配的,最后在转到这个的JSP页面。

你可能感兴趣的:(struts1 在web.xml中的配置)