Servlet执行流程

  • 客户端浏览器向Tomcat服务器发送Http请求
  • Tomcat解析web.xml文件,找到对应的url以及servlet-name,根据servlet-name找到对应的servlet进行实例化
  • 执行servlet的service方法
  • 将service执行结果响应给浏览器
  • 浏览器解析然后展示

补充

  • Servlet默认情况下是第一次访问时实例化的,也可以通过web.xml配置load-on-startup,使其在服务器启动的时候实例化
  • Servlet是单例的,利用多线程来提供web服务

Servlet生命周期是什么

  • 装载 - web.xml
  • 创建 - 构造函数
  • 初始化 - init()
  • 提供服务 - service()
  • 销毁 - destory()

Http请求的结构

  • HTTP请求包含三部分:请求行、请求头、请求体

  • get请求没有请求体

Http响应的结构

  • HTTP响应包含三部分:响应行、响应头、响应体

请求转发

  • 请求转发是服务器跳转,只会产生一次请求
  • 请求转发语句是:request.getRequestDispatcher().forward()

响应重定向

  • 重定向则是浏览器端跳转,会产生两次请求
  • 响应重定向语句是:response.sendRedirect()

请阐述Session的原理

Session即用户会话,与客户端浏览器窗口绑定的,存储在服务器内部的数据。

当浏览器第一次向Tomcat发送请求,Tomcat收到请求后,会在运行内存中创建一个全新的存储空间,并赋予一个SessionId;如果我们使用session.setAttribute()方法,会把值存放到内存空间(自定义属性);处理完后响应回传SessionId给浏览器,浏览器会把SessionId保存到Cookie中;第二次请求时,SessionId会发送给Tomcat,Tomcat发现已经存在,调用session.getAttribute()方法会把存储内容直接响应。

JSP九大内置对象是什么

Statement和PreparedStatement的区别

  • PreparedStatement是预编译的SQL语句,效率高于Statement
  • PreparedStatement支持?操作符,相对于Statement更加灵活
  • PreparedStatement可以防止SQL注入,安全性高于Statement

JDBC使用步骤

  • 加载JDBC驱动
  • 创建数据库连接(Connection)
  • 创建命令(Statement)
  • 处理结果(ResultSet)
  • 关闭连接

感谢耐心观看!!!
如有不足,欢迎指出,一起成长!
如有帮助,请点赞给予支持,感谢!

Java开发工程师面试-Web基础与数据处理的更多相关文章

  1. JAVA开发工程师面试(1)

    我已经有很长一段时间没有更新博客了,难道是博主我变懒惰了吗?哎,这样可不行啊,我还有好多知识要学习,要和大家分享.以后我需要更加努力,改掉自己的惰性.本人文采不怎么样,只能是把自己所想的说出来,想和大 ...

  2. Java开发工程师面试-基础

    JDK.JRE.JVM有什么区别? JDK:Java Development Kit 针对Java程序员的产品 JRE:Java Runtime Environment是运行Java的环境集合 JVM ...

  3. Java高级开发工程师面试笔记

    最近在复习面试相关的知识点,然后做笔记,后期(大概在2018.02.01)会分享给大家,尽自己最大的努力做到最好,还希望到时候大家能给予建议和补充 ----------------2018.03.05 ...

  4. 知名互联网公司校招 Java 开发岗面试知识点解析

    天之道,损有余而补不足,是故虚胜实,不足胜有余. 本文作者在一年之内参加过多场面试,应聘岗位均为 Java 开发方向.在不断的面试中,分类总结了 Java 开发岗位面试中的一些知识点. 主要包括以下几 ...

  5. [ Java面试题 ]Java 开发岗面试知识点解析

    如背景中介绍,作者在一年之内参加过多场面试,应聘岗位均为 Java 开发方向. 在不断的面试中,分类总结了 Java 开发岗位面试中的一些知识点. 主要包括以下几个部分: Java 基础知识点 Jav ...

  6. Java开发岗面试知识点解析

    本文作者参加过多场面试,应聘岗位均为 Java 开发方向.在不断的面试中,分类总结了 Java 开发岗位面试中的一些知识点. 主要包括以下几个部分: Java 基础知识点 Java 常见集合 高并发编 ...

  7. Java 开发岗面试知识点

    本文作者在一年之内参加过多场面试,应聘岗位均为 Java 开发方向.在不断的面试中,分类总结了 Java 开发岗位面试中的一些知识点. 主要包括以下几个部分: Java 基础知识点 Java 常见集合 ...

  8. 简历编写技巧-java开发工程师简历实战

    看到一遍简历编写的文章 想到也快找工作了 早晚能够用上 现在摘录如下 640?wx_fmt=jpeg 工欲善其事,必先利其器,这是自古以来的道理.所以如果想找到一份好的工作,一定要先整理一份好的简历. ...

  9. 阿里巴巴-OS事业群-OS手机事业部-系统服务部门招聘Java开发工程师,有意者请进来

    我是阿里巴巴-OS事业群-OS手机事业部-系统服务部的开发工程师,正在招聘Java开发工程师. 以下是职位描述: 岗位名称:Java开发工程师 招聘人数:5人 生效日期:2014-03-12 结束日期 ...

随机推荐

  1. H5 广告落地页

    H5 广告落地页 Landing Page 用于承接通过付费搜索渠道点击进入的用户,所以叫落地页 什么是登陆页面? 在数字营销中,登录页面是专门为营销或广告活动创建的独立网页. 访问者单击电子邮件中的 ...

  2. how to get svg text tspan x,y position value in js

    how to get svg text tspan x,y position value in js <svg xmlns="http://www.w3.org/2000/svg&qu ...

  3. dart 匹配基本map

    var map_start = RegExp(r'^\s*\{\s*'); var map_end = RegExp(r'^\}\s*(,)?\s*'); var hasComma = true; M ...

  4. 使用hive增量更新

    目录 1.增量更新 2.对第一种情况 2.1.准备工作 2.2.更新数据 3.对第二种情况 3.1.准备工作 3.2.方法1 3.3.方法2 参考文末文章,加上自己的理解. 1.增量更新 有一个 ba ...

  5. java对象克隆复制

    原文链接:https://blog.csdn.net/ztchun/article/details/79110096 自己先简单描述总结一下:当想要将一个对象中已有的值直接给另外一个对象的时候,其实并 ...

  6. 使用 Tye 辅助开发 k8s 应用竟如此简单(六)

    续上篇,这篇我们来进一步探索 Tye 更多的使用方法.本篇我们将进一步研究 Tye 与分布式应用程序运行时 Dapr 如何碰撞出更精彩的火花. Newbe.Claptrap 是一个用于轻松应对并发问题 ...

  7. Redis 内存淘汰机制详解

    一般来说,缓存的容量是小于数据总量的,所以,当缓存数据越来越多,Redis 不可避免的会被写满,这时候就涉及到 Redis 的内存淘汰机制了.我们需要选定某种策略将"不重要"的数据 ...

  8. css常用居中方式

    一.水平居中 1.内联元素 父级元素加 text-align: center 即可 html <div class="container"> <a>内联元素 ...

  9. STM32学习笔记——序言

    写AVR已经两年了.如果初中时候玩Arduino也算的话,就是6年. 两年以来,我用AVR单片机完成了两个大项目: AVR单片机教程,一时兴起写的,效果不好: MEDS,参赛用的课题,半完成,比赛都结 ...

  10. Java文件字节流

    //输出和输入流 package com.kangkang.IO; import com.sun.xml.internal.ws.util.xml.CDATA; import java.io.File ...