JavaWeb中的问题 ---- Servlet和Jsp
servlet和jsp中的问题:
说说jetty与tomcat的区别。
如何修改jetty默认端口?如何修改tomcat默认端口?
如何启动jetty服务器?
简述Servlet的生命周期。
Servlet如何处理用户的请求?
说说get请求和post的请求的区别。
说说相对地址与绝对地址的区别。
说说请求重定向与请求转发的区别。
jsp有哪九大内置对象?servlet如何获取session和application对象?
什么是单例?单例有哪些设计模式?
一、说说jetty与tomcat的区别。
Jetty和Tomcat为目前全球范围内最著名的两款开源的webserver/servlet容器。它们有相似的地方,又有很多不同之处。
相同点:
- Jetty服务器相比于Tomcat服务器来说是一种轻量级的服务器,速度比较快,比较灵活,但不适合做大型项目开放。默认使用 utf-8 字符集,所以不会出现中文乱码的问题。
- Tomcat是一个比较传统的web服务器,功能更强大,适合做大中型项目开发,默认使用 ISO_8859_1 字符集,会出现中文乱码的问题。
- request.setCharacterEncoding(),设置编码的属性值。
- 使用过滤器。(推荐使用过滤器)但过滤器只能解决 post 请求的乱码。
- server.xml中添加 URIEncoding=utf-8属性,解决get请求的乱码。
二、如何修改jetty默认端口?如何修改tomcat默认端口?
三、如何启动jetty服务器?
四、简述Servlet的生命周期。
Servlet 生命周期可被定义为从创建直到毁灭的整个过程。以下是 Servlet 遵循的过程:
- Servlet 通过调用 init () 方法进行初始化。
- Servlet 调用 service() 方法来处理客户端的请求。
- Servlet 通过调用 destroy() 方法终止(结束)。
- 最后,Servlet 是由 JVM 的垃圾回收器进行垃圾回收的。
不是第一次 servlet 请求: 因为 servlet 已经驻留在内存中,所以就不需要再次进行初始化了。
五、Servlet如何处理用户的请求?
首先浏览器向 Web 服务器发送了一个 HTTP 请求,Web 服务器根据收到的请求,会先创建一个 HttpServletRequest 和 HttpServletResponse 对象,然后再调用相应的 Servlet 程序。
在 Servlet 程序运行时,它首先会从 HttpServletRequest 对象中读取数据信息,然后通过 service() 方法处理请求消息,并将处理后的响应数据写入到 HttpServletResponse 对象中。最后,Web 服务器会从 HttpServletResponse 对象中读取到响应数据,并发送给浏览器。
需要注意的是,在 Web 服务器运行阶段,每个 Servlet 都只会创建一个实例对象,针对每次 HTTP 请求,Web 服务器都会调用所请求 Servlet 实例的 service(HttpServletRequest request,HttpServletResponse response)方法,并重新创建一个 request 对象和一个 response 对象。
六、 说说get请求和post的请求的区别。
- 请求数据大小不同: 因为get请求的数据是要追加到URL中,而URL的数据量一般不能超过2K,所以用get请求的方法对数据的大小有限制。而post请求方法是把数据放在消息体中,所以理论上对数据量没有限制。
- 安全性不同: 因为get请求的数据是追加在URL中,外部用户能很方便的看到,从这个角度上来讲不安全。而post方法因为是讲请求放在消息体中,不会直接在URL中显示所以从这个角度来说数据会比较安全。
- 书签建立: get请求可以建立书签;post请求则不能。例如:假设你有一个页面允许用户指定搜索规则。用户可能一个星期之后才回来,想要得到原来的数据,但此时服务器上已经有新的数据了。
- 方法的使用: get用于得到某些东西,只是简单的获取,不会对服务器做任何的改变。post则用户发送数据来进行处理,可以修改服务器上的数据。
- 请求是否幂等: get请求是幂等的,它只是要得到一些东西,不会修改服务器上的内容。它能执行多次,而且不会产生任何不好的副作用。而post不是幂等的,post体中的提交的数据可能用于不可逆转的事务。所以从这个角度上来看的话要慎重使用doPost()功能。
七、说说相对地址与绝对地址的区别。
相对地址: 相对地址是相对当前资源的地址, 容易出错,写法简单。
绝对地址: 绝对地址就是一个文件在磁盘中的全路径, 肯定不会出错,但写起来比较麻烦。
八、说说请求重定向与请求转发的区别。
九、jsp有哪九大内置对象?servlet如何获取session和application对象?
jsp的九大内置对象: out、page、request、response、session、application、exception、pageContext、config
常用的需要掌握的四个: request、response、session、application
十、什么是单例?单例有哪些设计模式?
Java 单例模式是一种常见的设计模式,常见的单例模式有:懒汉式单例、饿汉式单例。
/*** 饿汉式单例模式:在加载类时就已经初始化了一个单例对象。*/
public class SingleTonDemo01 {//私有化构造方法,别的类不能实例化对象private SingleTonDemo01(){}private static SingleTonDemo01 singleTon = new SingleTonDemo01();//别的类通过静态资源来调用这个饿汉单例对象public static SingleTonDemo01 getInstance() {return singleTon;}
}
/*** 懒汉式单例模式:在加载这个类是不会创建一个新的单例对象,* 只有在用的时候才会创建一个单例对象。*/
public class SingleTonDemo02 {//私有化构造方法private SingleTonDemo02(){}private static SingleTonDemo02 singleTon;public static SingleTonDemo02 getInstance() {singleTon = new SingleTonDemo02();return singleTon;}
}
JavaWeb中的问题 ---- Servlet和Jsp相关推荐
- 用servlet路径访问一个html,java web中servlet、jsp、html 互相访问的路径问题
在html">java web种经常出现 404找不到网页的错误,究其原因,一般是访问的路径不对. html">java web中的路径使用按我的分法可以分两种情况,当 ...
- java 打开jsp文件_jsp文件怎么打开(java-web中jsp的理解)
jsp文件怎么打开(java-web中jsp的理解)JSP:Java Server Pages.JSP是一种网页的编码格式,不同于HTML的是JSP中是由 HTML中的标签指令 和 Java逻辑代码 ...
- javaweb学习总结——基于Servlet+JSP+JavaBean开发模式的用户登录注册
一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp ...
- java中的post的作用,JSP、Servlet中get请求和post请求的区别总结
在学习JavaWeb最初的开始阶段,大家都会遇到HttpServlet中的doGet和doPost方法.前两天看<Head First Servlets & JSP>看到其中讲关于 ...
- 基于javaweb的宠物商城系统(java+jsp+javascript+servlet+mysql)
基于javaweb的宠物商城系统(java+jsp+javascript+servlet+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea ...
- 基于javaweb的二手自行车商城系统(java+jsp+javascript+servlet+mysql)
基于javaweb的二手自行车商城系统(java+jsp+javascript+servlet+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/i ...
- 基于javaweb的生鲜商城系统(java+jsp+bootstrap+servlet+mysql)
基于javaweb的生鲜商城系统(java+jsp+bootstrap+servlet+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/ ...
- 基于javaweb的酒店客房管理系统(java+jsp+html+bootstrap+jquery+servlet+mysql)
基于javaweb的酒店客房管理系统(java+jsp+html+bootstrap+jquery+servlet+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 ...
- 基于javaweb的校园运动会管理系统(java+jsp+servlet+javabean+mysql)
基于javaweb的校园运动会管理系统(java+jsp+servlet+javabean+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/ide ...
- 基于javaweb的医院挂号管理系统(java+jsp+javascript+servlet+mysql)
基于javaweb的医院挂号管理系统(java+jsp+javascript+servlet+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/id ...
最新文章
- C++ Primer 5th笔记(chap 16 模板和泛型编程)重载模板和类型转换
- 【ABAP】ALV可编辑数据更新
- 【渝粤教育】国家开放大学2018年秋季 0109-21T公司财务 参考试题
- python3字符串拼接_Python3基础 str + 字符串变量拼接
- 栈/队列 互相模拟实现
- OpenVINO Inference Engine之GetAvailableDevices
- 程序设计与c语言区别,c语言程序设计和c程序设计有什么区别啊
- VS 2013安装教程
- iOS Safari扩展开发构建版本时出现的常见问题的解决方法
- 咔嚓冲印: 用IPHONE冲印LOMO卡片和明信片
- Acwing-4818. 奶牛大学
- 智能手机功能设计实现
- 关于互联网的那些小创意
- 用计算机时按错了按什么键恢复出厂设置,电脑开机按什么键进入一键还原 选择高级—将系统恢复到过去某...
- Oracle spm
- 北京一行(七)——返程
- Quest 3d中Lua script中常用方法1
- 桂微盘 开启6元微交易投资新时代
- 数据仓库架构及基础知识
- Socket通信客户端报错Connection reset