连接数据库

在java中,所有数据库操作的的接口和类在java.sql中

一个类:DriverManager类

四个接口:Connection,Statement,ResultSet,PreparedStatement。

所有的JDBC连接数据库操作都是固定的

1.假造数据库的驱动程序(向容器加载)

2.数据库连接(通过DriverManager类完成,Connection表示连接)

3.进行数据的CRUD(Statement,PreparedStatement,ResultSet)

4.关闭数据库以及连接(直接关闭连接) ;

 

1.加载驱动程序

  所有 的JDBC都是由不同的数据库生厂商提供的数据库驱动程序,这些都是在JAR文件中给出的,所以日啊哟使用为其配置CLASSPATH,而后设置驱动程序的bao.类

  -找到驱动程序:D:\app\Administrator\product\11.2.0\dbhome_1\jdbc\lib\ojdbc6.jar

Oracle驱动程序:oracle.jdbc.driver.OracleDriver

  -加载类使用CLass.forName("oracle.jdbc.driver.OracleDriver") ;

 

2.连接数据库

  -数据库的连接地址  jdbc:oracle:连接方式

    -要连接本机的mldn数据库jdbc:oracle:thin:localhost:1521:mldn;

  -数据库的用户名  scott

  -数据库的密码

  -数据库服务要打开  Listener和那个MLDN

要连接数据库必须依靠DriverManager类getConnection方法

public static Connection getConnection(String url, String user, String password) throws SQLException


在JDBC里面每一次数据库的连接每一次连接都要使用一个Connection对象封装。

 

 

4.关闭数据库

  Connection的close方法

 

尝试连接数据库:

    private static final String DBDRIVER = "oracle.jdbc.driver.OracleDriver";
    private static final String DBURL = "jdbc:oracle:thin:@localhost:1521:mldn";
    private static final String USER = "scott" ;
    private static final String PASSWORLD = "tiger" ;
    public static void main(String[] args)  throws Exception{
        //第一步 加载数据库驱动程序,此时不需要实例化,会有容器自己负责管理
        Class.forName(DBDRIVER) ;
        //第二步 连接数据库
        Connection conn = DriverManager.getConnection(DBURL,USER,PASSWORLD) ;
        System.out.println(conn) ;
        conn.close();

很多时候是连不上数据库的:

原因分析:

  -有人喜欢改计算机名

  -有可能监听服务出现错误,监听的主机名称不是本机的计算机名称,也不要使用IP地址

    监听配置文件目录中的NETWORK-》addmin->Listener.ora (监听文件) 和tnsnames(监听命名文件)

    Listener的文件:

如果监听有问题会有提示 HOST错误什么的。

  

  可能找不到指定的SID数据库的名字就是SID很多时候该名称不睡自动注册,只有 数据库名称没有SID名称

  打开数据库管理工具

找到  NET Manager

添加数据库

会修改 listener文件

 

结构总结

-----整个数据库连接操作能够的时候都是按照相同的步骤进行

  DriverManager 类取得Connection连接

工厂设计模式


posted @ 2016-02-02 11:18  式微胡不归  阅读(236)  评论(0编辑  收藏  举报