1:引入java.sql数据包;
import java.sql.*;
2:加载JDBC驱动程序
Class.forName(JDBC驱动包的名字).newInstance();
3:产生Connection
如已成功加载JDBC驱动程序,就可以利用加载的驱动程序连接数据库
Connection con=DriverManager.getConnection(URL,UserName,Password);
URL: JDBC:(subprotocol):(subname)
subprotocol:子协议指定连接何种数据库或用什么方式连接数据库;
subname:确立一个连接,可以是一个数据源名,也可是指向一个网上数据库.
4:各种连接例:
(1) MySQL数据库
String Dirver="com.mysql.jdbc.Driver";//驱动程序
String URL="jdbc:mysql://localhost:3306/db_name"; //连接的URL,db_name为数据库名
String UserName="username"; //用户名
String Password="password"; //密码
Class.forName(Driver).newInstance(); //加载数据库驱动
connection con=DriverManager.getConnection(URL,Username,Password);
(2) Microsoft SQL server 数据库
String Driver="com.microsoft.jdbc.sqlserver.SQLServerDriver"; //驱动程序
String URL="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=db_name";
//连接的URL,db_name为数据库
String UserName="username"; //用户名
String Password="password"; //密码
Class.forName(Driver).newInstance();
connection con=DriverManager.getConnection(URL,Username,Password);
(3) sybase 数据库
String Driver="com.sybase.jdbc.sybDriver"; //驱动程序
String URL="jdbc:Sybase://localhost:5007/db_name"; //连接的URL,db_name为数据库
String UserName="username"; //用户名
String Password="password"; //密码
Class.forName(Driver).newInstance();
connection con=DriverManager.getConnection(URL,Username,Password);
(4) Oracle(用thin模式)数据库
String Driver="oracle.jdbc.driver.OracleDriver"; //驱动程序
String URL="jdbc:oracle:thin://localhost:1521:orcl";
//连接的URL,orcl为数据库的SID
String UserName="username"; //用户名
String Password="password"; //密码
Class.forName(Driver).newInstance();
connection con=DriverManager.getConnection(URL,Username,Password);
(5) 利用JDBC-ODBC桥连接
String Driver="sun.jdbc.odbc.JdbcodbcDriver"; //驱动程序
String URL="jdbc:odbc:dbsource"; //连接的URL,dbsource为数据源名
String UserName="username"; //用户名
String Password="password"; //密码
Class.forName(Driver).newInstance();
connection con=DriverManager.getConnection(URL,Username,Password);
B. java中使用JDBC连接数据库的步骤
1.class.forName("驱动所在类及包名") 还需导入jar包
2.java.sql.Connection conn = DriverManager.getConnection(URL(即数据库连接的ulr),USERNAME(对应数据的用户名),PASSWORD(密码));
3.String sql = "SELECT * FROM tableName WHERE id=?";
4.java.sql.PreparedStatement ptmt = conn.getPreparedStatement(sql);
5.ptmt.setInt(1,id值);
6.java.sql.ResultSet rs = ptmt.executeQuery();
7.while(rs.next){
System.out.println(rs.getString("字段名"));
}
8.conn.close();ptmt.close();rs.close();
C. 怎么使用JAVA连接数据库
1、首先我们先建好数据库,然后建立好程序的目录,因为是适用于初学者的,所以就建立一个简单的java project,如图。
D. 怎么用java连接数据库
首先需要导入相应数据库的驱动文件,然后要注册驱动,Class.forname(driverName),获取Connection对象Connection conn=DriverManager.getConnection(URL);然后获取PreparedStatement对象PreparedStatement pst=conn.getPreparedState(sql,username,password)其中的username和password是你访问数据库的名称和密码;如果要使用到返回集合则可以用ResultSet对象接收,ResultSet rs=pst.executeQuery();不要使用到返回集合的话就直接pst.executeQuery();
以上的可以查jdk
1.mysql:driverName的值为:com.mysql.jdbc.Driver;url的值为:jdbc:mysql://localhost:3306/hibernate其中hibernate是你的数据库名称
2.sqlserver:driverName的值为:com.microsoft.sqlserver.jdbc.SQLServerDriver;url的值为
jdbc:sqlserver://localhost:1433;DatabaseName=" + database,其中database是你数据库名称
3.oracle:driverName的值为:oracle.jdbc.driver.OracleDriver;url的值:jdbc:oracle:thin:@127.0.0.1:1521:ora92,其中ora92是你数据库名称;
E. Java数据库连接 怎么做
package hw.zy.connection;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ResourceBundle;
/**
* 连接数据库
* @author 卓越
* 日期:2011-05-23
* */
public class DBConnection {
/**
* 得到一些配置文件的路径
* */
static ResourceBundle bundle = ResourceBundle
.getBundle("hw.zy.connection.db");
/**
* 实例化DBConnection对象
* */
private static DBConnection instance = new DBConnection();
/**
* 得到一个对象
*
* @return 返回一个DBConnection对象
* */
public static DBConnection getInstance() {
return instance;
}
/**
* 构造函数私有化
* */
private DBConnection() {
}
/**
* 注册驱动程序
* */
static {
try {
String driver = bundle.getString("driver");
Class.forName(driver);
} catch (ClassNotFoundException e) {
System.out.println("无法载入驱动!");
}
}
/**
* 连接数据库
* @return 返回一个Connection 对象
* */
public static Connection getConnection() throws SQLException {
String url = bundle.getString("url");
String username = bundle.getString("username");
String password = bundle.getString("password");
return DriverManager.getConnection(url, username, password);
}
/**
* 释放资源
*
* @param rs
* ,stmt,conn
* */
public void free(ResultSet rs, Statement stmt, Connection conn) {
try {
if (rs != null)
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
} finally {
try {
if (stmt != null)
try {
stmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
} finally {
if (conn != null)
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
public static void main(String[] args) {
DBConnection aaConnection=new DBConnection();
try {
aaConnection.getConnection();
System.out.println("连接成功!");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
配置文件 db.properties
driver=oracle.jdbc.OracleDriver
url=jdbc:oracle:thin:@localhost:1521:ORCL
username=liu
password=abc
F. JAVA访问数据库的4种方法是哪些
(1)JDBC-ODBC桥加ODBC驱动程序
JavaSoft桥产品利用ODBC驱动程序提供JDBC访问。注意,必须将ODBC二进制代码(许多情况下还包括数据库客户机代码)加载到使用该驱动程序的每个客户机上。因此,这种类型的驱动程序最适合于企业网(这种网络上客户机的安装不是主要问题),或者是用Java编写的三层结构的应用程序服务器代码。
(2)本地API
这种类型的驱动程序把客户机API上的JDBC调用转换为Oracle、Sybase、Informix、DB2或其它DBMS的调用。注意,象桥驱动程序一样,这种类型的驱动程序要求将某些二进制代码加载到每台客户机上。
(3)JDBC网络纯Java驱动程序
这种驱动程序将JDBC转换为与DBMS无关的网络协议,之后这种协议又被某个服务器转换为一种DBMS协议。这种网络服务器中间件能够将它的纯Java客户机连接到多种不同的数据库上。所用的具体协议取决于提供者。通常,这是最为灵活的JDBC驱动程序。有可能所有这种解决方案的提供者都提供适合于Intranet用的产品。为了使这些产品也支持Internet访问,它们必须处理Web所提出的安全性、通过防火墙的访问等方面的额外要求。几家提供者正将JDBC驱动程序加到他们现有的数据库中间件产品中。
(4)本地协议纯Java驱动程序
这种类型的驱动程序将JDBC调用直接转换为DBMS所使用的网络协议。这将允许从客户机机器上直接调用DBMS服务器,是Intranet访问的一个很实用的解决方法。由于许多这样的协议都是专用的,因此数据库提供者自己将是主要来源,有几家提供者已在着手做这件事了。
据专家预计第(3)、(4)类驱动程序将成为从JDBC访问数据库的首方法。第(1)、(2)类驱动程序在直接的纯Java驱动程序还没有上市前会作为过渡方案来使用。对第(1)、(2)类驱动程序可能会有一些变种,这些变种要求有连接器,但通常这些是更加不可取的解决方案。第(3)、(4)类驱动程序提供了Java的所有优点,包括自动安装(例如,通过使用JDBC驱动程序的appletapplet来下载该驱动程序)。
G. 用Java怎样访问数据库,用什么代码
1. 加载一个对应数据库的JDBC驱动
在建立到一个数据库的连接之前,必须先加载这个数据库的JDBC驱动程序,加载之后此driver会自动注册到JDBC驱动列表中。加载一个JDBC驱动有两种方法。
a) 在命令行方式下指定驱动器或者用冒号分割驱动器列表:
具体命令如下:
C:\>java –Djdbc.drivers = com.company1.Driver:com.company2.Driver youProject
b)第二种方法,在程序中调用Class.forName()方法。推荐使用。。。。
try
{
String driverName = “com.imaginary.sql.msql.MsqlDriver”;
Class.forName(driverName).newInstance();
}
Catch(ClassNotFoundException e1)
{
//catch could not find database driver exception.
}
2.连接到数据库。
根据您后台待连接的数据库不同,而有小小的差别。
a) 连接到Oracle数据库。
Connection connection = null ;
try
{
//load the jdbc driver ;
String driverName = “oracle.jdbc.driver.OracleDriver”;
Class.forName(driverName).newInstance();
//create a connection to the database;
String serverName = “127.0.0.1”;
String serverPort = “1521”;
String serverID = “datebase1”
String userName = “hello”;
String userPsw = “world”;
String url = “jdbc:oracle.thin:@” + serverName + “:” + serverPort + “:” + serverID ;
Connection = DriverManager.getConnection(url , userName , userPsw);
}
catch(ClassNotFoundException e1)
{
//catch could not find database driver exception.
}
catch(SQLException e2)
{
//catch could not connect to the database exception.
}
b) 连接到一个SQL Server数据库。
Connection connection = null ;
try
{
//load the jdbc driver ;
String driverName = “com.microsoft.jdbc.sqlserver.SQLServerDriver”;
Class.forName(driverName).newInstance();
//create a connection to the database;
String serverName = “127.0.0.1”;
String serverPort = “1433”;
String serverID = serverName + serverPort ;
String userName = “hello”;
String userPsw = “world”;
String url = “jdbc:JSQLConnect ://” + serverID ;
Connection = DriverManager.getConnection(url , userName , userPsw);
}
catch(ClassNotFoundException e1)
{
//catch could not find database driver exception.
}
catch(SQLException e2)
{
//catch could not connect to the database exception.
}
c) 连接到一个MySQL数据库上。。。。
Connection connection = null ;
try
{
//load the jdbc driver ;
String driverName = “org.gjt.mm.mysql.Driver”;
Class.forName(driverName).newInstance();
//create a connection to the database;
String serverName = “127.0.0.1”;
String serverID = “database”;
String userName = “hello”;
String userPsw = “world”;
String url = “jdbc:mysql ://” + serverName + “/” + serverID ;
Connection = DriverManager.getConnection(url , userName , userPsw);
}
catch(ClassNotFoundException e1)
{
//catch could not find database driver exception.
}
catch(SQLException e2)
{
//catch could not connect to the database exception.
}
综合上面的三种数据库连接方式 , 其实大同小异。由于访问不同的数据库和所使用的数据库驱动程序不同,所以导致代码表面上有小小不同,但透过表面看来,内部都是
1. 加载一个特定的数据库JDBC驱动。
2. 连接到一个数据库。
3. 之后,就可以对一个特定的数据库进行特定的操作了。
附上各种数据库的JDBC驱动起可用信息网址:
http://java.sun.com/procts/jdbc
对于Oracle数据库,请参考:
http://otn.oracle.com.software/content.html
对于MySQL数据库,请参考:
http://mmMySQL.sourceforge.net
对于SQL Server数据库,有很多的驱动可选,比较常用的:
http://www.microsoft.com/china/sql/downloads/2000/jdbc.asp
http://www.freetds.org
http://www.datadirect-technologies.com
H. java如何访问数据库
Java可以使用JDBC访问数据库,也可以使用各类ORM框架访问数据库,但这些框架最终还是通过JDBC访问数据库,它们只是封装了数据库操作,而使得开发者可以减少这部分消耗。因此,本文只讲解JDBC访问方式。
JDBC访问一般分为如下流程:
1、加载JDBC驱动程序:
在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机),
这通过java.lang.Class类的静态方法forName(String className)实现。
例如:
try{
//加载MySql的驱动类
Class.forName("com.mysql.jdbc.Driver") ;
}catch(ClassNotFoundException e){
System.out.println("找不到驱动程序类 ,加载驱动失败!");
e.printStackTrace() ;
}
成功加载后,会将Driver类的实例注册到DriverManager类中。
2、提供JDBC连接的URL
•连接URL定义了连接数据库时的协议、子协议、数据源标识。
•书写形式:协议:子协议:数据源标识
协议:在JDBC中总是以jdbc开始
子协议:是桥连接的驱动程序或是数据库管理系统名称。
数据源标识:标记找到数据库来源的地址与连接端口。
例如:(MySql的连接URL)
jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=gbk ;
useUnicode=true:表示使用Unicode字符集。如果characterEncoding设置为
gb2312或GBK,本参数必须设置为true 。characterEncoding=gbk:字符编码方式。
3、创建数据库的连接
•要连接数据库,需要向java.sql.DriverManager请求并获得Connection对象,该对象就代表一个数据库的连接。
•使用DriverManager的getConnectin(String url,String username,String password )方法传入指定的欲连接的数据库的路径、数据库的用户名和密码来获得。
例如:
//连接MySql数据库,用户名和密码都是root
String url = "jdbc:mysql://localhost:3306/test" ;
String username = "root" ;
String password = "root" ;
try{
Connection con =
DriverManager.getConnection(url , username , password ) ;
}catch(SQLException se){
System.out.println("数据库连接失败!");
se.printStackTrace() ;
}
4、创建一个Statement
•要执行SQL语句,必须获得java.sql.Statement实例,Statement实例分为以下3种类型:
1、执行静态SQL语句。通常通过Statement实例实现。
2、执行动态SQL语句。通常通过PreparedStatement实例实现。
3、执行数据库存储过程。通常通过CallableStatement实例实现。
具体的实现方式:
Statement stmt = con.createStatement() ;
PreparedStatement pstmt = con.prepareStatement(sql) ;
CallableStatement cstmt = con.prepareCall("{CALL demoSp(? , ?)}") ;
5、执行SQL语句
Statement接口提供了三种执行SQL语句的方法:executeQuery 、executeUpdate和execute
1、ResultSet executeQuery(String sqlString):执行查询数据库的SQL语句,返回一个结果集(ResultSet)对象。
2、int executeUpdate(String sqlString):用于执行INSERT、UPDATE或DELETE语句以及SQL DDL语句,如:CREATE TABLE和DROP TABLE等
3、execute(sqlString):用于执行返回多个结果集、多个更新计数或二者组合的语句。
具体实现的代码:
ResultSet rs = stmt.executeQuery("SELECT * FROM ...") ;
int rows = stmt.executeUpdate("INSERT INTO ...") ;
boolean flag = stmt.execute(String sql) ;
6、处理结果
两种情况:
1、执行更新返回的是本次操作影响到的记录数。
2、执行查询返回的结果是一个ResultSet对象。
•ResultSet包含符合SQL语句中条件的所有行,并且它通过一套get方法提供了对这些行中数据的访问。
•使用结果集(ResultSet)对象的访问方法获取数据:
while(rs.next()){
String name = rs.getString("name") ;
String pass = rs.getString(1); // 此方法比较高效(列是从左到右编号的,并且从列1开始)
}
7、关闭JDBC对象
操作完成以后要把所有使用的JDBC对象全都关闭,以释放JDBC资源,关闭顺序和声明顺序相反:
1、关闭记录集
2、关闭声明
3、关闭连接对象
if(rs != null){ // 关闭记录集
try{
rs.close() ;
}catch(SQLException e){
e.printStackTrace() ;
}
}
if(stmt != null){ // 关闭声明
try{
stmt.close() ;
}catch(SQLException e){
e.printStackTrace() ;
}
}
if(conn != null){ // 关闭连接对象
try{
conn.close() ;
}catch(SQLException e){
e.printStackTrace() ;
}
}
I. java连接数据库
java连接数据库的代码 位于MVC中的M(模型层)中,主要负责与数据库打交道。
本人把我以前写的代码 加上注释 给你看看 希望对你有帮助。
public class UserInfoDAO {
//验证登陆名/密码sql语句
//private -----这个sql语句只在本类内部使用,没有必要public
//static -----sql语句仅仅一份就足够了
//final -----sql语句一般在运行时不变,final修饰的变量相当于常量
//常量名所有字母大写
private static final String SQL_CHECK_USERINFO =
"SELECT LOGINNAME,USERNAME,PASSWORD,AGE,ADDRESS FROM USERINFO WHERE LOGINNAME=? AND PASSWORD = ?";
public UserInfoDAO() {
}
/**
* 验证登陆名/密码方法
* @param u UserInfo
* @return boolean
*/
public boolean checkUser(UserInfo u) {
boolean b = false;//验证是否成功的标识
Connection conn = null;//数据库连接的引用
PreparedStatement pstmt = null;//PreparedStatement引用
ResultSet rs = null;//结果集引用
//调用ConnectionManager的方法,得到数据库里连接实例
conn = ConnectionManager.getConnection();
try {
//通过Connection的prepareStatement()方法构建PreparedStatement实例,参数为sql语句
pstmt = conn.prepareStatement(SQL_CHECK_USERINFO);
//为sql语句中的?赋值,注意序号从1开始
pstmt.setString(1, u.getLoginName());
pstmt.setString(2, u.getPassword());
//执行查询得到结果集
rs = pstmt.executeQuery();
//在结果集中循环,如果结果集中有记录意味着验证成功
b = rs.next();//标识置为true
while (rs.next()) {
b = true;//标识置为true
}
} catch (SQLException ex) {
System.out.println(ex.getMessage());
} finally {
//注意:一定在finally中释放数据库资源
cleanUP(rs, pstmt, conn);
}
return b;
}
private void cleanUP(ResultSet rs, PreparedStatement pstmt, Connection conn) {
try {
if (rs != null) {
rs.close();
}
if (pstmt != null) {
pstmt.close();
}
if (conn != null) {
conn.close();
}
} catch (SQLException ex) {
System.out.println(ex.getMessage());
}
}
}
J. java怎么和数据库连接
1、加载驱动程序。
处理结果两种情况:
1、执行更新返回的是本次操作影响到的记录数。
2、执行查询返回的结果是一个ResultSet对象。
ResultSet包含符合SQL语句中条件的所有行,并且它通过一套get方法提供了对这些 行中数据的访问。
(10)java访问数据库扩展阅读:
Statement
要执行SQL语句,必须获得java.sql.Statement实例,Statement实例分为以下3 种类型:
1、执行静态SQL语句。通常通过Statement实例实现。
2、执行动态SQL语句。通常通过PreparedStatement实例实现。
3、执行数据库存储过程。通常通过CallableStatement实例实现。