首页 > 编程语言 >2022-08-29 第二小组 张晟源(JAVA WEB)

2022-08-29 第二小组 张晟源(JAVA WEB)

时间:2022-08-29 22:00:10浏览次数:51  
标签:WEB JAVA 请求 web -- 08 服务器 servlet javax

JAVA web

一,软件架构

1. c/s架构:客户端 / 服务器

2. b/s架构:浏览器 / 服务器

二,资源分类

1. 静态资源:所有用户访问后,得到的结果都是一样的(html,css,js,图片...)

2. 动态资源:每个用户访问相同的资源,得到的结果可能不一样,动态资源在被访问后,需要先转换成静态资源,在返回给浏览器,通过浏览器来进行解析

nginx:动静分离

三,常见的wed服务器

1. 服务器:安装了服务器软件的计算机

2. 服务器软件:接受用户的请求,处理请求后,给出响应

3.wed服务器软件:接受用户的请求,处理请求后,给出响应

  在web服务器软件中,可以部署web项目,让用户通过浏览器访问这些项目

四,常见的服务器软件

动态服务器

  • webLogic : oracle公司出品,大型的web服务器,几乎支持了所有的javaEE规范
  • webSphere : IBM公司,大型的web服务器,几乎支持了所有的javaEE规范
  • jBoss : jBoss公司,中型的javaEE服务器,几乎支持了所有的javaEE规范
  • Tomcat : Apache基金会,中小型的web服务器,支持少量的javaEE规范,开源免费

静态服务器

  • Nginx :代理,反向代理,动静分离,极高的并发
  • Apache 

Tomcat

  • bin :存放一些批处理脚本文件,可处理文件
  • conf :(config)存放tomcat相关配置文件
  • lib :(library)Tomcat依赖的jar包
  • logs :存放日志
  • temo :临时文件目录
  • webapps :Tomcat默认的web应用部署目录
  • work :web应用JSP代码身生成和遍历的临时目录

 

Tomcat的启动

  双击 bin/startup.bat文件

Tomcat的关闭

  双击 bin/shutdown.bat文件

访问

  http:1270.0.1:8080

五,Tomcat部署项目

六,Servlet

Servlet 

  • 就是一个普通的java类 
  • 处理请求,给出响应的类

创建Servlet

1. 实现 javax.servet.Servlet 接口

2. 继承 javax.servlet.GenericServlet 类

3. 继承 javax.servlet.http.HtppServlet 类(*)

引包 放在WEB-INF下的lib包

Servlet生命周期

1. 初始化 -- inti方法

2. 实例化 -- 构造器

3. 调用 serice 方法,处理请求

4. 销毁 -- destory方法

 

前台和后台简单实现

web  / WEB-INF 下新建 lib 导入servelt-api.jar 

index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<!--
    get请求怎么发?
-->
<a href="hello.do">get请求</a>
<form action="hello.do" method="post">
    <input type="submit" value="提交">
</form>
</body>
</html>

实现方式一: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_4_0.xsd"
         version="4.0">

    <!-- 注册servlet   -->
    <!--    <servlet>-->
    <!--        <servlet-name>hello</servlet-name>-->
    <!--        <servlet-class>com.jsoft.afternoon.HelloServlet</servlet-class>-->
    <!--    </servlet>-->
    <!--    <servlet-mapping>-->
    <!--        <servlet-name>hello</servlet-name>-->
    <!--        <url-pattern>/hello.do</url-pattern>-->
    <!--    </servlet-mapping>-->
</web-app>

实现二:java 类 

package ServletTest;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/**
 * 现在我们这个HelloServlet已经是一个真正的serlvet了
 * 已经具备了处理请求,给出响应的功能
 *
 * 一个类如果想要解决问题,必须得有方法!
 *
 * 我们当前的servlet只是具备了处理请求的功能,
 * 它到底处理哪一个请求?
 *
 * 需要对我们的servlet做一个配置
 *
 */
@WebServlet("/hello.do")
public class HelloServlet extends HttpServlet {

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        // 处理get请求
        System.out.println("doGet方法执行了...");
        System.out.println("我是doget方法...");
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        // 处理post请求
        System.out.println("doPost方法执行了...");
    }
}

注意:

  • 在 xml 里注册 servlet 不可与注解同时用,用注解不要用 xml 实现
  • Settings 在 Build,Execution,Deployment 下 Complier 勾选 Build project automatically

 

标签:WEB,JAVA,请求,web,--,08,服务器,servlet,javax
From: https://www.cnblogs.com/shenmimao/p/16635829.html

相关文章

  • 2022-08-29 卢睿 学习心得
    目录1.Vue事件修饰符阻止事件的冒泡屏蔽标签默认行为触发一次对键盘按键进行修饰全局组件的注册局部组件的注册路由2.Web资源分类常见的web服务器概念:常见的服务器软件动态......
  • 大巧不工Web前端设计修炼之道 pdf
    高清扫描版下载链接:https://pan.baidu.com/s/11d2J72Dga2PRQGgpyswM4w点击这里获取提取码大巧不工Web前端设计修炼之道以Web前端设计的流程为主线,以前端设计的方法和原则......
  • 2022-08-29 第二小组 石晓荟
    JAVAWeb01软件架构1、C/S架构:客户端/服务器--------QQ,Typora,腾讯会议。2、B/S架构:浏览器/服务器--------京东,爱奇艺,B站。资源分类静态资源:所有用户访问后,得到的......
  • tp+javascript 输入框/绑定邮箱
    添加数据库and绑定邮箱!!! 实现效果:  数据库设计:CREATETABLE`o_my_resume`(`id`int(11)NOTNULLAUTO_INCREMENT,`name`varchar(255)NOTNULLCOMM......
  • webpack4.15.1 学习笔记(九) — 最最基础的插件使用
    目录html-webpack-pluginclean-webpack-pluginwebpack-manifest-pluginHotModuleReplacementPlugin(内置)处理webpack在编译过程中的某个特定任务的功能模块,plugins选......
  • day28--Java泛型01
    Java泛型011.泛型的理解和好处看一个需求:请编写程序,在ArrayList中添加三个Dog对象Dog对象含有name和age,并输出name和age(要求使用getXXX())先用传统的方法来解决--->引......
  • 220829-漏洞分类再深入
    本篇文章针对漏洞分类问题进行深入的理解和分析。在《网络安全漏洞分类分级指南》(GB/T30279-2020)中,对漏洞分了4大类。第一类代码问题简单来说,就是程序员在写代码的时......
  • 2022-08-29 第六小组 张宁杰 配置tomcat
    事件修饰符用来和事件连用,决定事件触发的条件,或者阻止事件的触发机制事件的冒泡点击div里的按钮,div被点击的事件也被触发.stop修饰符用来阻止事件冒泡.prevent阻止......
  • JavaWeb--SMBMS项目与文件上传
    前言JavaWeb其实就是一个技术的总和,把Web看成一个容器而已主要使用JavaEE技术来实现.在加上各种中间件。整个javaWeb阶段的内容通过实际的案例贯穿学习,所涉及到的技......
  • PostMan请求Web Api接口提示“Bas Request”错误
    一、如果PostMan请求WebApi接口提示“HTTPError400.Therequesthostnameisinvalid”错误出现上述错误的场景:1.在测试服务器上,项目是直接通过VisualStudio直接启......