Java连接Oracle数据库(单件模式)

一、连接数据库

与连接mysql数据库区别不大,同样是由jdbc连接,注意修改数据库名称、用户名和密码。

二、关于单件模式()

单件模式作为23种设计模式中的一种,也有他独道的用处。

描述如下:

Singleton Pattern:

  Ensure a class only has one instance , and provide a global poit of access to it.

     意思为,单件模式保证了一个类仅有一个实例,并提供一个访问它的全局访问点。

这与数据库连接的意图不谋而合,所以我这次用了单件模式来实现数据库的连接。

代码如下:

package conn;
//单件模式创建连接
public class COnn {
    	private static COnn cOnn ;
	    static String driverClass; //oracle的驱动
	    static String url;  //连接oracle路径方式 “”gfs“”是要建立连接的数据库名 1521端口
	    static String user;   //user是数据库的用户名
	    static String password;  //用户登录密码
	    
	    public static String getDriverClass() {
			return driverClass;
		}
		public static void setDriverClass(String driverClass) {
			COnn.driverClass = driverClass;
		}
		public static String getUrl() {
			return url;
		}
		public static void setUrl(String url) {
			COnn.url = url;
		}
		public static String getUser() {
			return user;
		}
		public static void setUser(String user) {
			COnn.user = user;
		}
		public static String getPassword() {
			return password;
		}
		public static void setPassword(String password) {
			COnn.password = password;
		}
		private COnn() {
	    	driverClass="oracle.jdbc.driver.OracleDriver";
	    	url="jdbc:oracle:thin:@localhost:1521:BOOKSALES";
	    	user="lhy";
	    	password="lhy";
	    }
	    static {
	    	cOnn = new COnn();
	    }
	    public static COnn getConn() {
	    	return cOnn;
	    }  
}

测试代码:

@Test
	public void testConnection() throws SQLException, ClassNotFoundException {
		COnn connection = COnn.getConn();
		Connection conn = null;
		 try {
		        //首先建立驱动
		        Class.forName(COnn.getDriverClass());
		        //驱动成功后进行连接
		        conn=DriverManager.getConnection(COnn.getUrl(), COnn.getUser(), COnn.getPassword());
		       System.out.println("连接成功");
		       System.out.println(conn);
		    } catch (SQLException e) {
		        e.printStackTrace();
		    } catch (Exception e) {
		        e.printStackTrace();
		    }
	}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值