注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

红尘若梦

生活的色彩

 
 
 

日志

 
 

Jsp页面中定义方法  

2015-10-28 16:26:29|  分类: 技术 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
一般而言,JSP页面最终会被编译一个类Servlet中_jspService方法,所以直接在页面中写方法是会直接报错的。当然您可以将将方法置于其它实体或工具内,再用import方法引用后再调用。只不过有时,想省麻烦,又或者该方法只需要在该页面内生效,就可以使用<%!%>来定义方法,当然页面共用的常量也可以通过这种方式来处理。代码形如:

<%!
static final String SiteName = "我就是上乐乐吧"; //定义公共变量
static final String SiteUrl = "593668.com";
public String getSiteUrl(){
//具体操作码,以下仅为一个示范
return SiteName+"|"+SiteUrl;
}
%>

当然有人会问,除了一些必要的时候,这样做没有任何意义。但其实大家都知道,当jsp文件第一次被处理时,会被转化成一个servlet。jsp引擎首先把jsp文件转化成一个java源文件,如果在转化过程中发生错误的话,会立刻中止,同时向服务器端和客户端发送错误信息报告;如果转化成功了,就会产生一个class类。然后再创建一个 Servlet对象,首先执行jspInit()方法进行初始化操作,由于整个执行过程jspInit()方法只执行一次,所以可以在这个方法中进行一些必要的操作比如连接数据库,初始化部分参数等等,接着执行_jspService()方法,对客户端的请求进行处理,对每一个请求会创建一个线程,如果同时有多个请求需要处理的话就会创建多个线程,由于servlet长期贮存与内存中,所以执行速度快,但是由于初始化需要编译,所以第一次执行还是比较慢的,如果由于某种原因导致jsp网页关闭或者销毁的话会执行jspDestroy()方法。而在jspDestroy()方法里可以执行一些如关闭数据库连接,销毁变量的操作。 jspInit()和jspDestroy()就必须写在<%!%>里,弄明白上面的原理后,利用它们就可以做到JSP在初始化和关闭时做很多的事情哦。
  评论这张
 
阅读(48)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017