Servlet&&Jsp 概述
主题
Servlet的作用
构建动态网页
Servlet代码初探
Servlet与其他技术的对比
Jsp的作用
Servlet的作用
Servlet是在web服务器或应用服务器上用来动态生成html的java程序。
起到中间件的作用。将web浏览器或者http客户端与http服务器或者应用程序服务器连接起来。为什么需要它?因为有的应用程序服务器并不支持http,那么所有http客户端都将不能从中获取数据或执行操作,因此,servlet负责彼此交流的桥梁。
(1)读取客户发送的显示数据
表单等中的数据
(2)读取由浏览器发送的隐式请求数据
后台的http数据
(3)生成结果
中间件将从http输入流中提取数据与服务器应用程序交互,得到的结果保存为文档
(4)向客户端发送显示数据(文档)
文档可以以各种格式发送,如html,压缩包,二进制(如图像、视频),通常是html,所以servlet最主要的任务是将文档包装到html中。
(5)发客户端发送隐式数据
http后台消息。
构建动态网页
Servlet&&Jsp 介绍如何编写产生html的程序
为什么需要?
1)页面由用户的请求数据得出
搜索引擎和购物车支付等
2)页面由频繁改变的数据得出
天气预报等
3)页面由数据库或其它服务器数据源得出
对数据进行操作、选择,否则将全部数据发送?5TB?
Servlet代码初探
注意4点:
Servlet只是常规java代码,多了新的 java api
多了重要的语句,属于JAVA EE部分的,但语法不变
扩展了httpServlet
覆盖了doGet()方法
//此处应有代码
Servlet与其他技术的对比
1)效率
当请求到来时,分配线程级代码。
在内存中只保存一个Servlet副本。
结束时,Servlet还会保存在内存的,直接储存请求的数据
2)便利
提供了大量的基础构造,可以自动分析和解码HTML表单数据,会话,请求头等。
3)强大
直接与服务器连通
共享资源,如数据库连接
维护多个请求之间的联系。如会话,计算结果缓存
4)廉价
易于推广
5)可移植性
6)安全
不用调用操作系统外壳bash,避免了bash的漏洞
7)主流
Jsp的作用
Jsp是含有java代码的html页面
Jsp和Servlet是等效的。jsp会被编译成Servlet,转换成Servlet运行
那为什么要有Jsp? 具有方便性、易用性、可维护性
对比
jsp重在显示:html的创建和维护
servlet重在执行任务:商业逻辑,执行复杂处理
Servlet&&Jsp 概述的更多相关文章
- MVC开发模式之Servlet+jsp+javaBean
Servlet+jsp+JavaBean组合开发是一种MVC开发模式,控制器Controller采用Servlet.模型Model采用JavaBean.视图View采用JSP. 1.Web开发的请求- ...
- servlet&jsp高级:第三部分
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- JavaWeb(三)JSP概述
一.JSP概述 1.1.JSP简介 一种动态网页开发技术.它使用JSP标签在HTML网页中插入Java代码.标签通常以<%开头以%>结束.JSP是一种Java servlet,主要用于实现 ...
- 一、 JSP概述 二、JSP的语法结构 三、JSP内置对象
一.JSP概述###<1>概念 java服务器页面 可以编写动态页面 其内部是以HTML标签为主,可以在HTML标签嵌套java代码 jsp文件以.jsp为后缀 jsp本质上就是一个Ser ...
- 小峰servlet/jsp(1)
一.scriptlet标签: 通过scriptlet标签我们可以可以在jsp理嵌入java代码: 第一种:<%! %> 可以在里面定义全局变量.方法.类: 第二种:<% %> ...
- NoClassDefFoundError: javax/servlet/jsp/jstl/core/Config
今天调试SSM框架项目后台JSOn接口,报出来一个让人迷惑的错误:NoClassDefFoundError: javax/servlet/jsp/jstl/core/Config 上网查了一下别人的博 ...
- springMVC: java.lang.ClassNotFoundException: javax.servlet.jsp.jstl.core.Config
springMVC开发web的时候,报错:java.lang.ClassNotFoundException: javax.servlet.jsp.jstl.core.Config 原因:未引入jstl ...
- Struts框架——(一)用Servlet + JSP演示Struts基本原理
一. 用Servlet + JSP演示Struts基本原理 struts是开源项目.它通过采用 Java Servlet/JSP 技术,实现了基于Java EE Web应用的MVC的应用框架.Stru ...
- Javabean+servlet+JSP(html)实例应用
大家都知道Javabean+servlet+JSP是最简单的MVC模式.的确,在一个小型的项目中,这个模式完全够用. 它优雅并且简洁.加上jQueryui的完美展示效果,让这个模式看起来非常合适.当然 ...
随机推荐
- Volatile的作用
众所周知,volatile关键字可以让线程的修改立刻通知其他的线程,从而达到数据一致的作用.那么它具体涉及到哪些内容呢? 关于缓存 计算机最大的存储空间就是磁盘(硬盘),但是访问的速度也是最慢的,价格 ...
- 安卓和 java 学习笔记
1.访问权限为 private 的成员变量或方法,需要执行setAccessible() 方法,并将入口参数设置为 true; 否则不允许访问. 2.为了保证线程的安全,可以使用同步块 synchro ...
- 每天学一点Docker(2)
容器runtime 容器runtime是容器真正运行的地方,runtime需要和操作系统kernel紧密结合,为容器提供运行环境. 比如说,java程序比作一个容器,JVM就是runtime.JVM为 ...
- Git与GitHub学习笔记(八)git如何同时同步提交到码云和GitHub上
前言: 今天github push代码一直push不上去,打算就备份一份代码带国内开源码云上. Github容易出现的情况是: 国内访问速度比较慢, 如果被墙掉的话,就直接没发使用了 如果开源个PHP ...
- Linux 多线程下载工具:axel
wget 应该是最常用的下载工具了,但是其不支持多线程下载. axel 安装 epel 源有 axel 的二进制包,可以使用 yum 安装. yum install epel-release yum ...
- Invalid bound statement (not found): com.shizongger.chapter2.mapper.UserMapper.insertUser 解决方案
在配置MyBatis时报错信息如下: Invalid bound statement (not found): com.shizongger.chapter2.mapper.UserMapper.in ...
- python如何玩“跳一跳”!(windows安桌版本请进!)
最近"跳一跳",很火爆,有木有? 看了一下网上的教程,动作搭建了一下环境,就可以用脚本自动跑起来啦!!! 下面说一下android手机的实现过程: 首先,是python环境的搭建 ...
- 第七章:Python基础のXML操作和面向对象(一)
本課主題 XML介绍与操作实战 shutil 模块介绍与操作实战 subprocess 模块介绍与操作实战 初探面向对象与操作实战 本周作业 XML介绍和操作实战 對於浏览器返回的字符串有以下幾種: ...
- Python 调用让系统自动调用默认程序打开文件?
windows上可以使用os.startfile os.startfile(file) linux上可以使用xdg-open subprocess.call(["xdg-open" ...
- master_pos_wait函数与MySQL主从切换
背景 主从切换是高可用MySQL架构的必要步骤(即使用不发生,也要有备无患).一般设置为双M(M1.M2),假设当前状态为写M1,而M2只读,切换的大致流程如下: 1. 停止应用写M1,将M1设置为 ...