Servlet合并

一、开发web项目的步骤:

 1:创建web project
 2:导入第三方jar(连接池,mysql)包,和数据库相应的脚本文件等
 3:添加配置文件,db.properties
 4:编写工具类,DBUtil等
 5:根据Dao思想编写相应代码
        包含:
        实体类,接口,实现类
 6:编写业务层的代码----(M层:model,包含持久层和业务层)
 7:编写Servlet组件。(C层:controller,控制层)    
 8:配置web.xml文件

二、测试部分:

   第一步:启动服务器tomcat
   第二步: 将项目部署到服务器上(代码更新,需要重新部署)
   第三步: 在浏览器上输入请求路径。
   

三、容器处理请求资源路径的问题:

 1:什么是请求资源路径??
  http://localhost:8088/appName/xx.html;
            /appName/xx.html是请求资源路径。
 2:容器如何处理请求资源路径
   (1)浏览器通过IP,Port向容器发送请求,建立连接。
   (2)根据appName(部署名)找到服务器内对应的应用程序,再根据
        xx.html去匹配web.xml中的<url-pattern>的值。
             匹配成功后,去执行对应的web组件。
 3:精确匹配。
        容器在处理请求资源路径时,先会严格精确
        的找<url-pattern>的值,如 请求资源
        路径为:appName/addEmp.html,会先
        查找<url-pattern>的值有没有一个是addEmp.html;
        如果有,就会执行相应的web组件
        (即使此时有addEmp.html页面,也不会显示页面)
  4:通配符匹配。
    *:可以匹配n个任何字符,  
         如果<url-pattern>的值为 /*,表示任何请求资源路径
         都会执行此web组件。
    reg:
      http://ip:port/appName/abc
      http://ip:port/appName/abc.html
      http://ip:port/appName/abc/abc.html
  5:后缀匹配.
          如果<url-pattern>的值为 *.后缀,此时一定不能在*前添加"/"。
         当请求资源路径为此后缀的格式时,就会执行对   应的web组件
      
    reg:
       <url-pattern>*.do<url-pattern>
    请求资源路径:
    http://ip:port/appName/abc.do
    http://ip:port/appName/abc/abc.do
  6:无匹配的servlet处理
       如果请求资源路径在web.xml中无任何匹配,那么就会查找
      是否有此文件。如果有,将文件响应给浏览器,如果没有,
      报404错误。
      
      总结:三种匹配的优先级
            精确匹配>通配符匹配>后缀匹配
 

    四、Servlet组件的合并问题

       1:为什么要合并?
              因为Servlet组件充当的是控制器的角色,通过分析资源路径,
              用来分发不同的资源。所以,一个Servlet组件
              就可以做到分发不同的资源。 
       2:如何合并?
             request.getRequestURI():此方法返回的
             是请求资源路径,我们可以使用分支结构来进行控制
             资源的分发。
             reg:
             String path =request.getRequestURI();   
             if("/appName/listEmp.do").equals(path){
              //
             }else if(("/appName/deleteEmp.do").equals(path)){
              //
             }         
            需要导mysql 连接池 的jar包;
      

     




 
 
   

猜你喜欢

转载自blog.csdn.net/xiaozelulu/article/details/80023913