当前位置: 代码迷 >> Java Web开发 >> java连接数据库跪求高手,该如何处理
  详细解决方案

java连接数据库跪求高手,该如何处理

热度:135   发布时间:2016-04-17 00:07:36.0
java连接数据库跪求高手
Java code
public class ConnDB {    public Connection conn = null;     public Statement stmt = null;     public ResultSet rs = null;     private static String propFileName = "/connDB.properties"; // 指定资源文件保存的位置    private static Properties prop = new Properties(); // 创建并实例化Properties对象的实例    private static String dbClassName = "";//定义保存数据库驱动的变量    private static String dbUrl = "";    private static String dbUser = "";    private static String dbPwd = "";        //定义构造方法    public ConnDB() {            try {                        //将Properties文件读取到InputStream对象中            InputStream in = getClass().getResourceAsStream(propFileName);            prop.load(in); // 通过输入流对象加载Properties文件            dbClassName = prop.getProperty("DB_CLASS_NAME",dbClassName); // 获取数据库驱动            dbUrl = prop.getProperty("DB_URL", dbUrl);        //获取URL            dbUser = prop.getProperty("DB_USER", dbUser);    //获取登录用户            dbPwd = prop.getProperty("DB_PWD", dbPwd);        //获取密码                    } catch (Exception e) {            e.printStackTrace();         }    }    public Connection getConnection() {        System.out.println("前conn="+conn);        try {            System.out.println("1111111");            Class.forName(dbClassName);            conn = DriverManager.getConnection(dbUrl, dbUser, dbPwd);            System.out.println("数据库连接成功!"+dbUrl);                    } catch (Exception ee) {            ee.printStackTrace();        }        System.out.println("后conn="+conn);        if (conn == null) {            System.err.println("警告: DbConnectionManager.getConnection() 获得数据库链接失败.\r\n\r\n链接类型:"                            + dbClassName                            + "\r\n链接位置:"                            + dbUrl                            + "\r\n用户"                            + dbUser + "\r\n密码"+ dbPwd);        }        return conn;    }



就是这个代码,当我用主方法去调试的时候,一点问题都没有啊,当我在jsp调用的时候,就说“java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver”,而且当我用jsp调用的时候,System.out.println("前conn="+conn);System.out.println("后conn="+conn); 这两句话得到的都是null值啊。求指点!



------解决方案--------------------
这个很显然是你的jar没放到服务器下面,开发环境可能指定了相应的classpath,但是服务器运行环境没加入相应的包,你可以将数据库的jar包放在服务器的lib文件夹下面再试试
------解决方案--------------------
看到错误,首先就是数据库连接失败, 你的确认自己的 用户名、密码是否是已经在数据库中确认。

我开了下你写的连接数据库,我发现: driver 就是 数据库连接的驱动貌似 不对,我记得以前我写驱动的时候是 java.sql.……(时间太长了,记不清) 自己网上查查

做这个 你的保证 先连上,实在不行 debug……
------解决方案--------------------
探讨
引用:
引用:
引用:
这个很显然是你的jar没放到服务器下面,开发环境可能指定了相应的classpath,但是服务器运行环境没加入相应的包,你可以将数据库的jar包放在服务器的lib文件夹下面再试试

+30
问题解决。对了,问下啊,为什么服务器的lib里也要有……

------解决方案--------------------
探讨

引用:
这个很显然是你的jar没放到服务器下面,开发环境可能指定了相应的classpath,但是服务器运行环境没加入相应的包,你可以将数据库的jar包放在服务器的lib文件夹下面再试试

+30
问题解决。对了,问下啊,为什么服务器的lib里也要有这个包啊?我之前用的话一直是弄在工程的lib目录下。呵呵
  相关解决方案