jsp调用java的数据库连接,初学jsp,javabean连接数据库调用总是报错,疯了,求大神解决方案...

初学jsp,javabean连接数据库调用总是报错,疯了,求大神

原来一直用asp,现改为jsp,感觉比asp复杂多了

1916215.gif弄个了连接数据库好几天了,一直搞不定,请帮助。环境变量什么:JAVA_HOME,PATH,CLASSPATH都配置过了

网站目录:

1916216.jpg

ConnDB.java代码:

package MyConn;

import java.sql.*;

import java.io.*;

import java.util.*;

public class ConnDB

{

private Connection conn=null;

private Statement stmt=null;

private ResultSet rs=null;

private static String dbClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver";

private static String dbUrl="jdbc:microsoft:sqlserver://10.28.160.8:1433;DatabaseName=dzgs";

private static String dbUser="sa";

private static String dbPwd="123";

public static Connection getConnection()//连接数据库的方法

{

Connection conn=null;

try{

Class.forName(dbClassName).newInstance();

DriverManager.getConnection(dbUrl,dbUser,dbPwd);

}

catch(Exception e)

{e.printStackTrace();

}

if(conn==null)

{System.err.print("警告:DbConnectionManager()获得数据库链接失败.\r\n\r\n链接类型:"+dbClassName+"\r\n链接位置:"+dbUrl+"\r\n用户/密码"+dbUser+"/"+dbPwd);

}

return conn;

}

public ResultSet executeQuery(String sql)//执行查询语句

{  try{

conn=getConnection();

stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);

rs=stmt.executeQuery(sql);

}

catch(SQLException e)

{System.err.print(e.getMessage());

}

return rs;

}

public int executeUpdate(String sql)//执行更新操作(返回更新行数)

{   int result=0;

try{conn=getConnection();

stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);

result=stmt.executeUpdate(sql);

}

catch(SQLException e)

{result=0;

}

try{

stmt.close();

}

catch(SQLException e){

}

return result;

}

public int executeUpdate_id(String sql)//执行更新操作(返回自动编号)

{  int result=0;

try{conn=getConnection();

stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);

result=stmt.executeUpdate(sql);

String ID="select @@IDENTITY as id";

result=stmt.executeUpdate(ID);

if(rs.next()){

int autoID=rs.getInt("id");

result=autoID;

}

}

catch(SQLException e)

{result=0;

}

return result;

}

public void close()//关闭数据库连接

{  try{if(rs!=null)

{rs.close();

}

if(stmt!=null)

{

stmt.close();

}

if(conn!=null)

{

conn.close();

}

}

catch(Exception e)

{e.printStackTrace(System.err);

}

}

}

test.jsp代码

html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

javabean

show javabean:

ResultSet rs=hh.executeQuery("select * from dzgs_user");

if(rs!=null)

{

while(rs.next())

{

out.println(rs.getString(1));

}

}

else

{

out.println("ResultSet is NULL");

}

%>

报错信息

HTTP Status 500 - An exception occurred processing JSP page /test.jsp at line 14

type Exception report

message An exception occurred processing JSP page /test.jsp at line 14

description The server encountered an internal error that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: An exception occurred processing JSP page /test.jsp at line 14

11: 

show javabean:

12:  

13: 

14: ResultSet rs=hh.executeQuery("select * from dzgs_user");

15: if(rs!=null)

16: {

17: while(rs.next())

------解决思路----------------------

ResultSet rs=hh.executeQuery("select * from dzgs_user");

换成

ResultSet rs= null;

try {

rs = hh.executeQuery("select * from dzgs_user");

}catch (Exception e } {

//打印出来

打印出来看看是啥子错误

------解决思路----------------------

DriverManager要用Connection接收啊

------解决思路----------------------

Class.forName(dbClassName).newInstance();

注册时newinstance()什么鬼?

------解决思路----------------------

Class.forName(dbClassName);

conn = DriverManager.getConnection(dbUrl,dbUser,dbPwd);

  • 0
    点赞
  • 0
    收藏
  • 0
    评论
package com.hexiang.utils.dao; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.Properties; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.NamingException; import javax.sql.DataSource; import org.apache.log4j.Logger; public class DBConnection { /** * 获得与数据库连接 * * @param path * @return Connection */ public static Connection getConn(String classDriver, String url, String user, String pwd) { try { Class.forName(classDriver); return DriverManager.getConnection(url, user, pwd); } catch (ClassNotFoundException ex) { ex.printStackTrace(); } catch (SQLException ex) { ex.printStackTrace(); } return null; } public static Connection getConn(DataSource dataSource) { try { return dataSource.getConnection(); } catch (SQLException ex) { ex.printStackTrace(); } return null; } public static Connection getConn(String jndiName) { try { Context ctx; ctx = new InitialContext(); DataSource dataSource = (DataSource) ctx.lookup("java:comp/env/" + jndiName); return dataSource.getConnection(); } catch (NamingException ex) { ex.printStackTrace(); } catch (SQLException ex) { ex.printStackTrace(); } return null; } public static Connection getConn(Properties properties) { try { String driver = properties.getProperty("jdbc.driverClassName"); String url = properties.getProperty("jdbc.url"); String user = properties.getProperty("jdbc.username"); String password = properties.getProperty("jdbc.password"); Class.forName(driver); return DriverManager.getConnection(url, user, password); } catch (ClassNotFoundException ex) { ex.printStackTrace(); } catch (SQLException ex) { ex.printStackTrace(); } return null; } /** * oracle连接 * * @param path * @return Connection */ public static Connection getOracleConn(String

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:1024 设计师:我叫白小胖 返回首页
评论
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值