web应用开发入门、servlet创建过程

一、什么是web

1、定义    

        建立在Internet上的一种网络服务,为浏览者在Internet上查找和浏览信息提供了图形化的、易于访问的直观界面,其中的文档及超级链接将Internet上的信息节点组织成一个互为关联的网状结构, 是运行在互联网上的一种分布式系统

2、版本

(1)web1.0

        大量使用静态的 HTML 网页来发布信息,只解决了人对信息搜索、聚合的需求,而没有解决人与人之间沟通、互动和参与的需求

(2)web2.0

       注重交互性,可读可写,是一个利用Web的平台,由用户主导而生成的内容互联网产品模式

(3)web3.0

        提供更个性化、精准化搜索等人工智能服务、数据的自由整合与有效聚合、适合多种终端平台等特点

二、web应用

1、定义

        WEB应用是多个Web资源的集合,是供浏览器访问的程序,也称为Web应用程序

2、组成       

        由多个静态web资源和动态web资源组成,如:HTML、CSS、JS文件,动态Web页面、Java程序、支持jar包、配置文件等

(1)静态web资源

        静态HTML页面的集合,页面中浏览的数据始终是不变, Web页面中的内容无法动态更新,无法实现和用户的交互

(2)动态web资源

        web页面中浏览的数据是由服务器程序产生的,动态WEB具有交互性,WEB的页面的内容可以动态更新    

三、web应用层序架构

1、软件架构模式----C/S(服务端和客户端)

        服务器通常采用高性能的PC、工作站或小型机,客户端需要安装专用的客户端软件

2、软件架构模式----B/S(服务端和浏览器)

        客户端只要安装一个浏览器(Browser),通过浏览器与Web服务器进行数据交互

3、Web应用程序则属于B/S结构的软件系统

四、web应用访问处理过程

五、 URL与URI

1、URL(Uniform Resource Locator)— 统一资源定位符

(1)作用:用于完整地描述Internet上网页其他资源的地址的一种标识方法

(2)组成:协议+服务器地址(端口)+具体资源路径

         

         如果端口号是该协议的标准端口号(80),可以省略端口号

               

2、URI(Uniform Resource Identifier)统一资源标识符

(1)作用:用来唯一的标识一个资源, URI是抽象的定义

3、二者的关系

URL是URI的子集,通过使用地址定位标识资源的形式

六、http协议

1、定义:

        HTTP是HyperText Transfer Protocol(超文本传输协议)的简写,它是TCP/IP协议的一个应用层协议

2、使用时机

        当客户端连接上一个服务器后需要向服务器获取资源,此时需要和服务器进行通讯, HTTP协议就是用于定义客户端与web服务器通迅的格式

3、客户端与服务器传输的数据

        客户端通过HTTP协议向服务器端发送的数据,我们称之为请求消息,反之则为响应消息

(1)HTTP请求信息由4部分组成

        1、请求行:请求方法(GET/POST)、URI、协议/版本

        2、请求消息头:(Request Header)

        3、空行

        4、请求正文

(2)请求方式(请求行中的GET

        POST 、 GET、HEAD、OPTIONS、DELETE、TRACE、PUT

(3)HTTP相应由3部分组成

        状态行、响应头、响应正文

4、HTTP协议规定了Web的基本运作过程,浏览器与Web服务器之间的通信细节

5、HTTP协议位于应用层,建立在TCP/IP的协议之上。 HTTP协议采用可靠的TCP连接,默认为80端口

 七、web服务器

1、常用web服务器

(1)IIS

        Windows产品自带的一种免费的Web服务器,安装配置简单,主要解析的是ASP程序代码

(2)Apache

        免费开源的Web服务器软件,它以跨平台、高效和稳定而闻名,是最流行的Web服务器端软件之一

(3)Tomcat

        Apache-Jarkarta开源项目中的一个子项目,是一个小型、轻量级的支持JSP和Servlet 技术的Web应用服务器

(4)Nginx

        Nginx 服务器是一个高性能的 Web 和反向代理服务器。

(5)WebSphere,IBM公司的产品

(6)WebLogic ,BEA公司的产品

八、JavaWeb应用

1、定义:JavaWeb应用是用Java技术来解决相关Web互联网应用领域的技术总和

2、javaweb应用相关技术

(1)表示层:JSP页面

(2)控制层:Servlet

(3)业务逻辑层:JavaBean

(4)持久层:JDBC

3、jsp(java服务页面)

        JSP页面由HTML代码和嵌入其中的Java代码所组成。

        服务器在页面被客户端所请求以后对这些Java代码进行处理

        将生成的HTML页面返回给客户端的浏览器

4、Servlet

        Servlet是一种小型的Java程序,它扩展了Web服务器的功能。作为一种服务器端的应用,当被请求时开始执行

5、jsp和servlet的区别

        JSP通常是大多数HTML代码中嵌入少量的Java代码,而servlets全部由Java写成

九、javaweb应用工程目录结构

 十、servlet技术

1、什么是servlet

        Servlet是基于Java语言的Web服务器端编程技术,servlet是运行在Servlet容器中的Java类,它能处理Web客户的HTTP请求,并产生HTTP响应。

2、servlet对请求处理和响应过程的步骤

        接收HTTP请求

        取得请求信息,包括请求头和请求参数数据

        调用其他Java类方法,完成具体的业务功能

        实现到其他Web组件的跳转(包括重定向或请求转发)

        生成HTTP响应(包括HTML或非HTML响应)

3、servlet容器

        Servlet运行在服务器端,用于在发送的请求和响应之上提供网络服务、解码基于MIME的请求、格式化基于MIME的响应(主流的Web服务器Tomcat(包含Servlet容器))

4、创建servlet的过程

        创建Java Web项目

        创建Servlet

        实现doPost()或doGet()方法

        声明配置Servlet

        部署运行Servlet

(1)在WebContent下创建Jsp File(创建index.jsp)

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="Login" method="post">
账号: <input  name="usid"><br>
密码: <input type = "password"  name="upwd"><br>
<button>登录</button>
</form>
</body>
</html>

(2)在java Resources-->src下创建Login类

package com.hqyj.ctrl;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/*
 * 把页面的信息提交到Login类里
 * 创建servlet
 * 问:如何实现  (继承类,实现接口)
 */

/*
 * 方式一:继承HttpServlet类
 */

//1、继承HttpServlet类
public class Login extends HttpServlet{
	//创建有参构造器
	
	//2、重写doget方法
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		//判断能不能进入类
		System.out.println("get");
	}
	
	//3、重写dopost方法
	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		System.out.println("post");
	}

}

(3)在WebContent-->WEB-INF-->web.xmml配置servlet服务器

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
  <display-name>web01</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
  <!-- 配置servlet -->
  <!-- 1、创建servlet  服务器为其(Login)初始化 -->
  <servlet>
  	<servlet-name>Login</servlet-name>
  	<servlet-class>com.hqyj.ctrl.Login</servlet-class>
  </servlet>
  <!-- 2、配置请求路径 -->
  <servlet-mapping>
  	<servlet-name>Login</servlet-name>
  	<!-- /代表当前项目路径 -->
  	<url-pattern>/Login</url-pattern>
  </servlet-mapping>
</web-app>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值