JavaEE基础JavaWeb项目基础认识

Posted cfeng850

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaEE基础JavaWeb项目基础认识相关的知识,希望对你有一定的参考价值。

web项目结构
技术分享图片

  • WEB-INF:位于应用程序根目录下,内部对外界封闭,客户端无法使用HTTP直接访问到内部的文件或目录,只能通过Servlet/JSP的请求转发(Forward)
  • web.xml:web项目部署描述文件,位于web-inf根目录下
  • lib:存放jar文件的目录,位于web-inf根目录下
  • classes:编译后的.class文件,位于web-inf根目录下

项目打包命令——项目目录FirstServlet
jar cvf ../FirstServlet.war *

URI的实际组成

requestURI = contextPath + servletPath + pathInfo

1,requestURI可以通过httpServletRequest的getRequestURI( )来获取
2,contextPath 环境路径(Context path)
这个可以通过httpServletRequest的getContextPath( )来获取
3,servletPath指Servlet路径不包括路径信息(Path info)与请求参数(Request parameter)
这个可以通过httpServletRequest的getServletPath( )来获取

  • /hello.do——>servletPath=/hello.do
  • /servlet/*——>servletPath=/servlet
  • /*或者""——>servletPath=空字符串
    4,pathInfo路径信息(Path info),不包括请求参数,指的是不包括环境路径与Servlet路径部分的额外路径信息
    这个可以通过httpServletRequest的getPathInfo( )来获取,没有额外路径信息则为null(扩展映射,预设Servlet,完全匹配的情况下,getPathInfo会取到null),如果存在,则是一个以/开头的字符串。
    技术分享图片

访问Jar包中的页面
在jar文件的/META-INF/resources 目录中放置静态资源或jsp等,访问时项目找不到对应文件则会从jar中的resources中寻找
当项目中找不到某类文件时会从项目的依赖jar中寻找,如果依然找不到则会在容器存放类和jar的目录中寻找(如:tomcat的lib)

通过程序控制取得/WEB-INF中的资源,可以使用ServletContext的getResource( ) 和getResourceAsStream( ),或是通过RequestDispatcher请求调派

如果web应用程序的URL最后以/结尾,而且确实存在该目录,则Web容器必须传回该目录下的欢迎页面,web.xml中的配置

<welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>default.jsp</welcome-file>
</welcome-file-list>

web-fragment.xml
这个感觉挺黑科技的!回头看













以上是关于JavaEE基础JavaWeb项目基础认识的主要内容,如果未能解决你的问题,请参考以下文章

JSP基础学习

javaEE——javaweb基础

动态SQL基础概念复习(Javaweb作业5)

JavaEE学习之jdbc基础认识

JavaWeb学习入门之——Java基础

《JavaEE基础实用教程》笔记说明