一、通过Driver接口直接连接
站在用户的角度思考问题,与客户深入沟通,找到武安网站设计与武安网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站制作、做网站、企业官网、英文网站、手机端网站、网站推广、主机域名、网络空间、企业邮箱。业务覆盖武安地区。
/** * 通过Driver获取Connection * @return */ public Connection getConnectionByDriver() throws Exception{ String driverClass = "com.MySQL.jdbc.Driver"; String url = "jdbc:mysql:///hdz"; String user = "root"; String password = "123456"; Driver driver = new com.mysql.jdbc.Driver(); Properties info = new Properties(); info.setProperty("driverClass", driverClass); info.setProperty("user", user); info.setProperty("password", password); Connection connection = driver.connect(url, info); return connection; }
二、通过DriverManager直接连接
/** * 通过DriverManager获取Connection * @return * @throws Exception */ public Connection getConnectionByDriverManager() throws Exception{ String url = "jdbc:mysql:///hdz"; String user = "root"; String password = "123456"; Class.forName("com.mysql.jdbc.Driver"); Connection connection = DriverManager.getConnection(url, user, password); return connection; }
/** * 通过把参数写在配置文件的方式获取Connection * @return * @throws Exception */ public Connection getConectionByProperties() throws Exception{ InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("jdbc.properties"); Properties info = new Properties(); info.load(inputStream); String url = info.getProperty("url"); Class.forName("com.mysql.jdbc.Driver"); Connection connection = DriverManager.getConnection(url, info); return connection; } url=jdbc:mysql:///hdz user=root password=123456
三、通过DBCP数据源连接
@Test public void testDbcp() throws Exception { final BasicDataSource basicDataSource = new BasicDataSource(); basicDataSource.setDriverClassName("com.mysql.jdbc.Driver"); basicDataSource.setUrl("jdbc:mysql:///hdz"); basicDataSource.setUsername("root"); basicDataSource.setPassword("123456"); basicDataSource.setInitialSize(2); basicDataSource.setMaxActive(2); basicDataSource.setMinIdle(2); basicDataSource.setMaxWait(2000); Connection connection1 = basicDataSource.getConnection(); System.out.println(connection1); Connection connection2 = basicDataSource.getConnection(); System.out.println(connection2); new Thread(){ @Override public void run() { Connection connection3; try { connection3 = basicDataSource.getConnection(); System.out.println(connection3); } catch (SQLException e) { e.printStackTrace(); } } }.start(); Thread.sleep(3000); connection2.close(); }
或者通过配置文件,BasicDatasourceFactory工厂方式
private DbcpDataSource() { Properties info = new Properties(); InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("dbcp.properties"); try { info.load(inputStream); dataSource = BasicDataSourceFactory.createDataSource(info); } catch (IOException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } } dbcp.properties driverClassName=com.mysql.jdbc.Driver url=jdbc:mysql:///hdz username=root password=123456 initialSize=5 maxActive=10 minIdle=5 maxWait=5000
四、通过C3P0数据源连接
public class C3p0DataSourceUtils { private DataSource dataSource = null; private static C3p0DataSourceUtils instance = new C3p0DataSourceUtils(); private C3p0DataSourceUtils(){ dataSource = new ComboPooledDataSource("intergalactoApp"); } public static C3p0DataSourceUtils newInstance(){ return instance; } public Connection getConnection() { try { return dataSource.getConnection(); } catch (SQLException e) { e.printStackTrace(); } return null; } }
c3p0-config.xml1 1 1 1 1000 10 5 com.mysql.jdbc.Driver jdbc:mysql:///hdz root 123456