已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
我们以两个大型网站为例作比较:51job和智联招聘(先声明我不是为他们作广告,仅以他们为例作技术上的比较)51job采用的是比较“先进”的php技术,而智联用的是比较落后的asp.但我们可能会明显的感觉到51job的反应速度相比智联招聘实在是太慢了,为什么会这样?细心的人可能会察觉到了。智联虽然用的是asp,但他采用了另一种更巧妙的技术-asp生成静态页技术。所有的动态页基本上都转换成了html静态页,不用访问数据库,当然反应快了。下面我们讨论一下jsp怎么转换成html?首先要做一个模板。后缀不限,但一般都用*.template例子#title#title#作者:#author#content# 做一个处理模板的类或者jsp文件、(为说明问题我们从简单入手以一个jsp文件为例) filePath = request.getRealPath(/)+WEB-INF/templates/template.htm; out.print(filePath); String templateContent=; FileInputStream fileinputstream = new FileInputStream(filePath);/读取模块文件 int lenght = fileinputstream.available(); byte bytes = new bytelenght; fileinputstream.read(bytes); fileinputstream.close(); templateContent = new String(bytes); out.print(以下是模板内容:+templateContent+ 以下是置换以后的html内容); templateContent=templateContent.replaceAll(#title#,title); templateContent=templateContent.replaceAll(#author#,editer);/替换掉模块中相应的地方 templateContent=templateContent.replaceAll(#content#,content); / 根据时间得文件名 Calendar calendar = Calendar.getInstance(); String fileame = String.valueOf(calendar.getTimeInMillis() +.html; fileame = request.getRealPath(/)+fileame;/生成的html文件保存路径 out.print(templateContent); FileOutputStream fileoutputstream = new FileOutputStream(fileame);/建立文件输出流 byte tag_bytes = templateContent.getBytes(); fileoutputstream.write(tag_bytes); fileoutputstream.close();文章出处:飞诺网():/course/4_webprogram/jsp/jsp_js/200855/113642.html嗯,核心技术就是这样了,如果大家要求的性能更高,可以改用freemarker做模板。 经过一翻调试,成功了。呵附上源码。JDK 1.5 +ECLIPSE +TOMCAT 5.0.28 + MYSQL 5.0 数据库TEST,表名news 字段:id int 自动增长, Title varchar(20) , Content varchar(200) , Author varchar(10) makeFile.jsp % String filePath = request.getRealPath(/)+template.htm; System.out.println(filePath); String templateContent; FileInputStream fileinputstream = new FileInputStream(filePath); int lenght = fileinputstream.available(); /available() 返回可以不受阻塞地从此文件输入流中读取的字节数。 byte bytes = new bytelenght;fileinputstream.read(bytes); /read(byte b) 从此输入流中将最多 b.length 个字节的数据读入一个字节数组中。fileinputstream.close();/templateContent = new String(bytes);String title;String content;String author;while(Rs.next().templateContent = new String(bytes);/如果不用这句,则替换一次之后,templateContent中就没有#*#标志了。所以要重新生成 title = Rs.getString(Title); content = Rs.getString(Content); author = Rs.getString(Author);out.println(title+*+content+*+author);out.print(以下是模板内容:+templateContent+ 以下是置换以后的html内容);templateContent=templateContent.replaceAll(#title#,title);templateContent=templateContent.replaceAll(#author#,author);/替换掉模块中相应的地方templateContent=templateContent.replaceAll(#content#,content);/ 根据时间得文件名Calendar calendar = Calendar.getInstance();String fileame = String.valueOf(calendar.getTimeInMillis() +.html;fileame = request.getRealPath(/)+Html/+fileame;/生成的html文件保存路径out.print(templateContent);FileOutputStream fileoutputstream = new FileOutputStream(fileame);/建立文件输出流byte tag_bytes = templateContent.getBytes();fileoutputstream.write(tag_bytes);fileoutputstream.close();if(conn!=null) . conn.close();
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 员工职业道德与诚信教育讲课后修改版
- 2026新学期开学第一课收心教育课件(全体学生):开学收心教育
- 阶段素能提升(八)
- 北海2022年事业单位招聘考试模拟试题及答案解析17
- 2026年秋季流感病毒实验室检测科普
- 帐篷篷布购销合同 工程救灾防雨篷布批量采购买卖合同
- 江西省新余市部分名校2026-2027学年高三上学期9月开学摸底考试地理试题(含解析)
- 2026秋冀教版七上数学第1章有理数(4个易错点)
- 2026年秋季小学红色德育教育落地实施总结课件
- 2026年职业技能(城市规划师资格证)试题及答案
- 2026 年国庆少年心怀家国梦砥砺奋进新征程课件
- 2026年手术室专科护士考试试题及答案
- 中医医院2026年第三季度N1护理理论考试试题及答案
- 2026年严重精神障碍患者健康管理试题及答案
- 广东省工程勘察设计服务成本取费导则(2024版)
- 法检系统书记员招聘考试(公共基础知识)模拟试题及答案西藏2026
- 中小学午休时间应急演练脚本
- 《中国学生发展核心素养》
- 内审(气瓶检验机构)(2024版)-符合TSG Z7001-2021
- 手签章管理办法
- 清华同方安全芯片
评论
0/150
提交评论