关于javabean封装访问数据库代码的问题,好几天都还没搞掂,烦ing! 确认你的Odbc数据源是否建立正确?在用户和系统里都加上这个数据源。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你看看编译好的servlet,到底在第几行抛出的异常呢?会不会由于Statement被回收了呢? 干嘛用桥呢?你放到WEBLOGIC看看,它的错误提示要比TOMCAT好。 要那么麻烦啊,呵呵,高手们能不能把你们的具体做法写出来呢,菜鸟感激ing!! ResultSet rs=data.executeQuery(sql); while(rs.next()) { String l=rs.getString(1); out.print(l); }改成这样ResultSet rs=data.executeQuery(sql); String l = “”; while(rs.next()) { l=rs.getString(1);if (l!=null) out.print(l); } 你的JavaBean class b2 是在package javabean里面的,所以在JSP文件里,你需要导入 这个package的。 把JSP的第一行改成 <%@ page language="java" import="java.sql.*, javabean.*" %>试试 看一下编译生成的data_jsp.java文件的第68行,在那里发生了空指针异常。 这位兄弟,首先你用的是什么数据库(sql server,mysql,还是oracle),这些数据库的驱动程序你都下载了,放在什么地方了.我用的是sqlserver2000,舒服器是tomcat+apache.把驱动程序(msbase,mssqlserver,msutil)放在你的发布目录的web-inf\lib文件里面.//ConnectSRX.javapackage srx_db;import java.sql.*;public class ConnectSRX { public ConnectSRX() { } Connection conn = null ; String re = "" ; //设置你的数据库ip String dbip = "192.168.0.28" ;//换成你自己的ip //设置你的数据库用户名和密码: String use = "sa" ;//写你自己的用户名和密码! String pass = "123" ;// public java.sql.Connection getConn(){ try{ //Mysql 数据库的连接方式 //Class.forName("org.gjt.mm.mysql.Driver").newInstance(); //String url ="jdbc:mysql://"+dbip+":3306/"+use+"?user="+use+"&password="+pass+"&useUnicode=true&characterEncoding=gb2312" ; //conn= DriverManager.getConnection(url); //SQL2000的连接方式 Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); conn = DriverManager.getConnection("jdbc:microsoft:sqlserver://192.168.0.28:1433;DatabaseName=srx",use,pass); //写你要调用的数据库 } catch(Exception e){ e.printStackTrace(); } return this.conn ; } public String ex_chinese(String str){ if(str==null){ str ="" ; } else{ try { str = new String(str.getBytes("iso-8859-1"),"gb2312") ; } catch (Exception ex) { } } return str ; } public String gettime() { String datestr = "" ; try { java.text.DateFormat df = new java.text.SimpleDateFormat("yyyy年MM月dd日 HH点ss分") ; java.util.Date date = new java.util.Date() ; datestr = df.format(new java.util.Date()) ; } catch (Exception ex) { } return datestr ; }}//以下是调用bean<%@ page contentType="text/html; charset=GBK" %><%@ page import="java.sql.* " %><jsp:useBean id="dbBean" scope="page" class="srx_db.ConnectSRX" /><html><head><title>创建类别</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"></head><body><%Connection con = dbBean.getConn() ;Statement stmt = con.createStatement() ;String sql="select condition from table ";ResultSet rs = stmt.executeQuery(sql);while (rs.next()){String l=rs.getString(1); out.print(l); } try { stmt.close(); con.close();}catch (Exception ex) {}%></body></html>我也是一个初学者,通过参考别人的才做好.你试一下吗!驱动程序可以到处下载的. 建议楼主不要用什么ODBC桥方式连接数据库,用JDBC方式会好得多,而且更重要的是它更快。 由于没学过正则表达式,麻烦帮忙处理这个问题。 求助关于插件提示问题。 文件上传内存消耗的问题 对oracle的语句,寻mysql中与之同意思的语句 linux 中的 session 怎样结束 怎么样清除IE上自动保存的信息 求一条hql? 请教:小弟用的Apache+resin编译servlet事中文字体不能很好解决,请高手明示。谢谢! 请教一个jsp提交问题,急,在线等 quartz执行任务的时候突然停止不继续执行并且没有任何异常信息 刚学JAVA遇到拦路虎(请问在windows 2000下安装JSP运行环境) 如何实现不用组件实现文件上传
会不会由于Statement被回收了呢?
你放到WEBLOGIC看看,它的错误提示要比TOMCAT好。
while(rs.next())
{
String l=rs.getString(1);
out.print(l);
}
改成这样
ResultSet rs=data.executeQuery(sql);
String l = “”;
while(rs.next())
{
l=rs.getString(1);
if (l!=null)
out.print(l);
}
我用的是sqlserver2000,舒服器是tomcat+apache.
把驱动程序(msbase,mssqlserver,msutil)放在你的发布目录的web-inf\lib文件里面.
//ConnectSRX.java
package srx_db;import java.sql.*;
public class ConnectSRX { public ConnectSRX() {
}
Connection conn = null ;
String re = "" ;
//设置你的数据库ip
String dbip = "192.168.0.28" ;//换成你自己的ip
//设置你的数据库用户名和密码:
String use = "sa" ;//写你自己的用户名和密码!
String pass = "123" ;//
public java.sql.Connection getConn(){
try{
//Mysql 数据库的连接方式
//Class.forName("org.gjt.mm.mysql.Driver").newInstance();
//String url ="jdbc:mysql://"+dbip+":3306/"+use+"?user="+use+"&password="+pass+"&useUnicode=true&characterEncoding=gb2312" ;
//conn= DriverManager.getConnection(url);
//SQL2000的连接方式
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
conn = DriverManager.getConnection("jdbc:microsoft:sqlserver://192.168.0.28:1433;DatabaseName=srx",use,pass);
//写你要调用的数据库
}
catch(Exception e){
e.printStackTrace();
}
return this.conn ;
} public String ex_chinese(String str){
if(str==null){
str ="" ;
}
else{
try {
str = new String(str.getBytes("iso-8859-1"),"gb2312") ;
}
catch (Exception ex) {
}
}
return str ;
} public String gettime() {
String datestr = "" ;
try {
java.text.DateFormat df = new java.text.SimpleDateFormat("yyyy年MM月dd日 HH点ss分") ;
java.util.Date date = new java.util.Date() ;
datestr = df.format(new java.util.Date()) ;
}
catch (Exception ex) { } return datestr ;
}
}
//以下是调用bean
<%@ page contentType="text/html; charset=GBK" %>
<%@ page import="java.sql.* " %><jsp:useBean id="dbBean" scope="page" class="srx_db.ConnectSRX" />
<html>
<head>
<title>创建类别</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<%Connection con = dbBean.getConn() ;
Statement stmt = con.createStatement() ;String sql="select condition from table ";
ResultSet rs = stmt.executeQuery(sql);
while (rs.next()){
String l=rs.getString(1);
out.print(l);
}
try {
stmt.close();
con.close();
}
catch (Exception ex) {}
%>
</body>
</html>
我也是一个初学者,通过参考别人的才做好.你试一下吗!驱动程序可以到处下载的.