cgb2110-day16

news/2024/11/18 4:23:32/

文章目录

    • 一,CDN方式使用element-ui
      • --1,测试
    • 二,Servlet
      • --1,概述
      • --2,入门案例
        • 创建SpringBoot工程
        • 配置maven
        • 创建Servlet类
        • 修改启动类
        • 测试
    • 三,Servlet的练习
      • --1,创建HTML网页(在Hbuilder里)
      • --2,创建Servlet程序(在IDEA里)
      • --3,测试
      • --4,调用流程
    • 四,配件文件的形式配置Servlet的程序
      • --1,创建Servlet的程序
      • --2,修改web.xml配置文件
        • 产生web.xml
        • 修改
      • --3,测试
    • 五,Servlet细则
      • --1,继承结构
      • --2,生命周期
      • --3,测试doPost/doGet
        • 创建前端HTML网页
        • 创建Servlet程序
    • 六,解析请求参数
      • --1,模拟Servlet解析请求参数
      • --2,Request对象

一,CDN方式使用element-ui

–1,测试

<!DOCTYPE html>
<html><head><meta charset="UTF-8"><!-- 1.在一个简单的网页中,使用 element-ui的效果先导入vue.js+再导入element-ui的相关资源,下面导入的方式都是在线访问一个网址(cdn)--><script src="https://unpkg.com/vue/dist/vue.js"></script><script src="https://unpkg.com/element-ui/lib/index.js"></script><link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css"></head><body><div id="app"><!-- 2.使用element-ui的按钮元素 --><el-button type="success" >Button</el-button></div></body><script>new Vue({el: '#app'})</script>
</html>

二,Servlet

–1,概述

通过java代码实现的一段服务器的功能.
1, 接受浏览器的请求
2, 给浏览器做出响应
使用步骤:
1, 导入servlet-api.jar包(被springboot工程简化了)
2, 创建Servlet程序
3, 打开浏览器,按照正确的方式来访问Servlet程序

–2,入门案例

创建SpringBoot工程

File - New - porject - Spring initializer 并修改网址 - next - 修改域名和项目名称和jdk8 - next - Finish

配置maven

在这里插入图片描述

创建Servlet类

必须先放在启动类同包里,选中src/main/java/启动类所在的包 – new – servlet/create new servlet - 设置Servlet的名字 -ok

package cn.tedu.cgb2110boot02;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;@WebServlet("/Servlet1")
public class Servlet1 extends HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println("doPost...");}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println("doGet...");}
}

修改启动类

package cn.tedu.cgb2110boot02;import javax.servlet.GenericServlet;
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;//2,Servlet程序想要别浏览器访问,@WebServlet规定了浏览器的访问方式(配置文件)
@WebServlet("/hello/Servlet1")
//1,Servlet程序的实现标准,就有三种方式:implements Servlet,extends GenericServlet
public class Servlet1 extends HttpServlet {//3,doPost()用来处理那些 post的请求(method=post)@Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println("doPost...");}//4,doGet()用来处理那些 get的请求@Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println("doGet...");}
}

测试

在这里插入图片描述

三,Servlet的练习

–1,创建HTML网页(在Hbuilder里)

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>测试 前后端的交互</title></head><body><a href="http://localhost:8080/user/addServlet">点我,访问Servlet程序</a></body>
</html>

–2,创建Servlet程序(在IDEA里)

package cn.tedu.cgb2110boot02;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;@WebServlet("/user/addServlet")
public class Servlet2 extends HttpServlet {//大多数的请求会以get方式来访问,Servlet会主动调用doGet()protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println("doGet已经被触发...");}
}

–3,测试

http://localhost:8080/user/addServlet
在这里插入图片描述

–4,调用流程

在这里插入图片描述

四,配件文件的形式配置Servlet的程序

–1,创建Servlet的程序

package cn.tedu.cgb2110boot02;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;public class Servlet3 extends HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println("doPost");}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println("doGet");}
}

–2,修改web.xml配置文件

产生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_4_0.xsd"version="4.0"><!-- 配置 Servlet3类的访问规则 --><servlet><!-- 给servlet类设置别名 --><servlet-name>Servlet3</servlet-name><!-- 指定了 类的全路径(包名.类名) --><servlet-class>cn.tedu.cgb2110boot02.Servlet3</servlet-class></servlet><servlet-mapping><!-- servlet类的别名,要和上面的servlet-name的值一样 --><servlet-name>Servlet3</servlet-name><!--  规定了浏览器的访问方式 --><url-pattern>/hello</url-pattern></servlet-mapping>
</web-app>

–3,测试

在这里插入图片描述

五,Servlet细则

–1,继承结构

在这里插入图片描述

–2,生命周期

http://localhost:8080/Servlet4

package cn.tedu.cgb2110boot02;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;
//@WebServlet //如果不写值,访问的规则就是类名 /Servlet4
@WebServlet("/a")//修改了浏览器的访问规则  /a
public class Servlet4 extends HttpServlet {//Servlet的生命周期:三个阶段init()   destroy()  service()//会执行多次,访问几次Servlet这个service()就会执行几次.//用来接受请求,给浏览器做出响应protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//获取请求方式String method = req.getMethod();System.out.println("service()开始服务..."+method);}//只执行1次,而且是在Tomcat服务器正常关闭时执行的(Tomcat现在已经被springboot整合了,啥时候真正关闭我们控制不了)public void destroy() {System.out.println("destroy()开始销毁...");}//只执行1次,而且是在这个Servlet程序第一次被访问时执行的public void init() throws ServletException {System.out.println("init()开始初始化...");}
}

–3,测试doPost/doGet

创建前端HTML网页

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>测试 前后端交互</title></head><body><!-- 测试 get/post 提交数据时, 不同的处理方式 --><!-- 会以get方式提交这次请求 --><a href="http://localhost:8080/user/userServlet">点我,访问Servlet程序</a><!-- 会以post方式提交这次请求 --><form method="post" action="http://localhost:8080/user/userServlet">用户名:<input type="text" placeholder="用户名.." name="user"/><br />密码: <input type="password" placeholder="密码.." name="pwd"/><br /><button type="submit">提交</button></form></body>
</html>

创建Servlet程序

package cn.tedu.cgb2110boot02;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;@WebServlet("/user/userServlet")
public class UserServlet extends HttpServlet {//必须是表单 + 必须是method=post的表单,才会触发doPost()protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println("表单数据已经正确提交~~~");}//除了post提交的方式,大部分情况会触发doGet()protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println("超链接访问成功~~~");}
}

六,解析请求参数

–1,模拟Servlet解析请求参数

package cn.tedu.cgb2110boot02;
//java程序里怎么解析用户提交的请求参数  jack  123 ????
public class Test1 {public static void main(String[] args) {String s = "http://localhost:8080/user/userServlet?user=jack&pwd=123";
//        1,按照?切割字符串,得到两个字符串,并存入数组中//[http://localhost:8080/user/userServlet,user=jack&pwd=123]String[] strs = s.split("\\?");
//        2,重点解析数组中 第二部分的字符串String data = strs[1];//user=jack&pwd=123
//        3,按照&切割字符串,又得到数组String[] datas = data.split("&");//[user=jack,pwd=123]
//        4,遍历数组,获取每个数据 user=jack  pwd=123for (String str : datas) {String[] s1 = str.split("=");//[user,jack]
//        5,按照=切割,又又得到数组[user,jack],只要第二个元素jackString input = s1[1];System.out.println(input);//jack 123}}
}

–2,Request对象


http://www.ppmy.cn/news/242035.html

相关文章

国标GB28181介绍

一. 国标的由来 GB28181国标解决平台与平台对接问题 比如A平台大连交警系统需要看B平台如&#xff1a;南京&#xff0c;上海交警系统的视频。需要对接过来&#xff0c;实现调度视频。这时候需要知道他们取流的协议&#xff0c;各个厂家都自定义了一套协议&#xff0c;就很麻烦&…

cgb2104-day18

文章目录 一&#xff0c;Mybatis接口开发的练习--1&#xff0c;需求&#xff1a;查询car表里的所有数据--2&#xff0c;开发步骤&#xff1a; 二&#xff0c;解析SQL的参数--1&#xff0c;需求&#xff1a;查询id1 的汽车数据修改pom.xml&#xff0c;添加了mybatis的jar包创建核…

cgb2109-day18

文章目录 一,优化MyRequest类--1,测试 二,Maven--1,概述1.仓库2,坐标: 能够快速定位jar包3.依赖4.命令: --2,使用步骤1, 解压apache-maven-3.6.3.rar2, 打开解压好的文件夹,里面有一个conf,再里面有一个settings.xml3, 在settings.xml中进行配置, 镜像仓库和本地仓库 --3,把Mav…

cgb2108-day16

文章目录 一,SpringBoot--1,概述--2,使用 二,SpringMVC框架--1,概述--2,工作原理--3,解析请求参数准备创建maven module准备启动类准备资源测试 三,SpringMVC解析get方式的请求参数--1,测试--2,总结 四,RestFul数据的解析--1,测试 五,练习--1,解析请求参数制作一个前端HTML网页…

cgb2108-day11

文章目录 一,JS练习--1,测试 二,DOM--1,概述--2,测试 三,JSON--1,概述--2,测试创建js文件,存放js代码创建html网页文件,引入js代码 四,Vue--1,概述--2,入门案例--3,总结4,改造入门案例 五,Vue的运算符--1,测试 一,JS练习 –1,测试 <!DOCTYPE html> <html><hea…

cgb2108-day14

文章目录 一,练习vue路由--1,代码--2,总结 二,Vue-cli脚手架--1,概述--2,安装1, 安装Nodejs(下一步下一步), 并检查(在DOS窗口里执行DOS命令 node -v)2, 修改npm的镜像(下载的快) :3, 正式安装(没有飘红ERR就行了):4, 下载vue项目5,检测vue项目是否下载完了6&#xff0c;测试项…

cgb2108-day17

文章目录 一,Restful解析参数的练习--1,创建类--2,创建Order类--3,创建前端网页 二,SpringMVC框架解析post提交的数据--1,创建网页,提供表单--2,创建Maven Module--3,创建启动类--4,创建StudentController解析请求参数--5,创建Student类--6,总结 三,扩展把数据入库--0,添加jdbc…

cgb2106-day18

文章目录 一,Mybatis入门案例--0,导入mybatis的jar包--1,核心配置文件--2,映射文件--3,创建User类--4,测试类5&#xff0c;总结 二,Mybatis的练习--1,修改映射文件UserMapper.xml--2,修改测试类--3,总结 三,优化配置--1,别名修改核心配置文件,加别名的代码修改映射文件,使用别名…