LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1450|回复: 3

要命了,连接数据库报“-1”错误

 关闭 [复制链接]
发表于 2009-6-10 17:16:37 | 显示全部楼层 |阅读模式
在NetBeans中开发的Web系统,服务器用tomcat,数据库用Postgresql,以前在Netbeans中运行一直正常,现在系统开发有了阶段性成果,打算给头儿看一下,就准备在开发的机器上另配置一个系统,一边头儿试用,但现在出来问题

我的配置过程:
1、在tomcat的bin/startup.sh中加上:
JAVA_HOME=/root/jdk1.5.0_09
export JAVA_HOME

2、在/etc/rc.local中添加startup.sh的路径

3、添加新用户,然后用ftp把Netbeans生成的文件传到新用会目录下

4、修改tomcat/conf/server.xml,更改tomcat运行目录

由于我在netbeans中开发时为了方便,没有设置上下文路径,这样在Netbeans中运行时,可以用根目录访问系统,但现在,如果在tomcat中设置根目录是用户目录,那么在运行时,就需要用根目录+文件目录才能打开,但jsp提交的路径会出错。如果把tomcat根目录设置成用户目录下的文件目录,则运行时,浏览器的根目录下根本就不显示任何内容。
这时候,我打算在NetBeans中先设置好上下文路径,修改jsp提交路径,然后再配置服务器,但这时,我发现在NetBeans中运行时,连接不上数据库了,错误信息提示“-1”

我以为是数据库出了问题,新建了一个数据库,然后把原库的内容导入到新库中,但运行时还是提示“-1”错误。

目前,我已经删除了/etc/rc.local中和tomcat中添加的内容,重启机器,但还是提示“-1”错误,并且,同一机器中在NetBeans中一样使用Postgresql的其他项目都可以正常运行

现在头都大了,实在不知道怎么解决。
 楼主| 发表于 2009-6-10 17:38:31 | 显示全部楼层
如果直接在jsp中写数据库连接,则catch错误提示“org.postgresql.Driver”
try{
            Class.forName("org.postgresql.Driver").newInstance();
            String url="jdbc:postgresql://localhost:5432/new";
            String user=aaa";
            String password="bbb";
            conn=DriverManager.getConnection(url,user,password);
        }
        catch(Exception e){
            out.print("<br>1"+e.getMessage()+"<br>2");
        }
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-6-10 20:37:03 | 显示全部楼层
刚才把数据库和程序导出到另一台机器,运行也是一样出错
问题在什么地方?

错误提示:
1org.postgresql.Driver
2null
5
Linux



程序
<%
        Connection conn=null;
        try{
            Class.forName("org.postgresql.Driver").newInstance();
            String url="jdbc:postgresql://localhost:5432/newdata";
            String user="use";
            String password="pw";
            conn=DriverManager.getConnection(url,user,password);
        }
        catch(Exception e){
            out.print("<br>1"+e.getMessage()+"<br>2");
        }
        
        String strSql="select * from jg";
        try{
            Statement stmt=conn.createStatement();
            ResultSet rs=stmt.executeQuery(strSql);
            if(rs.next()){
                out.print(rs.getString("id")+"<br>3");
            }
            else{
                out.print("没有记录<br>4");
            }
            rs.close();
            stmt.close();
            conn.close();
            }
        catch(Exception e){
            out.print(e.getMessage()+"<br>5");
        }
        //}
        %>
        <br>
        <%
        String os=System.getProperty("os.name");
        out.print(os);
        %>
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-6-10 20:48:47 | 显示全部楼层
原因找到了,原来是我生成项目时,把lib/jdbc.jar给删除了
NetBeans这点很麻烦
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表