JAVA 数据库基础及不同数据库连接代码工具

数据库访问几乎每一个稍微成型的程序都要用到的知识,JAVA 访问数据库使用的主要方法是JDBC,它是java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。

Java访问数据库的一般流程:

1.加载数据库驱动
2.建立连接
3.执行sql预计 一般建议使用PreparedStatement
4.处理结果节resultset 一般使用while(rs.next)来获取set里面的值
5.关闭数据库 对于关闭顺序,遵循后开先关。最后打开的链接先关闭

对于事务

所谓事务,就是数据库操作的一系列动作
对于事务的控制 一般有事务提交 commit()和事务回滚 rollback()
使用 JDBC 事务界定时,您可以将多个 SQL 语句结合到一个事务中。
JDBC 事务的一个缺点是事务的范围局限于一个数据库连接。一个 JDBC 事务不能跨越多个数据库

多种数据库连接代码工具

这里的数据库连接工具主要包括MySQL,oracle,DB2,sql server,Sybase等数据库连接,这里需要说明的是,对于不同数据库,需要导入不同的数据库驱动。这里给一个导入maven依赖的网站,你可以根据自己需要的驱动去搜索相应的依赖Maven pom依赖 由于maven对oracle不支持,所以需要自己下载oracle驱动到本地maven仓库

MySQL连接

private static Connection connection = null;

    public static Connection getMysqlConnection() {
        try {
            Class.forName("com.mysql.jdbc.Driver");    //加载数据库连接驱动
            String user = "";                        //用户名
            String pwd = "";                        //密码
            String url = "jdbc:mysql://localhost:3306/databasename";//连接URL
            connection = DriverManager.getConnection(url, user, pwd);//获取连接
        } catch (Exception e) {
            e.printStackTrace();
        }
        return connection;
    }

oracle连接

 public static Connection getOracleConnection() {
        try {
            Class.forName("oracle.jdbc.driver.OracleDriver");    //加载数据库连接驱动
            String user = "";                        //用户名
            String pwd = "";                        //密码
            String url = "jdbc:oracle:thin:@localhost:1521:databasename";//连接URL
            connection = DriverManager.getConnection(url, user, pwd);//获取连接
        } catch (Exception e) {
            e.printStackTrace();
        }
        return connection;
    }

DB2连接

 public static Connection getDB2Connection() {
        try {

            Class.forName("com.ibm.db2.jdbc.app.DB2Driver");    //加载数据库连接驱动
            String user = "";                        //用户名
            String pwd = "";                        //密码
            String url = "jdbc:db2://localhost:5000/databasename";//连接URL
            connection = DriverManager.getConnection(url, user, pwd);//获取连接
        } catch (Exception e) {
            e.printStackTrace();
        }
        return connection;
    }

Sql Server

public static Connection getSqlServerConnection() {

        try {

            Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");    //加载数据库连接驱动
            String user = "";                        //用户名
            String pwd = "";                        //密码
            String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=databasename";//连接URL
            connection = DriverManager.getConnection(url, user, pwd);//获取连接
        } catch (Exception e) {
            e.printStackTrace();
        }
        return connection;
    }

Sybase

 public static Connection getSybaseConnection() {
        try {
            Class.forName("com.sybase.jdbc.SybDriver");    //加载数据库连接驱动
            String user = "";                        //用户名
            String pwd = "";                        //密码
            String url = "jdbc:sybase:Tds:localhost:5007/databasename";//连接URL
            connection = DriverManager.getConnection(url, user, pwd);//获取连接
        } catch (Exception e) {
            e.printStackTrace();
        }
        return connection;
    }

以上就是一些常用的数据库连接工具,都需要导入对于的连接驱动。当然对于连接的驱动,user , pwd,url 等下参数,可以使用Properties文件来读取,这样比较方便修改。properties文件读取是根据key 值来读取的

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 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

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

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值