|
||
辅导计算机软件程序 毕业设计 程序代码 代写做软件程序毕设 免费开发资料 -> 毕业设计 -> JSP的页面自定义函数详谈不使用JAVABEAN | 退出登录 用户管理 |
|
转载请保留本站信息, 谢谢------------------------------------------------------------
发布 www.3q2008.Com 3Q2008.Com原创 免费计算机毕业设计(学习资料) 辅导代做软件项目开发
作者QQ:63353282
转载请保留本站信息, 谢谢------------------------------------------------------------
JSP ASP具体有多像!
对于用DW开发惯了的程序员来说,若没有业务处理,只是数据库和字符串的操作,JSP使用JAVABEAN 开发效率并不是很高, 开发了大量的ASP,JSP 代码,一直困扰的问题就是 ASP 很容易写函数方法JSP却总报错,在搜索的帮助下研究了一天终于发现了JSP页面内写自定义函数的细节!
<%!
JspWriter localOut;
public void msg( s) throws java.io.IOException
{
localOut.println("<script language=javascript>");
localOut.println("alert('"+s+"')");
localOut.println("</script>");
}
public void echo( s) throws java.io.IOException
{ localOut.println(s); }
public void end() throws java.io.IOException
{ localOut.close(); }
public void dp( s) throws java.io.IOException
{
echo(s);
end();
}
%>
<%
localOut=out;
msg( ("Hello world!"));
dp ("dd");
msg( ("Hello world 2!"));
%>
写到页面里面 %@include file="页面.jsp"% 就可以直接调用了,和ASP一样
此时 若是一个ASP程序员,刚刚接触JSP不久,会兴奋的跳起来,原来JSP可以这样.我也是被困扰了很久!
JSP的报错让人迷惑...
再网上翻到的 JSP在TOMCA里面运行机制
Tomcat 5.5\work\Catalina\www.3q2008.com\源码文件夹\org\apache\jsp
里面有页面生成的JAVA代码,只要满足变量存在的范围,JAVA的语法约束,函数就可以写出来!
可以说JSP代码和ASP是一摸一样的!
以下是TOMCAT编译的后台JAVA代码 可以看一下
package org.apache.jsp;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.jsp.*;
public final class _1test_jsp extends org.apache.jasper.runtime.HttpJspBase
implements org.apache.jasper.runtime.JspSourceDependent {
JspWriter localOut;
public void msg( s) throws java.io.IOException
{
localOut.println("<script language=javascript>");
localOut.println("alert('"+s+"')");
localOut.println("</script>");
}
public void echo( s) throws java.io.IOException
{ localOut.println(s); }
public void end() throws java.io.IOException
{ localOut.close(); }
public void dp( s) throws java.io.IOException
{
echo(s);
end();
}
private static java.util.List _jspx_dependants;
public Object getDependants() {
return _jspx_dependants;
}
public void _jspService(HttpServletRequest request, HttpServletResponse response)
throws java.io.IOException, ServletException {
JspFactory _jspxFactory = null;
PageContext pageContext = null;
HttpSession session = null;
ServletContext application = null;
ServletConfig config = null;
JspWriter out = null;
Object page = this;
JspWriter _jspx_out = null;
PageContext _jspx_page_context = null;
try {
_jspxFactory = JspFactory.getDefaultFactory();
response.setContentType("text/html");
pageContext = _jspxFactory.getPageContext(this, request, response,
null, true, 8192, true);
_jspx_page_context = pageContext;
application = pageContext.getServletContext();
config = pageContext.getServletConfig();
session = pageContext.getSession();
out = pageContext.getOut();
_jspx_out = out;
out.write(" \r\n");
out.write(" ");
localOut=out;
msg( ("Hello world!"));
dp ("dd");
msg( ("Hello world 2!"));
out.write(' ');
out.write(' ');
out.write(' ');
} catch (Throwable t) {
if (!(t instanceof SkipPageException)){
out = _jspx_out;
if (out != null && out.getBufferSize() != 0)
out.clearBuffer();
if (_jspx_page_context != null) _jspx_page_context.handlePageException(t);
}
} finally {
if (_jspxFactory != null) _jspxFactory.releasePageContext(_jspx_page_context);
}
}
}
按照这个道理说来,JSP代码第一次运行会动态生成JAVA文件然后在编译,在运行.class文件
了解了 运行原理可以最直接发现问题了 再也不会为报错迷糊了
值得注意的 JAVA函数必须得抛出错误 铺捉错误 函数才可以正常运行,Java就是这么设计的,面向对象都应该有捕获异常的机制
public void echo( s) throws java.io.IOException
希望这篇文章对初学者有帮助 :)
不能下载计算机源码,
毕业设计论文资料, 大作业!报告错误,谢谢 |
|||
找到您需要的资源啦!?本站所有软件高速免费下载,记得下次再来哦,毕业设计免费获取,3Q2008.Com您下载的首选 | |||
软件大小:未知大小 | 下载次数:3 | ||
更新时间:2009/9/2 7:37:55 | |||
下载地址一 |
|||
关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图 - 管理登录 Copyright ©2024 3Q2008.Com 网络 |
|||
|