• JavaWeb之基础(1) —— 文件、目录结构和创建项目


    1. JavaWeb应用

      JavaWeb应用从大类上分为静态和动态两种。

      静态应用就是传统的HTML文件+素材资源构造的静态网页,不需要特殊的配置。JavaWeb也不是专门用来做静态网站的。

      动态应用是基于数据库服务的网页(可能描述的不是很合适),拥有了更强的功能和更好的交互性。由于这些特性,所以需要严格的对动态网站的要求更加复杂和严格。

      一个最基础的动态网站的组成:

      | 项目目录

        | src

        | web

          | WEB-INF

            | web.xml :核心配置文件

            | lib :放置jar包文件夹

            | classes :放置字节码(编译后)文件

          | 静态资源

            | HTML/CSS/JS/Image/Video……

          | Jsp

     

    2. web.xml

      一个完整而规范的JavaWeb项目中,一定要有一个web.xml文件,这个文件用来配置Filter、Listener、Servlet等。

      当Tomcat启动时,会先读取Tomcat安装目录中conf文件夹下的web.xml作为全局配置,然后再读取项目中的web.xml更新全局配置。

      web.xml常用标签:

    <!-- schema头 -->
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE html>
    <web-app version="4.0" 
        xmlns="http://xmlns.jcp.org/xml/ns/javaee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
        http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd">
    </web-app>
    
    <!-- 文本说明 -->
    <disciption>This is a simple xml.</disciption>
    
    <!-- 配置应用上下文信息 -->
    <context-param>
        <param-name>ContextParameter</para-name>
        <param-value>test</param-value>
        <description>It is a test parameter.</description>
    </context-param>
    
    <!-- 过滤器 filter -->
    <filter>
        <filter-name>setCharacterEncoding</filter-name>
        <filter-class>com.myTest.setCharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>UTF-8</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>setCharacterEncoding</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    
    <!-- 监听器 listener -->
    <listener> 
        <listerner-class>com.listener.SessionListener</listener-class> 
    </listener>
    
    <!-- Servlet -->
    <servlet>
        <servlet-name>snoop</servlet-name>
        <servlet-class>SnoopServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>snoop</servlet-name>
        <url-pattern>/snoop</url-pattern>
    
    <!-- 会话超时配置(min) -->
    <session-config>
        <session-timeout>120</session-timeout>
    </session-config>
    
    <!-- 欢迎页 -->
    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
    </welcome-file-list>
    
    <!-- 错误页(错误码异常类型) -->
    <error-page>
        <error-code>404</error-code>
        <location>/NotFound.jsp</location>
    </error-page>
    <error-page>
        <exception-type>java.lang.NullException</exception-type>
        <location>/Error.jsp</location>
    </error-page>

     

    3. WEB-INF

      WEB-INF目录是web应用的安全目录,作为安全目录就是服务器端可以直接访问,而无法被客户端访问,客户端想访问必须由服务器端进行配置。

      目录里存放着配置web应用的文件web.xml;有存放web需要的jar包目录lib;有存放编译好.class文件的目录classes。将不想被客户端用户直接访问到的文件放置到这个文件夹下,可以有效保障文件安全。

     

    4. 创建简易项目(IDEA)

      (1) 选择 Java Enterprise,选择/添加 JDK版本、EE版本、Tomcat路径和版本,勾选Web Application、create web.xml。

      

      (2) 选择是否使用模板创建。

      

      (3) 设定项目名、选择项目放置目录、选择web.xml的schema版本、配置一个Tomcat(跟第一个步骤一样)。

      

      (4) 这时已经创建好一个简易的JavaWeb项目。

      

  • 相关阅读:
    析构函数中的virtual是否必要?
    程序员必看的书
    UML类图几种关系的总结
    VS 2008的64位编译环境的安装和使用
    VB获取CAD属性值
    30分钟LINQ教程
    ADO.NET
    C#编写Windows服务程序图文教程
    Json的序列化与反序列化以及乱入的k_BackingField
    C#中的委托(Delegate)和事件(Event)
  • 原文地址:https://www.cnblogs.com/NyanKoSenSei/p/11641856.html
Copyright © 2020-2023  润新知