web-servlet-tomcat原生部署

使用maven构建web工程参考文献:http://www.cnblogs.com/h--d/p/6000778.html

中间maven的poi文件报错

<dependency>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>2.6</version>
</dependency>

加入了这个maven插件依赖,它的路径在C:\Users\63050\.m2\repository\org\apache\maven\plugins\maven-jar-plugin\2.6,注意保持版本一致

是里面的那个jar包maven-jar-plugin-2.6.jar上面的依赖就是能拿到这个对应的依赖jar


将web发布到tomcat参考文献:http://blog.****.net/lucklq/article/details/7621807

这里注意在工程的属性下的Deployment Assembly中设置输出的对应路径才可

web-servlet-tomcat原生部署




最后部署在web.xml中配置servlet的信息时候,出现了下列错误:

web-servlet-tomcat原生部署web-servlet-tomcat原生部署

错误信息:The content of element type "web-app" must match "(icon?,display-  name?,description?,distributable?,context-param*,filter*,filter-mapping*,listener*,servlet*,servlet-  mapping

解决参考文献:http://blog.****.net/cpp_lzth/article/details/6547789

它是因为不符合2.3d的规范,只要把上面全部删除就可以了。如下:web-servlet-tomcat原生部署

然后第一个使用Eclipse的mvn构建的web项目成功了。FirstServlet拦截/请求(根请求,不是/*所有请求)。!!!实验并查询后发现/与/*都是匹配任意的,相同的作用。

五、匹配任意的url

如果<url-pattern>配置成如下两种的任意一种

<url-pattern>/</url-pattern>

<url-pattern>/*</url-pattern>

则所有的url都可以被匹配上。其中/*是路径匹配,只是路径就是/。



加入访问主页后,跳转到Web-Inf路径下的test1.html页面。

 请求分派:request.getRequestDispatcher("/WEB-INF/a.jsp").forward(request,response);  
次方法可以访问jsp和html等文件,且不能使用重定向response.sendRedirect("WEB-INF/inf.html");(相当于直接在浏览器输入地址http://127.0.0.1:8080/项目名/WEB-INF/a.jsp)
 运用forward方法只能重定向到同一个Web应用程序中的一个资源。而sendRedirect方法可以让你重定向到任何 URL。 

github地址:

https://github.com/liuzhi0716/WebServlet