Servlet是什么?有什么用?
Servlet(服务器端小程序)是使用Java语言编写的服务器端程序,可以像JSP一样,生成动态WEB页,Servlet主要运行在服务器端,并由服务器执行调用,是一种按照Servlet标准开发的类。
1.servlet是控制层,jsp转换为servlet,用servlet来实现http请求。
2.你可以把applet与servlet对比一下来理解。前者是在客户端浏览器运行的代码片段,而后者是在server端运行的,server一般是一个应用服务器,大的如IBM的WebSphere,小的有Tomcat。根据用户提交的请求,servlet程序在应用服务器端运行后将结果或相关信息返回给客户端浏览器。因为servlet是在服务器端运行的,所以它具有强大的事务处理能力。
3.一方面,虽然说它的大部分功能jsp都可以实现,但为了避免jsp中的scriptlet(可以理解为jsp中的servlet)代码片段与负责表示处理结果的代码片段(这些代码混杂了html标签)搅和在一起,建议不要把过多的servlet代码写在jsp页面中,而只把少量与结果显示密切相关的代码写在页面中。
二、Servlet和JSP之间的联系和区别
【1】JSP第一次运行的时候会编译成Servlet,驻留在内存中以供调用。
【2】JSP是web开发技术,Servlet是服务器端运用的小程序,我们访问一个JSP页面时,服务器会将这个JSP页面转变成Servlet小程序运行得到结果后,反馈给用户端的浏览器。
【3】Servlet相当于一个控制层再去调用相应的JavaBean处理数据,最后把结果返回给JSP。
【4】Servlet主要用于转向,将请求转向到相应的JSP页面。
【5】JSP更多的是进行页面显示,Servlet更多的是处理业务,即JSP是页面,Servlet是实现JSP的方法。
【6】Servlet可以实现JSP的所有功能,但由于美工使用Servlet做界面非常困难,后来开发了JSP。
【7】JSP技术开发网站的两种模式:JSP + JavaBean;JSP + Servlet + JavaBean(一般在多层应用中, JSP主要用作表现层,而Servlet则用作控制层,因为在JSP中放太多的代码不利于维护,而把这留给Servlet来实现,而大量的重复代码写在JavaBean中)。
【8】二者之间的差别就是,开发界面是JSP直接可以编写。
比如在JSP中写Table标记:<table>[数据]</table>;
Servlet需要加入:out.println(“<table>[数据]</table>”)。
JSP文件在被应用服务器(例如:Tomcat、Resin、Weblogic和Websphere),调用过之后,就被编译成为了Servlet文件。也就是说在网页上显示的其实是Servlet文件。Tomcat下面JSP文件编译之后生成的Servlet文件被放在了work文件夹下,JSP中的HTML代码在Servlet都被out出来,而JSP代码按照标签的不同会放在不同的位置。
【9】JSP中嵌入JAVA代码,而Servlet中嵌入HTML代码。
【10】在一个标准的MVC架构中,Servlet作为Controller接受用户请求并转发给相应的Action处理,JSP作为View主要用来产生动态页面,EJB作为Model实现你的业务代码。
Servlet是什么?有什么用?相关推荐
- Ajax接收Java异常_java – 处理来自Servlet的Jquery AJAX响应中的异常
我的servlet代码是 try{ //something response.setStatus(201); out.print("Data successfully saved" ...
- JavaEE学习笔记之Servlet
同一用户的不同页面的共享数据 1.1 cookie技术 1.2 sendRedirect()转向 1.3 隐藏表单 1.4 session技术 ###session技术: 当用户打开浏览器,访问某个网 ...
- 【JavaWeb】servlet与http请求协议
Servlet: 概念: server applet (服务端小程序)运行在服务器端的小程序 Servlet就是一个接口,定义了Java类被浏览器访问到(Tomcat识别)的规则. 将我我们自定义一个 ...
- 使用最新版(2020)IntelliJ IDEA 创建Servlet项目
一:选择左上端的File,创建Project,选择创建Web Application 项目: 注:不勾选Create web.xml 二:设置项目名称:helloworld,并创建一个Servlet( ...
- 2020了,还要学JSP嘛?入个门呗!毕竟Servlet亲兄弟~
目录 1.什么是JSP 2.JSP原理 3.JSP基础语法 jsp表达式 jsp脚本片段 jsp声明 jsp注释 4.JSP指令 5.JSP行为 6.9大内置对象 7.EL表达式 格式 变量 [ ]与 ...
- 来谈谈Servlet~~
目录 1.Servlet简介 2.第一个Servlet程序 3.Servlet原理 4.servlet-mapping的配置 5.关于ServletContext 1.共享数据 2.获取初始化参数 3 ...
- 使用Servlet完成单表的CRUD
实现步骤 第一步:准备一张数据库表.(sql脚本) 第二步:准备一套HTML页面(项目原型)[前端开发工具使用HBuilder] 第三步:分析我们这个系统包括哪些功能 第四步:在IDEA当中搭建开发环 ...
- 适配器(GenericServlet)改造Servlet
JavaWeb系列教程 JavaWeb-Servlet 模拟Servlet本质 使用IDEA开发Servlet程序 Servlet对象的生命周期 适配器(GenericServlet)改造Servle ...
- 使用IDEA开发Servlet程序
JavaWeb系列教程,持续更新 JavaWeb-Servlet 模拟Servlet本质 使用IDEA开发Servlet程序 Servlet对象的生命周期 适配器(GenericServlet)改造S ...
- 模拟Servlet本质
JavaWeb系列教程,持续更新 JavaWeb-Servlet 模拟Servlet本质 使用IDEA开发Servlet程序 Servlet对象的生命周期 适配器(GenericServlet)改造S ...
最新文章
- 服务器定期巡检项目,服务器定期巡检制度..docx
- 16进制颜色识别和搭配规律
- ggplot2箱式图两两比较_作图技巧024篇ggplot2在循环中的坑
- 113_Power Pivot 销售订单之重复购买率及购买间隔天数相关
- 固件是通用的吗_如何升级AirPods固件?
- 框架 go_GoFrame v1.13.1 发布,Go 应用开发框架
- [SQL实战]之查找employees表
- (转)asp.net夜话之十一:web.config详解
- mysql数据库逻辑备份与恢复_Mysqldump逻辑备份与恢复
- Latex插入超链接
- 74hc595级联c语言程序,stm32使用三片74HC595级联程序代码
- 计算机网络的高可用性和分布式处理
- 文件大小与占用空间大小(附带字节转KB,MB公式)
- Banner在线制作网站介绍以及如何Springboot中使用
- 三层HashMap的嵌套
- 图像处理 低频滤波器 笔记
- 为什么加密货币投资者正在放弃他们的美国公民身份
- vue 环信im 发送图片、接收图片
- 【深度学习】1-权重参数全相同值初始化,导致无法训练-python
- 大型分布式网站架构设计与实践