zhougang1008 2012-09-17 19:07
浏览 454
已采纳

jdbc 连接问题

package jdbc工具包;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

import static java.lang.System.out;

public class Register {
//定义 变量
private static String driverclass="jdbc.oracle.driver.OracleDriver";
private static String url="jdbc:oracle:thin:@loaclhost:1521:XE";

private static Connection conn;
private static String username="scott";
private static String password="tiger";

//创建静态方法 使之成为以后应用的模板
public static Connection reg(){
    try {
        //为驱动创建一个对象 并把驱动注册到DriverManager的Driver集合中,
        Class.forName(driverclass);

        //给定数据库驱动路径 用户名 用户密码   创建java和数据库连接
        conn=DriverManager.getConnection(url, username, password);


    } catch (ClassNotFoundException e) {
        out.println("无法匹配所给类型驱动");
    } catch (SQLException e) {
        out.println("数据库连接有误 请检查驱动url 用户名和密码");
    }
    //返回conn看是否连接成功
    return conn;
}

}


package jdbc工具包;

import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;
import static java.lang.System.out;

public class CURD {
//定义变量
private static String sql="update dept set loc='anhui' where deptno=40;";

private static Connection conn;
private static Statement stat;

public void Up(){
    //注册并获得连接
    conn=Register.reg();

    try {
        //创建语句执行中转体
        stat=conn.createStatement();

        //传入可执行的sql语句
        int row=stat.executeUpdate(sql);

        //判断操作是否成功
        if(row==0){
            out.println("没有改变表中数据");
        }else{
            out.println("改变了 表中的数据");
        }
    } catch (SQLException e) {
        out.println("载体未创建成功 需重新检查");
    }finally{
        try {
            //关闭载体资源
            stat.close();
        } catch (SQLException e) {
            out.println("statement资源未能关闭 请检查是否出错");
        }finally{

            try {
                //关闭链接资源    
                conn.close();
            } catch (SQLException e) {
                out.println("未能关闭 链接资源 请检查");
            }
        }
    }

}

}

上面是一个包中的两给类 我用下面代码测试 为什么不输出结果

王之道的人能给个解答:

package jdbc工具包;

import org.junit.Test;

public class TextCURD {
@Test
public void textCURD(){
CURD upd=new CURD();
}

}

  • 写回答

1条回答 默认 最新

  • jinnianshilongnian 2012-09-17 19:09
    关注

    你需要

    @Test
    public void textCURD(){
    CURD upd=new CURD();
    upd.Up();//调用测试方法
    }

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)
  • ¥20 matlab yalmip kkt 双层优化问题
  • ¥15 如何在3D高斯飞溅的渲染的场景中获得一个可控的旋转物体