jdbc连接oracle出现的错误和异常,希望大家帮帮忙!

ysblmm2003 2005-04-19 09:36:38
我的源程序是search_ok.jsp
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page language="java" import="java.sql.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*" %>
<%@ page import="javax.servlet.*" %>
<%
//加载驱动程序,下面的代码为加载Pure Java JDBC Driver驱动程序
String sDBDriver="oracle.jdbc.driver.OracleDriver";
try
{
Class.forName(sDBDriver);
}
catch(java.lang.ClassNotFoundException e)
{
out.println(e.getMessage());
}
%>
<%!
public ResultSet executeQuery(String sql)
{
//用适当的驱动程序连接到数据库
String url="jdbc.oracle:thin:@172.20.3.54:1521:TMSDB";
//数据库连接对象
Connection conn=null;
//语句对象
ResultSet rs=null;

//创建数据库连接
conn=DriverManager.getConnection(url,"system","sa");
//创建一个JDBC声明
Statement stmt=conn.createStatement();
rs=stmt.executeQuery(sql);
return rs;
}
%>

<%!//处理中文问题的自定义函数
public String getStr(String str)
{
try
{
String temp_p=str;
byte[] temp_t=temp_p.getBytes("GBK");
String temp=new String(temp_t,"ISO8859_1");
return temp;
}
catch(Exception e)
{

}
return "null";
}
%>
<%!
public String category(int id)
{
try
{
switch(id)
{
case 0:
return "变电站";
case 2:
return "开闭所";

}
}
catch(Exception e)
{
e.printStackTrace();
}
return "null";
}
%>
<table width="1000" border="0" cellspacing="0" cellpadding="0" align="center">
<tr align="center" valign="middle" bgcolor="#C0C0C0">
<td align="center"><font size=4 color="#FFFFFF" face=隶书>ID</font></td>
<td align="center"><font size=4 color="#FFFFFF" face=隶书>名字</font></td>
<td align="center"><font size=4 color="#FFFFFF" face=隶书>电压等级</font></td>
<td align="center"><font size=4 color="#FFFFFF" face=隶书>类型</font></td>
</tr>

<%
String type;
String strSQL;
type=request.getParameter("type");
strSQL="";

if(type.trim().equals("Biandianzhan")){
strSQL="select * from SUBSTATION where TYPE=0";
}
if(type.trim().equals("Kaibisuo")){
strSQL="select * from SUBSTATION where TYPE=2";
}
if(type.trim().equals("Both")){
strSQL="select * from SUBSTATION order by TYPE asc";
}
//定义关键变量
ResultSet RS=executeQuery(strSQL);
int searchnum=1;
String srch_name;
int id,lever,type_id;
//进行查询,从数据库里取出数据
while(RS.next()){
if(searchnum%2==1){
id=RS.getInt("ID");
srch_name=getStr(RS.getString("NAME"));
lever=RS.getInt("VOLTAGE_LEVEL");
type_id=RS.getInt("TYPE");
out.println("<tr align=center bgcolor=#00FF00>");
out.println("<td align=right><font color=#FFFFFF face=宋体>"+id+"</font></td>");
out.println("<td align=right><font color=#FFFFFF face=宋体>"+srch_name+"</font></td>");
out.println("<td align=right><font color=#FFFFFF face=宋体>"+lever+"</font></td>");
out.println("<td align=right><font color=#FFFFFF face=宋体>"+category(type_id)+"</font></td>");
out.println("</tr>");
searchnum=searchnum+1;
}
else if(searchnum%2==0)
{
id=RS.getInt("ID");
srch_name=getStr(RS.getString("NAME"));
lever=RS.getInt("VOLTAGE_LEVEL");
type_id=RS.getInt("TYPE");
out.println("<tr align=center bgcolor=#00FF00>");
out.println("<td align=right><font color=#FF0000 face=宋体>"+id+"</font></td>");
out.println("<td align=right><font color=#FF0000 face=宋体>"+srch_name+"</font></td>");
out.println("<td align=right><font color=#FF0000 face=宋体>"+lever+"</font></td>");
out.println("<td align=right><font color=#FF0000 face=宋体>"+category(type_id)+"</font></td>");
out.println("</tr>");
searchnum=searchnum+1;
}
}
RS.close();
out.println("<caption>"+"共搜索到<b><font color=Red>"+searchnum+"</font></b>条记录"+"</caption>");
%>
</table>

出现的错误和异常为:
org.apache.jasper.JasperException: Unable to compile class for JSP

An error occurred at line: -1 in the jsp file: null

Generated servlet error:
[javac] Since fork is true, ignoring compiler setting.
[javac] Compiling 1 source file
[javac] Since fork is true, ignoring compiler setting.
[javac] C:\WebServer\Apache2\Tomcat 4.1\work\Standalone\localhost\examples\jsp\search\search_ok_jsp.java:143: illegal character: \65307
[javac] ^
[javac] 1 error



at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:130)
at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:293)
at org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:353)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:370)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:473)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:190)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:494)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:261)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:360)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:604)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:562)
at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:679)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619)
at java.lang.Thread.run(Thread.java:536)

...全文
114 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
ysblmm2003 2005-04-19
  • 打赏
  • 举报
回复
不过还是不行。。郁闷了~
ysblmm2003 2005-04-19
  • 打赏
  • 举报
回复
谢谢阿~
我在检查一下
chinadrencher 2005-04-19
  • 打赏
  • 举报
回复
classes12.zip吧?!

你主铁里内容是编译错误.你代码有问题.自己仔细检查一下
ysblmm2003 2005-04-19
  • 打赏
  • 举报
回复
我用另一个程序测试了数据库的连接,但是出现了
java.sql.SQLException: No suitable driver
我把oracle中的classes12.jar放到了Tomcat 4.1\common\lib,环境变量也设了如下:
classpath;%JAVA_HOME%\lib;%TOMCAT_HOME%\common\lib;D:\software\jdbc\lib\classes12.jar
但是还是出现上面的错误,不知道那里错了?希望大家能帮帮忙

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧