栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

cgb2110-day16

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

cgb2110-day16

文章目录
    • 一,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,测试


	
		

		
		
		
		
		  
	
	
		
Button
二,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)
    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        System.out.println("doPost...");
    }
    //4,doGet()用来处理那些 get的请求
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        System.out.println("doGet...");
    }
}


测试

三,Servlet的练习 –1,创建HTML网页(在Hbuilder里)


	
		
		测试 前后端的交互
	
	
		
		点我,访问Servlet程序
		
	

–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



修改


    
    
        
        Servlet3
        
        cn.tedu.cgb2110boot02.Servlet3
    
    
        
        Servlet3
        
        /hello
    

–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网页


	
		
		测试 前后端交互
	
	
		
		
		
		点我,访问Servlet程序
		
		
		
用户名:
密码:
创建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=123
        for (String str : datas) {
            String[] s1 = str.split("=");//[user,jack]
//        5,按照=切割,又又得到数组[user,jack],只要第二个元素jack
            String input = s1[1];
            System.out.println(input);//jack 123
        }
    }
}

–2,Request对象
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/665665.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号