zoukankan      html  css  js  c++  java
  • JavaWeb环境配置

    Web服务器动态执行的程序可分为两种:
    ①CGI(Common Gateway Interface):通用网关接口。完全用编程语言编写的程序  ②嵌入了程序代码的HTML文档,如:PHP、ASP、JSP文档等

    JavaWeb应用的内容
    Servlet组件:标准S而vlet接口的实现类,运行在服务器端,包含了被Servlet容器动态调用的程序代码
    JSP组件:包含Java程序代码的HTML文档,运行在服务器端。当客户请求JSP文件时,Servlet容器先把它编译成Servlet类,然
    后动态调用它的程序代码
    相关的Java类:开发人员自定义的与web应用相关的Java类
    静态文档:存放在服务器端的文件系统,如HTML文档、图片文件和视频音频文件等。当客户端请求访问这些文件时,Servlet容
    器先从本地文件系统读取这些文件的数据,再把它发送到客户端
    客户端类:由客户端来运行的类。Applet是典型的客户端类
    web.xml文件:JavaWeb应用的配置文件,采用XML格式。该文件必须位于WEB-INF目录下

    JavaWeb应用环境搭建

    ①在eclipse部署JavaWeb项目:添加服务器,创建项目;注意buildpath添加server环境

    ②手工搭建环境:可以把项目部署在Tomcatwebappsmyweb  或者 自定义虚拟目录server.xml 在host标签内添加 <Context path="/hzweb" docBase="c:/myweb" reloadable="true"></Context>

    创建项目的目录结构:创建请求html表单、创建响应请求的Servlet类、创建jsp 

    myweb(web应用根目录,所有web资源都存放于此)

      index.html  表单action="dispatcher"

      index.jsp  <%=request.getAttribute("user")%>

      /src 存放Java源代码

        /mypack

      /WEB-INF:存放web应用配置文件

        web.xml  

        /lib 存放所需各种jar包

        /classes 存放所需各种字节码文件

          /mypack

    =======web.xml===========

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app 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_3_1.xsd" version="3.1" metadata-complete="true">

    <display-name>Welcome to Tomcat</display-name>
    <description>
    Welcome to Tomcat
    </description>
    <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
    <servlet>配置servlet
      <servlet-name>dispatcher</servlet-name>
      <servlet-class>mypack.DispatcherServlet</servlet-class>
    </servlet>
    <servlet-mapping>
      <servlet-name>dispatcher</servlet-name>
      <url-pattern>/dispatcher</url-pattern>
    </servlet-mapping>
    </web-app>

    -------web.xml详解--------

    web.xml文件可以包含如下配置信息:
    Servlet的定义、Servlet的初始化参数、Servlet及JSP的映射、安全域配置参数、welcome文件清单、资源引用、环境变量的定义

    web.xml第一行指定了XML的版本和字符编码,第二行DocType指定文档类型,接下来声明了一个<web-app>元素,它是根元素,所有关于JavaWeb应用的具体配置元素都将加入到这个<web-app>元素中

    <welcome-file-list>设置默认主页
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>

    关于Servlet的配置信息:

    <servlet>可以对应多个servlet-mapping
      <servlet-name>dispatcher</servlet-name>指定Servlet名称
      <servlet-class>mypack.DispatchServlet</servlet-class>指定Servlet对应的字节码文件
      <init-param>

        <param-name>debug</param-name>
        <param-value>2</param-value>

      </init-param>
      <load-on-startup>1</load-on-startup>指定Servlet加载次序,值为自然数,值小的优先加载,若不设定,则将在用户首次访问这个Servlet时加载
    </servlet>

    <servlet-mapping>为Servlet映射一个URL
      <servlet-name>dispatcher</servlet-name>对应指定的Servlet名字
      <url-pattern>/dispatcher</url-pattern>指定访问Servlet的相对URL路径,自定义URL格式
    </servlet-mapping>

    =====ServletDemo========

    package mypack;

    import javax.servlet.*;
    import javax.servlet.http.*;
    import java.io.*;
    import java.util.*;

    public class DispatcherServlet extends GenericServlet{

    private String target = "/index.jsp";
    //响应客户端请求
    public void service(ServletRequest request, ServletResponse response) throws ServletException,IOException{
    String username = request.getParameter("username");//读取表单提交过来的用户名数据
    String password = request.getParameter("pwd");
    System.out.println(username+" "+password);
    request.setAttribute("user",username);
    request.setAttribute("password",password);
    //把请求转发给index.jsp
    ServletContext context = this.getServletContext();
    RequestDispatcher dispatcher = context.getRequestDispatcher(target);//请求转发到目标资源
    dispatcher.forward(request,response);
    }
    }

    注意:编译Servlet时,要将ServletAPI的JAR文件(Servlet-api.jar)加入到classpath中。(或者JRE的lib中)

    应用打包:JavaWeb应用打包为WAR文件:在DOS中 c:myweb jar cvf c:myweb.war *.*

    解包命令:jar xvf c:hzweb.war //把war包放在webapps目录,启动Tomcat会自动解包

    =====HTTP请求与响应============

    URL(Uniform Resource Locator)统一资源定位器。由三部分组成
    ①应用层协议http②主机IP地址或域名③资源所在路径/文件名
    URI(Uniform Resource Identifier)统一资源标识符(资源可以使文本、图片、视频等)
    HTTP(Hypertext Transfer Protocol)超文本传输协议
    http请求由3部分构成:①请求方法、URI和http协议版本②请求头(Request Header)③请求正文(Request Content)
    http请求方式:get、post、head、put、delete
    get:请求服务器文档,并由服务器把文档发送给用户
    post:客户端发送大量信息给服务器,除请求文档URI,好包括请求正文
    head:客户端和服务器交流一些内部数据,通常是为其他请求方式起辅助作用
    put:客户程序把文档上传给服务器
    delete:请求删除服务器上某个文档
    请求头(Request Header):包含许多有关客户端环境和请求正文的有用信息。请求头可以声明浏览器类型、所用语言、请求正文
    类型及长度等
    请求正文(Request Content):和请求头之间必须以空行分隔。请求正文可以包含post方式提交的表单数据
    CRLF(Carriage Return Linefeed):指回车符和行结束符
    HTTP相应格式:①http协议的版本、状态码和描述②响应头(Request Header)③响应正文(Request Content)
    状态码:1xx:信息提示,表示临时的响应 2xx响应成功 3xx重定向 4xx客户端错误 5xx服务器错误
    常见的状态码:200响应成功、400错误的请求、405服务器不支持客户的请求方式、500服务器内部错误
    响应头(Request Header)和请求头一样包含许多有用的信息,如:服务器类型、正文类型及长度等
    响应正文(Request Content):服务器返回的具体数据,它是浏览器真正请求访问的信息,常见的是HTML文档
    MIME(Multipurpose Internet Mail Extension)多用途网络邮件扩展协议,保证客户端和服务器能看懂发送的正文数据

  • 相关阅读:
    hdu 5171(矩阵快速幂,递推)
    hdu 1316(大整数)
    hdu 5170(数学)
    hdu 5167(dfs)
    hdu 5166(水题)
    hdu 5720(贪心+区间合并)
    BestCoder 2nd Anniversary的前两题
    hdu 3065(AC自动机)
    2.3绘制构造线与射线
    查找ARP攻击源
  • 原文地址:https://www.cnblogs.com/geryhz/p/14309559.html
Copyright © 2011-2022 走看看