当前位置:主页 > java教程 > java用jdbc连接数据库详解

java用jdbc连接数据库实例方法

发布:2019-06-05 19:57:25 91


给网友朋友们带来一篇jdbc相关的编程文章,网友居晴丽根据主题投稿了本篇教程内容,涉及到java、jdbc、数据库、java用jdbc连接数据库详解相关内容,已被394网友关注,下面的电子资料对本篇知识点有更加详尽的解释。

java用jdbc连接数据库详解

本文为大家分享了java使用jdbc连接数据库的具体代码,供大家参考,具体内容如下

package com.tr.jdbc;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import org.apache.commons.dbcp2.BasicDataSource;

public class CollectionFactory {

 private final static String dbDriver = "com.mysql.jdbc.Driver";
 private final static String dbUrl="jdbc:mysql://localhost:3306/xtest?useUnicode=true&characterEncoding=UTF-8" ;
 private final static String dbUser="root";
 private final static String dbpwd="root";

 private static BasicDataSource dataSource;
 //创建dbcp的简单数据源并初始化相关属性
 static{
  dataSource = new BasicDataSource();
  dataSource.setDriverClassName(dbDriver);
  dataSource.setUrl(dbUrl);
  dataSource.setUsername(dbUser);
  dataSource.setPassword(dbpwd);

  //指定数据库连接池初始化连接数
  dataSource.setInitialSize(10);
  //设定同时向数据库申请的最大连接数
  dataSource.setMaxTotal(50);
  //设置连接池中保持的最少连接数量
  dataSource.setMinIdle(5);
  //其他属相...参考Apache的公开文档
 }
 //创建数据库连接对象--并且多线程并发处理(注意Connection导的是Java.sql的包)
 public static synchronized Connection creatConnection(){
  Connection conn = null;
  if(dataSource!=null&&!dataSource.isClosed()){
   try {
    conn = dataSource.getConnection();
   } catch (SQLException e) {

    e.printStackTrace();
   }
  }
  return conn;

 }

 public static void main(String[] args) {
  String sql = "select * from s_t_user";
  Connection conn = creatConnection();
  Statement statement = null;
  ResultSet resultSet = null;
  try {
   statement = conn.createStatement();
   resultSet= statement.executeQuery(sql);
   int row = 0;
   while(resultSet.next()){
    row++;
    System.out.println("记录行"+row+"col2:"+resultSet.getString(2));
    }
  } catch (SQLException e) {
   e.printStackTrace();
  }finally {
   if (conn!=null) {
    try {
     conn.close();
    } catch (SQLException e) {  
     e.printStackTrace();
    }
   }
  }

 }

}

一定要注意不能导错包,我刚才就是因为BasicDataSource的包导错了,写成了import org.apache.tomcat.dbcp.dbcp2.BasicDataSource;应该是import org.apache.commons.dbcp2.BasicDataSource; 而一直报这样的错误:

java使用jdbc连接数据库简单实例

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持码农之家。


参考资料

相关文章

  • JavaScript高级程序设计笔记分享

    发布:2019-08-09

    这篇文章主要介绍了Ajax高级笔记 JavaScript高级程序设计笔记,需要的朋友可以参考下


  • java之lombok的构建者模式Builder中的泛型写法说明

    发布:2023-03-03

    这篇文章主要介绍了java之lombok的构建者模式Builder中的泛型写法说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教


  • Java结构型模式之桥接模式详解

    发布:2023-03-29

    桥接模式是一种很实用的结构型模式,如果系统中某个类存在两个独立变化的维度,通过桥接模式将这两个维度分离出来,使两者可以独立扩展


  • Java中FileOutputStream流的write方法

    发布:2022-06-26

    给大家整理一篇关于Java的教程,这篇文章主要为大家详细介绍了Java中FileOutputStream流的write方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下


  • 详解java利用jna调用c#中dll

    发布:2020-03-23

    前一段时间接了个项目,需要用到第三方提供的C#编写的dll,本身项目是java语言,所以便有了下面这篇文章,本文给大家介绍了关于java中如何使用jna调用c#中dll的相关资料,文中通过示例代码介


  • 三分钟带你掌握Java开发图片验证码功能方法

    发布:2023-04-05

    这篇文章主要来为大家详细介绍Java实现开发图片验证码的具体方法,文中的示例代码讲解详细,具有一定的借鉴价值,需要的可以参考一下


  • Java数组(Array)最全汇总(上篇)

    发布:2023-03-09

    这篇文章主要介绍了Java数组(Array)最全汇总(上篇),本文章内容详细,通过案例可以更好的理解数组的相关知识,本模块分为了三部分,本次为上篇,需要的朋友可以参考下


  • java实现多线程交替打印两个数

    发布:2022-09-23

    给网友们整理关于java 多线程的教程,这篇文章主要为大家详细介绍了java实现多线程交替打印两个数,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下


网友讨论