Java开发工程师面试-Web基础与数据处理
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基础与数据处理的更多相关文章
- JAVA开发工程师面试(1)
我已经有很长一段时间没有更新博客了,难道是博主我变懒惰了吗?哎,这样可不行啊,我还有好多知识要学习,要和大家分享.以后我需要更加努力,改掉自己的惰性.本人文采不怎么样,只能是把自己所想的说出来,想和大 ...
- Java开发工程师面试-基础
JDK.JRE.JVM有什么区别? JDK:Java Development Kit 针对Java程序员的产品 JRE:Java Runtime Environment是运行Java的环境集合 JVM ...
- Java高级开发工程师面试笔记
最近在复习面试相关的知识点,然后做笔记,后期(大概在2018.02.01)会分享给大家,尽自己最大的努力做到最好,还希望到时候大家能给予建议和补充 ----------------2018.03.05 ...
- 知名互联网公司校招 Java 开发岗面试知识点解析
天之道,损有余而补不足,是故虚胜实,不足胜有余. 本文作者在一年之内参加过多场面试,应聘岗位均为 Java 开发方向.在不断的面试中,分类总结了 Java 开发岗位面试中的一些知识点. 主要包括以下几 ...
- [ Java面试题 ]Java 开发岗面试知识点解析
如背景中介绍,作者在一年之内参加过多场面试,应聘岗位均为 Java 开发方向. 在不断的面试中,分类总结了 Java 开发岗位面试中的一些知识点. 主要包括以下几个部分: Java 基础知识点 Jav ...
- Java开发岗面试知识点解析
本文作者参加过多场面试,应聘岗位均为 Java 开发方向.在不断的面试中,分类总结了 Java 开发岗位面试中的一些知识点. 主要包括以下几个部分: Java 基础知识点 Java 常见集合 高并发编 ...
- Java 开发岗面试知识点
本文作者在一年之内参加过多场面试,应聘岗位均为 Java 开发方向.在不断的面试中,分类总结了 Java 开发岗位面试中的一些知识点. 主要包括以下几个部分: Java 基础知识点 Java 常见集合 ...
- 简历编写技巧-java开发工程师简历实战
看到一遍简历编写的文章 想到也快找工作了 早晚能够用上 现在摘录如下 640?wx_fmt=jpeg 工欲善其事,必先利其器,这是自古以来的道理.所以如果想找到一份好的工作,一定要先整理一份好的简历. ...
- 阿里巴巴-OS事业群-OS手机事业部-系统服务部门招聘Java开发工程师,有意者请进来
我是阿里巴巴-OS事业群-OS手机事业部-系统服务部的开发工程师,正在招聘Java开发工程师. 以下是职位描述: 岗位名称:Java开发工程师 招聘人数:5人 生效日期:2014-03-12 结束日期 ...
随机推荐
- CSP & CORS
CSP & CORS 内容安全策略 跨域资源共享 CSP https://developers.google.com/web/fundamentals/security/csp google ...
- Jupyter All In One
Jupyter All In One Jupyter Architecture https://jupyter.readthedocs.io/en/latest/projects/architectu ...
- node.js & read argv
node.js & read argv https://nodejs.org/docs/latest/api/process.html https://flaviocopes.com/node ...
- website 性能检测 & 前端性能优化
website 性能检测 & 前端性能优化 https://cdn.xgqfrms.xyz/ https://mobile.xgqfrms.xyz/ PageSpeed Insights ht ...
- HOC in Depth
HOC in Depth Higher-Order Components https://reactjs.org/docs/higher-order-components.html 1. wrappe ...
- USDN稳定币应用区块链旅游业
比特币是区块链1.0时代的标志性产品,稳定币则是区块链2.0时代的标志性产品.在稳定币鼻祖USDT爆出"超发"新闻后曾引发市场的动荡,之后新兴稳定币如春笋般涌现.据不完全同济,目前 ...
- 翻译:《实用的Python编程》02_02_Containers
目录 | 上一节 (2.1 数据类型) | 下一节 (2.3 格式化) 2.2 容器 本节讨论列表(list),字典(dict)和集合(set). 概述 通常,程序必须处理许多对象. 股票的投资组合 ...
- 国际标准时间格式ISO8601
日期表示法 年由4位数字组成YYYY,或者带正负号的四或五位数字表示±YYYYY.以公历公元1年为0001年,以公元前1年为0000年,公元前2年为-0001年,其他以此类推.应用其他纪年法要换算成公 ...
- TERSUS无代码开发(笔记04)-CSS样式设置
CSS样式设置 1.常用显示样式 大小尺寸 说明 间距边距 说明 各类颜色 说明 width 宽 margin 外边距 color 颜色 height 高 pad ...
- python实现斑马打印机网络打印
最近一个礼拜调研了下斑马打印机怎样实现网络打印. 缘起: 之前实现打印方式是直接使用USB接口连接PC,使用串口通讯提供一套打印服务,在系统界面配置相关参数,即可调用打印服务: 后来业务需求变化,现场 ...