急~~ 为什么这个jsp总报错(调试了一天了。。)高手请帮忙!! ResultSet r = s.executeQuery(sSql);s是在外部变量。可是在函数中不能访问。<%! %> 和<%%>有什么区别呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 声明变量用<%!%>和<%%>都可以。但声明函数必须用<%!%><%!%>声明的为类的实例变量,下次当你请求这个JSP文件时, 这个变量中的值还会存在<%%>声明的为方法中的变量,下次当你请求这个JSP文件时, 这个变量中的值会重新初始化为原定的值 <%@ page contentType="text/html; charset=GB2312" %> <%@ page import="java.sql.*" %> <% String dbUrl = "jdbc:oracle:thin:@localhost:1521:ora8i"; String user = "SYS"; String password = "change_on_install"; Class.forName("oracle.jdbc.driver.OracleDriver"); Connection c = DriverManager.getConnection(dbUrl,user,password); Statement s= c.createStatement(); %> <html> <head> <title> hello </title> </head> <body> <h1>树的显示</h1> <%! String dispTree(int nFid,Statement s) { String sHtml=""; String sSql=""; if(nFid==0) { sSql="SELECT * FROM AKANE.AK_COLUMN WHERE FID is null"; } else { sSql="SELECT * FROM AKANE.AK_COLUMN WHERE FID ="+nFid; } sHtml=sSql; ResultSet r = null; try{ r = s.executeQuery(sSql); while (r.next()) { sHtml+="<li>"+r.getString("FID")+"__"+r.getString("NAME")+"__"+r.getString("ID")+"</li>"; } return sHtml; } catch(SQLException e){ System.out.println(e.getMessage()); return null; } } %> <%=dispTree(0,s)%> </body> </html> JSP最后编译成Servlet有什么区别到tomcat的work目录下看看编译出的java文件就知道了比如test$jsp.java 关于 java 引用传递和值传递,你的知否? 求助,JNDI应用 本公司的界面开发工资很高,程序工资低的可怜 求助入门Java Web Service java多个大文件上传 用jsp怎么样做一个简单的下载页面 PrepareStatement对象setXXX()方法? 如何使用树型控件? jsp:include 的问题 求助:项目在windows环境下面运行正常,在linux环境下面出现返回报500错误 没有错误输出,而且导致部分js不能下载 这个提示错误怎么改啊 为什么我会出现getOutputStream()已经被调用过这样的错误
但声明函数必须用<%!%><%!%>声明的为类的实例变量,下次当你请求这个JSP文件时,
这个变量中的值还会存在<%%>声明的为方法中的变量,下次当你请求这个JSP文件时,
这个变量中的值会重新初始化为原定的值
<%@ page import="java.sql.*" %>
<%
String dbUrl = "jdbc:oracle:thin:@localhost:1521:ora8i";
String user = "SYS";
String password = "change_on_install";
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection c = DriverManager.getConnection(dbUrl,user,password);
Statement s= c.createStatement();
%>
<html>
<head>
<title>
hello
</title>
</head>
<body>
<h1>树的显示</h1>
<%!
String dispTree(int nFid,Statement s)
{
String sHtml="";
String sSql="";
if(nFid==0)
{
sSql="SELECT * FROM AKANE.AK_COLUMN WHERE FID is null";
}
else
{
sSql="SELECT * FROM AKANE.AK_COLUMN WHERE FID ="+nFid;
}
sHtml=sSql;
ResultSet r = null;
try{
r = s.executeQuery(sSql);
while (r.next())
{
sHtml+="<li>"+r.getString("FID")+"__"+r.getString("NAME")+"__"+r.getString("ID")+"</li>";
}
return sHtml;
}
catch(SQLException e){
System.out.println(e.getMessage());
return null;
} }
%>
<%=dispTree(0,s)%>
</body>
</html>
有什么区别到tomcat的work目录下看看编译出的java文件就知道了比如test$jsp.java