本文目录一览:
- 1、如何编译jsp
- 2、开源或免费的JSP博客系统
- 3、JSP的三个编译指令
- 4、tomcat怎么编译jsp文件
- 5、怎么编译jsp
- 6、jsp源代码的编译
如何编译jsp
保存时选文件类型选"所有文件",
然后文件名要加上".jsp",
如果你只有一个jsp文件的话,
放到tomcat的webapps下的root下,
然后启动tomcat,
然后在浏览器运行
开源或免费的JSP博客系统
介绍两个, 都是外国人的作品:
1. Roller Weblogger
2. DLOG4J
1. DLOG4J 3.0是一个多用户博客系统
2. 以个人应用为出发点增加包括相册、音乐、论坛、留言板等功能
3. 增加了好友、黑名单功能
4. 允许设置空间的样式、布局以及关闭和开启某些功能,功能个性化命名等
5. 全面引入标签功能,使包括日记、照片、讨论均可使用标签
6. 支持多种友情链接包括:WEB、WAP、RSS、站内等
7. 全功能WAP支持
8. 允许设置多个超级管理员对各个空间数据进行管理
技术
1. 升级组件Hibernate-3.1.3, Strus-1.2.9, Lucene 2.0.0
2. 采用最新的可视化编辑器FCKEditor,兼容包括IE,FireFox,Netscape等浏览器
3. 支持个人一级域名与空间之间的绑定
4. 采用客户端标识码充分确保表单数据的有效性
5. 大量采用缓存提升系统性能
6. 采用纯div+css结构开发,便于定制页面风格
7. 精心为互联网设计,支持各种集群环境
8. 支持各种操作系统、数据库以及应用服务器
中文支持及演示站点:Java自由人
JSP的三个编译指令
1、JSP的编译指令是同志引擎的消息,它不直接生成输出。编译指令都有默认值,因此开发人员无须为每个指令设置值。常见的编译指令:
page:该指令是针对当前页面的指令
include:用于指定包含另一个页面
taglib:用于定义和访问自定义标签
使用编译指令语法格式:%@ 编译指令名 属性名="属性值"...%
2、page指令
page指令位于JSP页面的顶端,一个JSP页面可以使用多条page指令。page指令属性:
language:声明当前JSP页面使用的脚本语言的种类,因为页面是JSP页面,所以通常都是java,默认值也是java,所以通常无须设置。
extends:指定JSP页面编译所产生的Java类所继承的父类,或所实现的接口。
import:用来导入包。默认导入的包:java.lang.*,javax.servlet.*、javax.servlet.jsp.*、javax.servlet.http.*。
session:设定这个JSP页面是否需要HTTP Session。
buffer:指定输出缓冲区的大小。输出缓冲区的JSP内部对象:out用于缓存JSP页面对客户浏览器的输出,默认值为8KB,可设为none。
autoFlush:当输出缓冲区即将溢出时,是否需要强制输出缓冲区内容。true时输出,false会在buffer溢出时产生一个异常。
info:设置该JSP程序的信息,也可以看作其说明,可通过Servlet.getServletInfo()方法获取该值。
errorPage:指定错误处理页面。
isErrorPage:设置本JSP页面是否为错误处理程序。
contentType:用于设定生成网页的文件格式和编码字符集,即MIME类型和页面字符集类型,默认的MIME类型是text/html,默认的字符集是ISO-8859-1。
pageEncoding:指定生成网页的编码字符集。
注:因为JSP内建了异常机制支持,所以JSP可以不处理异常,即使是checked异常。
3、include指令:可以将一个外部文件嵌入到JSP文件中,同时解析这个页面的JSP语句。include既可以包含静态的文本,也可以包含动态的JSP页面。语法格式:%@include file="relativeURLSpec"%
如果嵌入的文件经常改变,建议使用操作指令,因为它是动态的include语句。
需要注意的是,静态包含还会将被包含页面的编译指令也包含进来,如果两个页面的编译指令冲突,那么页面就会报错。
tomcat怎么编译jsp文件
一、jsp执行过程图解
用户访问jsp页面时,jsp的处理过程如下图所示:
二、预处理阶段
客户第一次请求jsp页面时,jsp引擎会将jsp文件中的脚本代码(HTML)和代码片段(java代码)全部转换为java代码,转换过程非常直观:对于HTML文本只需要用简单的out.println方法包裹,对于java脚本只做保留或简单的处理。
三、编译阶段
预处理阶段把jsp文件解析为java代码,编译阶段jsp引擎把java代码编译成servlet类文件,对于Tomcat,生成的class文件默认情况下存放在Tomcat/work目录下。
四、响应阶段
编译后的class对象被加载到容器中,并根据用户的请求生成HTML格式的响应页面返回给客户端。
在执行jsp网页时,通常分为两个时期:转译时期和请求时期。转译时期jsp页面被翻译成Servlet类,然后编译成Class文件;用户请求时期,servlet类被执行,生成HTML响应至客户端。
五、jsp和servlet的执行速度
jsp的转译和请求都在在第一次访问时进行的,所以用户在第一次访问jsp页面时响应时间会比较长。在之后的请求中,这些工作已经完成,时间延长问题不存在了。在处理后续的访问时jsp和servlet的执行速度是一样的。
六、容器、jsp容器、jsp引擎
jsp要转译为servlet,但是servlet没有main()方法,servlet对象的创建、方法的调用由web容器来实现。以Tomcat为例,先看一下Tomcat的总体结构:
从图中可以看出,Tomcat的核心组建是connector和container,container就是容器。容器就是负责管理控制servlet的应用程序。图中的jasper就是解析jsp的jsp引擎。Tomcat既是servlet容器又是web服务器,也是jsp引擎。
怎么编译jsp
有种简单办法,改变tomcat的启动方法:
进入其安装目录,找到bin文件夹,双击tomcat6.exe,一个类似DOS的窗口便打开了。这样tomcat 也可以正常工作。
而且还多了一个好处:当jsp出错时,错误信息还可以在上述窗口中显示出来。
不是非得手工编译jsp文件之后才能访问它;只要直接通过tomcat访问到了某个jsp页面,那个页面就已经被服务器自动编译了。
另外,并不是后缀名改为jsp,那个文件就是jsp文件了,还与那个文件的内容是否符合jsp语法有关。
jsp源代码的编译
任何工具都不能完成对java 文件和Jsp文件的编译,只能由Tomcat服务器利用JVM虚拟机才能完成对文件的编译。
无论你使用的是什么工具JSP的转义和编译都是由Tomcat服务器完成的。
jsp源代码中的关于html的部分最后会转译成Servlet文件,这也是个java文件最后又服务器编译成class 文件。你看一下这个文件夹下的文件就全明白了Tomcat\work\demo\org\apache\jsp
JSP页面上的所有HTML部分都会转换成Java文件存放在这个文件夹下,包括服务器编译完的生成的Class文件。
由Tomcat编译的。每次重起Tomcat服务器都要对服务器中的java文件编译,生成Class文件,存放在WEB-INF文件夹下classes文件下。JSP页面的内容会先转义成相应的Servlet形式文件,这些文件存放在Tomcat\work\demo\org\apache\jsp文件夹下,并且有相应界面的java文件,在第一次对相应的页面请求时服务器会自动对相应JSP页面的java文件进行编译,生成class文件。JSP的编译过程是先转义然后再编译,当第二次请求时就不需要再编译了。
所以JSP是一次编译多次使用。
但是如果你后台的Java类发生了改变,那么你必须重起启动服务器对Java类文件进行编译。
你看下关于JSP的生命周期。