采用static nested的安全的单例模式脚本
2014-05-17 19:48
239 查看
初学Java模式,参考他人的脚本写了个安全的单例模式的数据库连接DAO
package com.jobbole; import java.sql.DriverManager; import java.sql.Connection; import java.sql.SQLException; /* 使用nested class 来实现安全的单例模式 */ public class SecuritySingleton { /*Initialization on Demand Holder. 这种方法使用内部类来做到延迟加载对象,在初始化这个内部类的时候, * JLS(Java Language Sepcification)会保证这个类的线程安全。这种写法完全使用了Java虚拟机的机制进行同步保证, * 没有一个同步的关键字。 **/ private static final String className = ""; private static final String url = ""; private static final String user = ""; private static final String password = ""; // 通过静态代码块注册数据库驱动,保证注册只执行一次 static{ try { Class.forName(className); // 注册驱动 } catch (ClassNotFoundException e) { e.printStackTrace(); } } private SecuritySingleton(){} public static SecuritySingleton getInstance(){ return SingletonHolder.instance; } public Connection getConnection(){ Connection conn = null; try { conn = DriverManager.getConnection(url, user, password); } catch (SQLException e) { e.printStackTrace(); } return conn; } private static class SingletonHolder{ public static final SecuritySingleton instance = new SecuritySingleton(); } }
相关文章推荐
- 第七篇文章:使用Vmware装虚拟机Ubuntu,网络模式采用桥接模式,不安全的连接的问题
- JMeter压力测试采用非GUI模式下执行压测脚本
- 把安全模式加到系统启动列表
- 测试一下脚本安全问题
- Object Builder中的Locator究竟是不是采用Composite的模式之我见
- 转载~final, static和 nested class 总结 原文~http://yulin10.bokee.com/2544792.html
- 安全模式下的自动启动
- 如何运用安全模式
- 刚装好的2000打好系统补丁后不停重启,安全模式也进不去~~急~~~
- Spansion将采用Discretix技术发展安全内存方案
- perl脚本中的一些安全问题
- 用 WSAD5.0和SQLServer2K采用Meet-in-Middle模式开发CMP实体Bean及其完整客户端(上篇:CMP的开发)
- 一个高效、安全、通用的防火墙共享上网脚本 (ZT)
- [patterns & practices] Web 服务安全:场景、模式和实现指南
- SMS脚本节选五:为SMS对象设置安全权限
- XP sp2的安全限制导致Adobe SVG Viewer无法使用浏览器脚本引擎?
- 用 WSAD5.0和SQLServer2K采用Meet-in-Middle模式开发CMP实体Bean及其完整客户端(下篇:客户端的开发和性能优化)
- 使用java和shell脚本支持GUI模式/CLI模式切换
- 采用设计模式理由
- linux下安装mysql,采用tar包安装模式