首页 > 其他分享 >web

web

时间:2023-11-15 20:35:19浏览次数:29  
标签:web 请求 对象 resp req request 服务器

  •  定义Servlet的方法:继承  HttpServlet
  • service的作用
    • 根据获取用户请求的方法不同,执行不同的方法
    • 浏览器使用get请求方法访问就执行doGet方法,使用post请求方式就执行dopos方法;
  • request是请求对象,记录了客户请求的所有数据
    • 接收参数request.getParameter()
             String params_username=request.getParameter("username");  //html的name值
             String params_password=request.getParameter("password");
             String params_province=request.getParameter( "province");
  • response是响应对象,将服务器中的数据回应给客户的对象
    • 写回响应内容;

      response.getWriter().write(response_text);
      
  • Java是面向对象的,所有的事务都是对象
  • Servlet只有1个实例对象;
  • Servlet是线程不安全的;
  • 请求转发
  1. 浏览器发送了一次请求;
  2. easyE和easyF的request是一个对象;
    @WebServlet("/easye")
    public class EasyEServlet extends HttpServlet {
        @Override
        protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    req.getRequestDispatcher("easyf").forward(req, resp);
    }

     

  3. 请求转发可以访问项目中受保护的资源WEB-INF文件夹下的文件;
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
      req.getRequestDispatcher("WEB-INF/form.html").forward(req, resp);
            
        }
  • 重定向
  1. 浏览器发送了两次请求;
  2. 不能访问项目中受保护的资源,要访问本项目内容要写全路径;
  3. 重定向可以访问到项目外的地址;
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        resp.sendRedirect("https://www.baidu.com");
    }
  • Servlet生命周期
  1. 默认在首次被访问时实例化对象,立即执行init方法;
    1. 可以使用loadOnStartup设置实例化对象顺序;
    2. loadOnStartup是负数(默认),就在第一次访问时实例化对象;
    3. loadOnStartup是正数,就在服务器启动时实例化对象,值越小越优先启动;
  2. 每次执行会执行service方法,然后根据请求方式分别执行doget和dopost方法;
  3. 服务正常结束会执行destory方法,被动的调用,作用是关闭Servlet对象中的资源;
  • ajax
  1. ajax异步的Javascript和xml   在页面不刷新的时候发送请求;
                $('[name="username"]').blur(function(){
                    //获取该输入框中的内容
                    var text=$(this).val();
                    //将改内容发送到服务器
                    $.ajax({
                        url:"easyname",//地址
                        data:{username:text},//传递给服务器的参数
                        //处理服务器回应的结果
                        success:function(result){
                            if(result==0){
                                alert("用户名可以使用")
                            }else{
                                alert("用户名被占用")
                            }
                        },//成功访问到服务器,后要执行的代码
                        error:function(){
                            alert("服务器开小差了")
                        }//请求失败  404找不到 500服务器报错  503不允许,权限不够 
                    });
  2. 在java文件获取用户提交的参数;
            String param_name=req.getParameter("username");
            if("zhangsan".equals(param_name)) {
                resp.getWriter().write("1");
            }else {
                resp.getWriter().write("0");
            }

     

  • jsp (基于java的服务端技术)
  1. <%@ %>:定义页面依赖属性,比如指定页面编码方式、引入其他文件等。
  2. <!-- -->:HTML注释;
  3. <%--  --%>:JSP的注释;
  4. <% %>:java代码脚本,局部变量声明;
  5. //:在java代码中的注释;
  6. <%! %>:类中声明脚本,只能声明,不能调用;

 

标签:web,请求,对象,resp,req,request,服务器
From: https://www.cnblogs.com/wxy01/p/17833087.html

相关文章

  • 记录--产品:请给我实现一个在web端截屏的功能!
    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助一、故事的开始最近产品又开始整活了,本来是毫无压力的一周,可以小摸一下鱼的,但是突然有一天跟我说要做一个在网页端截屏的功能。作为一个工作多年的前端,早已学会了尽可能避开麻烦的需求,只做增删改查就行!我立马开......
  • 如何优化Web应用的性能
    如何优化Web应用的性能在今天的互联网时代,Web应用的性能优化变得越来越重要。一个高性能的Web应用能够提供更好的用户体验,带来更高的转化率和更好的用户满意度。本文将介绍一些常见的Web应用性能优化策略,帮助开发者提升Web应用的性能。1.压缩和合并静态资源静态资源(如CSS、JavaScr......
  • 【Python_Django】Django_高级的Python Web框架的基本使用
    Django是一个高级的PythonWeb框架,可以快速开发安全和可维护的网站。由经验丰富的开发者构建,Django负责处理网站开发中麻烦的部分,可以专注于编写应用程序,而无需重新开发准备环境win64系统python3.9Django4.2.6pycharm2021.2.1 创建Django项目1、新......
  • weblogic导出excel遇到的问题记录
    weblogic使用poi导入jar包冲突解决:https://www.cnblogs.com/ljch/p/12045160.htmlhttps://blog.csdn.net/teigakushi/article/details/17305533https://blog.csdn.net/liushengbaba/article/details/84632236仅针对10.3及以上版本。在WEB-INF下面添加weblogic.xml文件:https......
  • Prometheus 黑盒 blackbox的简单-监控web服务是否正常以及证书过期时间
    下载blackboxhttps://github.com/prometheus/blackbox_exporter可以在release里面下载amd64和arm64的东西解压缩之后将二进制和.yml文件都放到/usr/bin目录下面,然后开启nohupblackbox_exporter--config.file="/usr/bin/blackbox.yml"--web.listen-address=:9115&配置......
  • Nginx 可视化 nginxWebUI
    功能说明nginxWebUI是一款图形化管理nginx配置的工具,可以使用网页来快速配置nginx的各项功能,包括http协议转发、tcp协议转发、反向代理、负载均衡、静态html服务器、ssl证书自动申请、续签、配置等。配置好后可一建生成nginx.conf文件,同时可控制nginx使用此文件进行启动与重载,完成......
  • webSocket wss 逆向
    1.WebSocket在浏览器和服务器之间建立持久连接来交换数据的方法。数据可以作为“数据包”在两个方向上传递,而无需中断连接也无需额外的HTTP请求2.简单使用letsocket=newWebSocket("wss://javascript.info/article/websocket/demo/hello");//创建WebSocketsocket.o......
  • JavaWeb--Servlet执行流程&生命周期
    Servlet的执行流程 Servlet生命周期 1、初始化使用了init()方法,只调用一次。2、提供服务使用service()方法(1)、调用时机:servlet被访问时,调用该方法(2)、调用次数:每一次servlet被访问就调用一次 3、服务中止时使用destory()方法,servlet对象被销毁调用时机:内存释放或者服务关闭的......
  • Webstorm 快捷键插入注释时,注释从开头开始而不是从光标处开始的解决办法
    前言在vue的模板的template标签内插入注释时,遇到注释都是从当前行的最开始插入,这个主要是配置的问题,今天特意记录一下解决办法在Vue模板中出现的问题,就到代码样式对应的模板中查找。vue的template是和HTML有关联的,所以需要找HTML的代码样式打开设置->编辑器->代码......
  • JavaWeb--Servlet
    Servlet专门用来开发动态web资源开发技术 导入servlet依赖坐标<dependencies><dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>3.1.0</version><s......