幼儿饰品瑜伽美体用品微软
投稿投诉
微软创意
爱情通信
用品婚姻
爱好看病
美体软件
影音星座
瑜伽周边
星座办公
饰品塑形
搞笑减肥
幼儿两性
智家潮品

经典技术回顾和借鉴JSP编程

  前言:在CGI(通用网关接口)编程风行的日子,人们纷纷寻思简化并让其更加灵活的新方法和新技术,包括PHP、JSP、ASP。1997年SUN公司推出了servlet,1999年初,SUN公司推出了JSP,实际上在servlet基础上修改而成。JSP即Java服务器页面(JavaServerPage),将HTML和JAVA代码使用某种方式结合起来,完成前后端的有效交互。本文通过JSP历史回顾和应用总结来审视过去和开拓未来。1。从实例项目入手
  其实,从现在看来JSP依然极具魅力,据了解很多JSP老项目还在维护。下面使用STS作为IDE构建一个实例项目,先体验其效果。1。1动态web项目模板
  如下图,使用newdynamicwebproject创建项目:
  1。2修改文件编码
  进入preferences修改JSP文件的编码:
  1。3编写简单的JSP文件
  新增一个JSP文件到WebContent目录,如下
  然后检查并修改编码,应该都是UTF8,如下图:
  如果不是,就修改。1。4运行和测试
  选中项目名称,点邮件菜单的Runas。。。Runonserver
  之后出现如下界面:
  若没有现存的tomcatserver,就自己加一个。点Finish。然后自动调用chrome,界面如下:
  自动调用浏览器设置的地方是windowsWebbrowser菜单:
  1。5增加功能:显示IP地址
  (1)显示ip地址:getRemoteAddr
  (2)变量声明lt;!
  (3)表达式lt;
  2。JSP语言介绍2。1语法
  语法
  描述
  lt;注释
  JSP注释,注释内容不会被发送至浏览器甚至不会被编译
  HTML注释,通过浏览器查看网页源代码时可以看见注释内容
  lt;
  代表静态lt;常量
  gt;
  代表静态常量
  在属性中使用的单引号
  在属性中使用的双引号2。2指令
  指令
  描述
  lt;page。。。
  定义页面的依赖属性,比如脚本语言、error页面、缓存需求等等
  lt;include。。。
  包含其他文件
  lt;taglib。。。
  引入标签库的定义,可以是自定义标签2。3Page指令属性
  属性
  描述
  buffer
  指定out对象使用缓冲区的大小
  autoFlush
  控制out对象的缓存区
  contentType
  指定当前JSP页面的MIME类型和字符编码
  errorPage
  指定当JSP页面发生异常时需要转向的错误处理页面
  isErrorPage
  指定当前页面是否可以作为另一个JSP页面的错误处理页面
  extends
  指定servlet从哪一个类继承
  import
  导入要使用的Java类
  info
  定义JSP页面的描述信息
  isThreadSafe
  指定对JSP页面的访问是否为线程安全
  language
  定义JSP页面所用的脚本语言,默认是Java
  session
  指定JSP页面是否使用session
  isELIgnored
  指定是否执行EL表达式
  isScriptingEnabled
  确定脚本元素能否被使用2。4行为标签
  行为标签语法:jsp:行为名称attributevalue
  语法
  描述
  jsp:include
  用于在当前页面中包含静态或动态资源
  jsp:useBean
  寻找和初始化一个JavaBean组件
  jsp:setProperty
  设置JavaBean组件的值
  jsp:getProperty
  将JavaBean组件的值插入到output中
  jsp:forward
  从一个JSP文件向另一个文件传递一个包含用户请求的request对象
  jsp:plugin
  用于在生成的HTML页面中包含Applet和JavaBean对象
  jsp:element
  动态创建一个XML元素
  jsp:attribute
  定义动态创建的XML元素的属性
  jsp:body
  定义动态创建的XML元素的主体
  jsp:text
  用于封装模板数据
  使用bean是最好用的行为标签,例如,我们创建一个java类:
  然后,在JSP中使用useBeasetPropertygetProperty三个行为标签:
  测试:
  2。5隐含对象(默认创建的对象)
  对象
  描述
  request
  HttpServletRequest类的实例
  response
  HttpServletResponse类的实例
  out
  PrintWriter类的实例,用于把结果输出至网页上
  session
  HttpSession类的实例
  application
  ServletContext类的实例,与应用上下文有关
  config
  ServletConfig类的实例
  pageContext
  PageContext类的实例,提供对JSP页面所有对象以及命名空间的访问
  page
  类似于Java类中的this关键字
  Exception
  Exception类的对象,代表发生错误的JSP页面中对应的异常对象2。6判断语句
  判断语句包括两种:ifelse和switchcase
  示例如下:
  2。7循环语句
  循环语句包括两种:for和while
  示例如下:
  2。8运算符
  类别
  操作符
  结合性
  后缀
  ()〔〕。(点运算符)
  左到右
  一元
  !
  右到左
  可乘性
  左到右
  可加性
  左到右
  移位
  左到右
  关系
  左到右
  相等不等
  !
  左到右
  位与
  左到右
  位异或
  左到右
  位或
  左到右
  逻辑与
  左到右
  逻辑或
  左到右
  条件判断
  ?:
  右到左
  赋值
  右到左
  逗号
  ,
  左到右2。9变量类型
  布尔值(boolean):true和false;
  整型(int):与Java中的一样;
  浮点型(float):与Java中的一样;
  字符串(string):以单引号或双引号开始和结束;
  Null:null。2。10表单处理
  以下提供一个例子来说明:
  (1)创建FormProcess。jsp文件:
  其中提供了两个input输入框。
  (2)再创建FormProcessMain。jsp文件,如下:
  其中使用request对象的getParameter方法来获取Get参数。2。11过滤器
  JSP过滤器实际上和Servlet过滤器一样。
  以下通过示例来说明:
  (1)在web。xml中增加一个过滤器:
  (2)然后创建过滤器处理类com。hunting。LogFilter,如下:
  2。12JSTL(JSP标准标签库)
  (1)核心标签:
  标签
  描述
  用于在JSP中显示数据,就像lt;。。。
  用于保存数据
  用于删除数据
  用来处理产生错误的异常状况,并且将错误信息储存起来
  与我们在一般程序中用的if一样
  本身只当做和的父标签
  的子标签,用来判断条件是否成立
  的子标签,接在标签后,当标签判断为false时被执行
  检索一个绝对或相对URL,然后将其内容暴露给页面
  基础迭代标签,接受多种集合类型
  根据指定的分隔符来分隔内容并迭代输出
  用来给包含或重定向的页面传递参数
  重定向至一个新的URL。
  使用可选的查询参数来创造一个URL
  (2)格式化标签:
  标签
  描述
  使用指定的格式或精度格式化数字
  解析一个代表着数字,货币或百分比的字符串
  使用指定的风格或模式格式化日期和时间
  解析一个代表着日期或时间的字符串
  绑定资源
  指定地区
  绑定资源
  指定时区
  指定时区
  显示资源配置文件信息
  设置request的字符编码
  (3)SQL标签:
  标签
  描述
  指定数据源
  运行SQL查询语句
  运行SQL更新语句
  将SQL语句中的参数设为指定值
  将SQL语句中的日期参数设为指定的java。util。Date对象值
  在共享数据库连接中提供嵌套的数据库行为元素,将所有语句以一个事务的形式来运行
  (4)XML标签:
  标签
  描述
  与lt;。。。,类似,不过只用于XPath表达式
  解析XML数据
  设置XPath表达式
  判断XPath表达式,若为真,则执行本体中的内容,否则跳过本体
  迭代XML文档中的节点
  和的父标签
  的子标签,用来进行条件判断
  的子标签,当判断为false时被执行
  将XSL转换应用在XML文档中
  与共同使用,用于设置XSL样式表3。JSP历史
  下面从前后端分离角度展现JSP的产生和发展脉络。3。1互联网的产生
  1957年美国国防部(DoD)组建了高级研究计划局(ARPA)。1961年7月,MIT工程师LeonardKleinrock发表InformationFlowinLargeCommunicationNets论文。1962年8月,MIT工程师J。C。R。Licklider和W。Clark发表OnLineManComputerCommunication论文。19672月,在ARPAIPTOPI会议上,LarryRoberts组织了有关ARPANET设计方案的讨论。互联网雏形ARPANET由此产生。
  互联网最初的目的是访问和复制文件从一台计算机到另一台远程计算机,两台计算机之间有网络,但速度慢,而且经常专用于大学或者研究机构是昂贵的,不支持大规模用户。1970年,ARPANET主机开始使用网络控制协议(NCP),这就是后来的传输控制协议(TCP)的雏形。
  人们基于TCPIP构建了更快的网络,其中应用层文件传输协议(FTP)规范提供了交换这些文件的标准方法。1973年,文件传输协议(FTP)推出,用于在异构系统之间交换文件。FTP传输的文件并不能有效查看,因此发明了超文本标记语言(HTML),使我们能够在互联网上看到文档。3。2万维网的产生
  1989年蒂姆伯纳斯李写了一份关于建立一个通过网络传输超文本系统的报告,其中创建了单行HTTP协议,这个协议在1991年被命名为HTTP0。9,万维网由此产生,1996年超文本传送协议HTTP1。0发布。
  尽管FTP可以传输HTML文件,但是并没有提供有效小文件传输机制和无状态管理能力,超文本传输协议(HTTP)才被发明出来专门用于传输HTML文档,HTTP是一种无连接无状态协议,这使得许多短连接更加有效,而且可以不使用密码就可以获取HTML文档,这让万维网真正到来,真正体现了互联网的快捷、免费思维。3。3通用网关接口的产生
  上面提到了TCPIP,HTTP,FTP都是通信管道,后来大家把注意力转向内容。我们感兴趣的文件随着IT技术的发展而快速爆发,例如数据库快速发展导致各种应用系统快速发展。同时,数据的更新频度更加快速,这种即时信息推动了互联网流量快速增长。通过基于HTTP的HTML,最终用户可以浏览位于远程服务器上的文件。
  当时,远程服务器属于局域网,局域网连接到互联网需要专用设备,可惜的是这种专用设备并不好用(直到后来路由器和交换机被思科发明出来),因此通用网关接口(CGI)规范被制定出来,它允许Web服务器超越文件服务器并从内部数据库中获取数据,并动态更改HTML。
  最初,CGI是在1993年由美国国家超级电脑应用中心(NCSA)为NCSAHTTPdWeb服务器开发的,当年NCSA内部有一份简单的CGI规范说明,后来在1997年KenCoar领导的团队制定了CGI1。1规范,并提交RFC。CGI规范是Web应用程序开发中的一个重大突破,确保了相同的CGI程序在不同的Web服务器上工作。
  CGI成为传递动态内容的最常用手段。只是互联网发展太快了,CGI的性能无法跟上,每个对CGI脚本的请求都会产生一个单独的进程。这种设计让CGI在高峰负载时也消耗大量资源。解决方案非常多,功能性和可伸缩性成为关键。
  许多CGI替代者都采用服务器端编程技术来实现业务逻辑,包括ASP、ColdFusion、PHP和Perl等等,其中至今仍然在大量使用的是PHP,PHP继承自一个老的工程,名叫PHPFI,PHPFI在1995年由RasmusLerdorf创建,最初只是一套简单的Perl脚本,用来跟踪访问他主页的人。然后,即使是PHP,最终由于可移植性和面向对象的编程设计,Java超越了PHP和其他CGI平台。3。4JSP的产生
  Java自1991年诞生以来已经走过了很长的一段路,当时Sun公司推出了绿色计划,试图集成数字消费设备,如电视机、CD播放机和计算机。OAK(名字来自高斯林窗外的一棵橡树!)诞生了,但直到出现HotJava和小程序,才开始活跃起来。1995年,Sun发布了开源Java,向微软发起了挑战,反响巨大。这促使Java深入到服务器端开发领域。
  Sun在Java中加入了Internet功能,并在1997年6月发布了servlet接口。servlet以CGI替代为目标。与CGI为每个请求启动一个进程不同,servlet使用更细粒度的线程在单个进程中运行。servlet采用了更有效的体系架构,能够应对互联网上的复杂情况。Javaservlet为开发JavaWeb组件提供了基础。servlet优点是每个额外的并发请求带来的额外开销非常小。
  servlet技术需要真正的Java编程技能才能有效应用,外观和良好体验为web应用带来了巨大方便,但是图像支持还不是那么良好。于是Sun公司在1998年发布了JavaServerPages(JSP),这来自于微软ASP的启发,也有些人说是复制的,它使得编写动态HTML页面变得容易。
  使用JSP的使用非常简单,有些工具(例如Dreamweaver)能让非程序员来构建WWW网站前端页面,当然要servlet带动后端服务器代码(例如javabean)才能完成完整的WWW网站构建工作,这样构建的WWW网站具有模块化、可维护、可伸缩和可移植优点,从而完成简单网站到复杂Web应用程序的转变,从而实现前后端分离。
  JSP官方版本1。0和1。1都出现在1999年,都很受欢迎,版本1。2出现于2001年,是目前最流行的实现。3。5Node的产生
  JSP终究还是含有Java代码,前后端没有彻底分离,因此人们在2009年发明了nodejs,这让前端开发人员崛起,他们单纯使用HTMLCSSJavaScript前端语言就能完成前端页面的开发,而不需要使用含有各种后端交互印记的标签。
  于是,基于nodejs的React、Angela、VUE框架成为潮流。

打压后的副作用生效了?阿里扛下大旗,剑指海外市场众所周知,科技领域是我国的短板,尤其是在先进技术上,始终无法突破,不是被卡脖就是被打压,处境非常艰难。面对中国如此大体量的市场,西方国家宁愿失去这笔大单子也不愿意给我们供货,目……詹姆斯我们开始提升我的出场时间,加时导致我多打5分钟今日,湖人135133客场加时险胜爵士,迎来四连胜。赛后,湖人前锋勒布朗詹姆斯在场边接受了采访。当被问到今日出战38分钟是否意味着他已经基本解除了自复出以来的出场时间限制……中国制造业将成为过去式吗?谁会成为制造业新王者?现在各个国家都在争取从中国的制造产业布局中转移出来,他们的企业高管们都在全球寻找新的企业建厂地点,并且在拥有制造业产业布局的国家进一步加强和当地的合作,希望能够摆脱跟我们之间强……新疆托克逊万亩杏花逐渐绽放来源:人民网新疆频道nullnullnullnullnullnullnull3月14日,新疆托克逊县的万亩杏园内,杏花已开始逐渐……每天吃一根胡萝卜,会有什么好处?你是否经常听说过吃胡萝卜对视力有好处这句话?那么,你是否知道胡萝卜的营养价值和其他好处呢?每天吃一根胡萝卜,真的会对我们的身体有益吗?接下来,让我们一起来探究一下吧。胡萝……西安准备好了!2023年世界泳联跳水世界杯各项保障工作全部就西安网讯(记者韩涛马莹)记者从今天(3月29日)西安市政府新闻办举办的2023年世界泳联跳水世界杯(西安)新闻发布会了解到,2023年世界泳联跳水世界杯将于4月1416日在西安……威刚发布新款威龙D35DDR43600内存,单条32GBIT之家3月30日消息,威刚现已发布新款威龙D35DDR43600内存,预计将在近期上市。官方表示,全新设计的新游戏威龙D35内存为无光版,后续更会有RGB版推出,提供消……掌握ChatGPT4。0电商行业的全新玩法!导语:随着AI技术的不断发展,ChatGPT4。0已经成为一个引领潮流的关键词。那么,如何借助ChatGPT4。0技术玩转电商行业呢?让我们一起探讨这个全新领域的玩法。正……GoogleChrome现在可以让用户一键停用所有扩展程序网络浏览器扩展在增强浏览体验方面很重要。然而,你并不是每次都需要它们,因为它们有时会起到反作用。为了解决这个问题,Google正在为用户提供一个简单的方法,以禁用Chrome浏……湖北竹溪再次发现两个世界罕见植物新物种大果溲疏和洪氏婆婆纳最近,湖北省十堰市竹溪县啟良生物研究所甘啟良的团队在国际植物学杂志Phytokey上发表了两篇论文,揭示了两个世界罕见的植物新物种大果溲疏和洪氏婆婆纳。这是继去年10月发表巴山……截至目前,最好用的3款小米手机,性能强价格不贵截至目前,最好用的3款小米手机,性能强价格不贵红米Note11TproRedmiNote11TPro搭载天玑8100处理器,预装MIUI13操作系统,前置1600万像素摄……民企重振信心的根本,在哪里?近三年民企发展遭遇了空前的困难和挑战,具体数据在这里就不一一列举,日前举办的达沃斯论坛少数的中国民营企业家参会引起广泛热议,或许这不能代表一切,但背后的原因不禁让人深思盘……
A股上演绝地反击,如何看待大盘突破3000点?今天A股继续反弹,收盘突破了3000点,走出了反弹关键性的一步。两市上涨家数3666家,下跌1090家,涨跌比为3。36,总成交额10521亿元,资金流入86亿元。汽车、生物医……在希望的田野上丰收画卷别样美央广网金溪10月17日消息(记者王一凡)2022年10月16日,无人机拍摄下的江西省抚州市金溪县左坊镇卢家村一带,成片的优质稻喜获丰收,金黄的稻田与民居、公路、青山等相映成趣,……贵州将建4个核心城市,形成两大都市圈,遵义地位堪比贵阳贵州位于我国西南地区,属于西部大开发的范围。从面积和人口来看,贵州都属于中等体量的省份。2021年的GDP为19586亿,排在全国第22位,处于中等偏下的位置,这主要是地……低谷期的时候努力向上,成为别人眼中遥不可及的梦《把一个人丢下》文崇培龙小树林不再寂静阳光投射进来欢快的鸟叫声,此起彼伏一群鸟儿迅速地飞出像离弦的箭轻快地落下高压线上我好……散文丨十里画廊之美程家双秋天,十里画廊是别样的美。十里画廓之美,美在观光小火车。观光小火车车头是十二生肖,福猪号、牛牛号、白蛇号生肖是卡通画,造型美观,幽默可爱,与十里画廊的风景相得……连杀上届冠亚军!曼城猛虎出笼,世界杯疲劳症是啥?世界杯仅仅结束4天之后,英格兰联赛杯赛场就早早开始了一场强强对决。曼城最终3比2击败卫冕冠军利物浦,顺利晋级8强。蓝月亮此役看上去丝毫没有世界杯后的疲惫感,哈兰德开场仅10分钟……大博弈因为关注潍柴,对孙和平如何带领北机涅槃重生特别期待大博弈定档1105潍柴动力是潍坊、山东乃至全国的骄傲。一直以来,对潍柴情有独钟,始终关注着它的发展变化。据有关资料介绍,《大博弈》北方机械厂原型来自潍柴,孙和平原型是谭旭……当代散文菜园的红萝卜文邱立新秋天是收获的季节,除了收粮食,也是收秋菜的好时候。菜园子里,最常种的秋菜当属白菜萝卜,是便宜的大众菜。俗话说,冬吃萝卜夏吃姜,《本草纲目》记载:萝卜味甘辛、无毒、……罗德曼前妻揭露我们曾在球馆风流,他夜店通宵仍统治比赛乔丹纪录片《最后之舞》播出后,意外将NBA名将罗德曼带回了人们的视野。在纪录片中,罗德曼和美艳前妻卡门伊莱克特拉一同出镜,回忆起公牛王朝的光辉事迹。卡门还大谈特谈她……华为开始还击,P50Pro8256G直接降2000元,对用户又到了可以低价入手高端机的时节,可能这段时间换新用户都在纠结于选择华为还是iPhone14系列,这也正常,这两个品牌是高端机中口碑最好的,实力也是最棒的,换一款高端机花费不少,……佟丽娅与5岁儿子睡前录音曝光,原来你私底下这么教孩子的前段时间佟丽娅分享了一段睡前录音,引来了200多万人围观。5岁儿子朵朵一口小奶音软软地感叹当你的儿子真好。佟丽娅温柔地反问妈妈哪好啦?朵朵告诉她:你让我认识到好多好吃的好玩的,……多次出轨的陈小艺,像个巴掌扇在丈夫脸上,24年的婚姻有苦难言1991年,陈小艺23岁,成了《外来妹》的女主角。她自己都没有想到,一个土气农村妹子的励志故事成了自己辉煌人生的开篇。鲜花掌声中,她以为自己会一直这样下去。找……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网