jdbc 纯JAVA代码数据库连接...
jdbc 纯JAVA数据库连接...怎么连?
没这方面的书.网上找了哈,那些人也解释的比较粗糙.朋友给个解释啊.只要纯JAVA代码的数据库连接.给个例子就行.谢谢.
[解决办法]
jdbc 连接sql server的教程、配置、例子、注意事项和各种使用的例子
http://msdn2.microsoft.com/zh-cn/library/ms378749.aspx
[解决办法]
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class Dao {
//属性
private String IP;
private String dbString;
private String dbMing;
private String yongHuMing;
private String yongHuMima;
private String url;
private Connection conn ;
//功能
public Dao()
{
IP= "localhost ";
dbString= "com.microsoft.jdbc.sqlserver.SQLServerDriver ";
dbMing= "saolei ";
yongHuMing= "saolei ";
yongHuMima= "saolei ";
url= "jdbc:microsoft:sqlserver:// "+IP+ ":1433;DatabaseName= "+dbMing+ " ";
jiaZaiQuDong();
jianLiLianJie();
}
private void jiaZaiQuDong()
{
try
{
Class.forName(dbString);
}
catch (ClassNotFoundException e)
{
e.printStackTrace();
}
}
private void jianLiLianJie()
{
try
{
conn = DriverManager.getConnection(url,yongHuMing,yongHuMima);
}
catch (SQLException e)
{
e.printStackTrace();
}
}
public Statement shengChengStmt()
{
Statement stmt=null;
try
{
stmt = conn.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE ,ResultSet.CONCUR_READ_ONLY );
}
catch (SQLException e)
{
e.printStackTrace();
}
return stmt;
}
//-------------表数据---------------------------------------------------
public ResultSet query(String sql)
{
//System.out.println(sql);
Statement stmt=this.shengChengStmt();
ResultSet rs=null;
try
{
rs = stmt.executeQuery(sql);
}
catch (SQLException e)
{
e.printStackTrace();
}
return rs;
}
public int update(String sql)
{
Statement stmt=this.shengChengStmt();
int tiao=0;
try
{
tiao = stmt.executeUpdate(sql);
}
catch (SQLException e)
{
e.printStackTrace();
}
return tiao;
}
}
[解决办法]
原文在这里 http://whlustb.blog.com.cn/archives/2006/1544744.shtml
Step1:可在http://www.mysql.com/products/connector-j/index.html下载MySQL JDBC驱动程序mysql-connector-java-*.jar,并加入到ClassPath下面.
Step2:注册JDBC驱动程序
try {
Class.forName( "com.mysql.jdbc.Driver ");
}
catch(ClassNotFoundException e) {
System.out.println( "找不到驱动程序 ");
}
Step3:提供JDBC URL
jdbc:mysql://主机名:端口号/数据库名?user=***&password=***&useUnicode=true&characterEncoding=UTF8
端口号:MySQL的默认值是3306
useUnicode,characterEncoding:如果要存取中文,则必须使用,表明是否使用Unicode,并指定编码方式.
Step4:从DriverManager取得Connection
可以直接将JDBC URL传入DriverManager.getConnection()得到Connection对象,如:
try {
String url = "jdbc:mysql://localhost:3306/GUESTBOOK?user=caterpillar&password=123456 ";
Connection conn = DriverManager.getConnection(url);
if(!conn.isClosed())
System.out.println( "数据库连接成功! ");
conn.close();
}
catch(SQLException e) {
....
}
也可以将userName和password传入DriverManager.getConnection()得到Connection对象,如:
String url = "jdbc:mysql://localhost:3306/AddressBook ";
String user = "ZhuJun ";
String password = "123456 ";
Connection conn = DriverManager.getConnection(url, user, password);
一个完整的例子:
import java.sql.*;
public class DBTest {
public static void main(String[] args) {
String driver = "com.mysql.jdbc.Driver ";
String url = "jdbc:mysql://localhost:3306/AddressBook ";
String user = "ZhuJun ";
String password = "123456 ";
try {
Class.forName(driver);
Connection conn = DriverManager.getConnection(url, user, password);
if(!conn.isClosed())
System.out.println( "数据库连接成功! ");
conn.close();
}
catch(ClassNotFoundException e) {
System.out.println( "找不到驱动程序 ");
e.printStackTrace();
}
catch(SQLException e) {
e.printStackTrace();
}
}
}
JDBC连接MySQL数据库- -
[解决办法]
达人真多啊。.
[解决办法]
public class Utilities {
private static Connection conn;
public static Statement stmt;
public static ResultSet rs;
/**
* 用JDBC驱动建立与数据库的连接
*/
public static void getConnection() throws Exception {
Class.forName( "com.microsoft.jdbc.sqlserver.SQLServerDriver ")
.newInstance();
String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=Newspaper ";//数据库名称
String user = "sa ";
String password = " ";
conn = DriverManager.getConnection(url, user, password);
stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE);
// 每个Connection只能有一个有效的ResultSet
}
public static void freeConnection() {// 断开程序与DB连接
try {
if (rs != null)
rs.close();
stmt.close();
conn.close();
} catch (SQLException exc) {
}
}
}
[解决办法]
导入如下三个jar文件
msbase.jar
mssqlserver.jar
msutil.jar
//程序代码如下
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class Dbcon {
Connection con;
public Connection getCon()
{
try {
Class.forName( "com.microsoft.jdbc.sqlserver.SQLServerDriver ");
con=DriverManager.getConnection( "jdbc:microsoft:sqlserver://localhost:1433;databaseName=login ", "sa ", " ");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return con;
}
//测试连接是否成功
public static void main(String[] args)
{
Dbcon conn=new Dbcon();
conn.getCon();
System.out.println( "ok ");
}
}
[解决办法]
<%@ page contentType= "text/html;charset=gb2312 "%>
<%@ page import= "java.sql.* "%>
<%@ page import= "oracle.jdbc.driver.* "%>
<%@ page import= "java.net.* "%>
<%@ page import= "java.lang.* "%>
<%@ page import= "java.io.* "%>
<%@ page import= "java.util.* "%>
<html>
<body>
<%
try
{
Class.forName( "oracle.jdbc.driver.OracleDriver ");
Connection conn= DriverManager.getConnection( "jdbc:oracle:thin:@23.226.3.113:1521:ora90 ", "wrq ", "wrq ");
Statement stmt=conn.createStatement();
String sql= "select * from TEST ";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next())
{
%>
您的第一个字段内容为: <%=rs.getString(1)%>
您的第二个字段内容为: <%=rs.getString(2)%>
<%
}
out.print( "数据库操作成功,恭喜你 ");
}
catch(java.lang.ClassNotFoundException e)
{
System.out.println( "myconn(): "+e.getMessage());
}
catch(java.sql.SQLException e)
{
System.out.println( "conn(): "+e.getMessage());
}
catch(Exception e)
{
System.out.println( "Driver error! ");
System.err.println(e.getMessage());
}
%>
</body>
</html>
[解决办法]
原创
用 JAVA 与 Microsoft Access 连接的例子。
1、利用Access建立数据库database,建立用户表,如User表。
2、添加数据源驱动(控制面板-> 管理工具-> 数据源),选择Microsoft Access driver,然后选择刚建立的数据库。
3、代码如下:
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.DriverManager;
public class DatabaseOperate {
String dbDriver = null;
String url = null;
Connection conn = null;
Statement stmt = null;
String sqlCommond = null;
// ResultSet rs = null;
public DatabaseOperate() {
try {
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
}
private void jbInit() {
dbDriver = "sun.jdbc.odbc.JdbcOdbcDriver ";
url = "jdbc:odbc:database "; //数据库名为:database
try {
Class.forName(dbDriver);
conn = DriverManager.getConnection(url);
stmt = conn.createStatement();
} catch (Exception e) {
e.printStackTrace();
}
}
public void closeDatabase() throws SQLException {
// rs.close();
stmt.close();
conn.close();
}
public boolean isUser(String sName, String sPassword) {
ResultSet rs = null;
sqlCommond = "SELECT * FROM User WHERE " + "UserName = ' " + sName
+ " 'AND Password = ' " + sPassword + " ' ";
try {
rs = stmt.executeQuery(sqlCommond);
while (rs.next()) {
return true;
}
} catch (SQLException e) {
e.printStackTrace();
}
return false;
}
[解决办法]
import java.sql.*;
public class Conn {
public static Connection getConnection(){
Connection con=null;
try{
Class.forName( "com.microsoft.jdbc.sqlserver.SQLServerDriver ");
con=DriverManager.getConnection( "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=db ", "sa ", " ");
}catch(ClassNotFoundException e){
e.printStackTrace();
}catch(SQLException ex){
ex.printStackTrace();
}
return con;
}
}
[解决办法]
package test;
import java.sql.*;
public class MysqlTest
{
static Connection connect=null;
public static void main(String args[]) throws SQLException
{
try
{
// Class.forName( "com.mysql.jdbc.Driver "); // 加载MYSQL JDBC驱动程序!
// 作用同下(为什么?)
Class.forName( "org.gjt.mm.mysql.Driver ");
System.out.println( "成功连接MYSQL驱动! ");// Success loading Mysql Driver!
}
catch (Exception e)
{
System.out.print( "Error loading Mysql Driver! ");
e.printStackTrace();
}
try
{
connect = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/javaweb ", "root ", "123 ");
// 连接URL为 jdbc:mysql//服务器地址/数据库名
// 后面的2个参数分别是登陆用户名和密码
System.out.println( "成功连接MYSQL服务器 ");// Success connect Mysql server!
Statement stmt = connect.createStatement();
ResultSet rs = stmt.executeQuery( "select * from notice ");// help_topic
while (rs.next())
{
System.out.println(rs.getString( "title "));
}
}
catch (Exception e)
{
System.out.print( "get data error! ");
e.printStackTrace();
}
connect.close();// 关闭连接
System.out.println( "关闭连接MySQL驱动! ");
}
}
[解决办法]
我也凑个热闹,以前一个项目里client用的东东,包括几个文件,大概结构是这样的:
Config:解决配置的问题,比如获取ip,userid,pwd什么的,还有一些别的配置参数,没有往外摘,所有配置信息写在一个java属性文件里。
DBConnectionPool:一个自己做的连接池,主要是限制DB连接数,其它的不会作了。
DBConnection:就用这个真正链接数据库了。有个方法用于返回一个DB连接。
MySQLConnection和SQLServerConnection:看名字就知道了。都是DBConnection的子类。
代码:
Config.java
package base;
import java.io.*;
import java.util.*;
import org.apache.log4j.*;
public class Config
{
private static Logger logger = Logger.getLogger(Config.class.getName());
private static boolean alredayCreateInstance = false;
private static Config instance = null;
private String dbserver_id;
private String dbserver_pwd;
private String dbserver_port;
private String dbserver_ip;
private String dbserver_dbname;
private String dbserver_dbtype;
private int dbserver_totalConnection;
private int dbserver_reConnecTime;
private String higherupserver_ip;
private int higherupserver_port;
private int listener_port_to_center;
private int listener_port_to_bar;
private int create_server_socket_retry;
private int sleep_MSEL;
private String local_ip;
private String locale_country;
private String locale_language;
private Config(String fileName)
{
FileInputStream f = null;
// open config file
Properties property = new Properties();
try
{
f = new FileInputStream(new File(fileName));
property.load(f);
// dbserver
dbserver_id = property.getProperty( "dbserver_id ");
dbserver_pwd = property.getProperty( "dbserver_pwd ");
dbserver_ip = property.getProperty( "dbserver_ip ");
dbserver_port = property.getProperty( "dbserver_port ");
dbserver_dbname = property.getProperty( "dbserver_dbname ");
dbserver_dbtype = property.getProperty( "dbserver_dbtype ");
dbserver_totalConnection = (new Integer(property
.getProperty( "dbserver_totalConnection "))).intValue();
dbserver_reConnecTime = (new Integer(property
.getProperty( "dbserver_reConnecTime "))).intValue();
// higherup server
higherupserver_ip = property.getProperty( "higherupserver_ip ");
higherupserver_port = new Integer(property
.getProperty( "higherupserver_port ")).intValue();
// litener port
listener_port_to_center = new Integer(property
.getProperty( "listener_port_to_center ")).intValue();
listener_port_to_bar = new Integer(property
.getProperty( "listener_port_to_bar ")).intValue();
// liten port
listener_port_to_center = new Integer(property
.getProperty( "listener_port_to_center ")).intValue();
listener_port_to_bar = new Integer(property
.getProperty( "listener_port_to_bar ")).intValue();
create_server_socket_retry = new Integer(property
.getProperty( "create_server_socket_retry ")).intValue();
local_ip = property.getProperty( "local_ip ");
// local
locale_country = property.getProperty( "locale_country ");
locale_language = property.getProperty( "locale_language ");
// time
sleep_MSEL = new Integer(property.getProperty( "sleep_MSEL "))
.intValue();
// ftp server
// web server
alredayCreateInstance = true;
logger.info( "dbserver_id: " + dbserver_id);
logger.info( "dbserver_pwd: " + dbserver_pwd);
logger.info( "dbserver_ip: " + dbserver_ip);
logger.info( "dbserver_port: " + dbserver_port);
logger.info( "dbserver_dbname: " + dbserver_dbname);
logger.info( "dbserver_dbtype: " + dbserver_dbtype);
logger.info( "dbserver_totalConnection: "
+ dbserver_totalConnection);
logger.info( "dbserver_reConnecTime: " + dbserver_reConnecTime);
logger.info( "higherupserver_ip: " + higherupserver_ip);
logger.info( "higherupserver_port: " + higherupserver_port);
logger.info( "listener_port_to_center: " + listener_port_to_center);
logger.info( "listener_port_to_bar: " + listener_port_to_bar);
logger.info( "locale_ip: " + local_ip);
logger.info( "sleep_MSEL: " + sleep_MSEL);
}
catch (FileNotFoundException e)
{
// TODO 自动生成 catch 块
// e.printStackTrace();
logger.error(e.toString());
System.exit(0);
}
catch (IOException e)
{
// TODO 自动生成 catch 块
// e.printStackTrace();
logger.error(e.toString());
System.exit(0);
}
finally
{
try
{
if (f != null)
f.close();
}
catch (IOException e)
{
// e.printStackTrace();
logger.error(e.toString());
System.exit(0);
}
}
}
public static Config getInstance()
{
if (!alredayCreateInstance)
{
instance = new Config( "config.properties ");
}
return instance;
}
public String getDbserver_dbname()
{
return dbserver_dbname;
}
public String getDbserver_dbtype()
{
return dbserver_dbtype;
}
public String getDbserver_id()
{
return dbserver_id;
}
public String getDbserver_ip()
{
return dbserver_ip;
}
public String getDbserver_port()
{
return dbserver_port;
}
public String getDbserver_pwd()
{
return dbserver_pwd;
}
public int getDbserver_reConnecTime()
{
return dbserver_reConnecTime;
}
public int getDbserver_totalConnection()
{
return dbserver_totalConnection;
}
public String getHigherupserver_ip()
{
return higherupserver_ip;
}
public int getHigherupserver_port()
{
return higherupserver_port;
}
public int getListener_port_to_bar()
{
return listener_port_to_bar;
}
public int getListener_port_to_center()
{
return listener_port_to_center;
}
public int getCreate_server_socket_retry()
{
return create_server_socket_retry;
}
public String getLocal_ip()
{
return local_ip;
}
public Locale getLocale()
{
return new Locale(locale_language, locale_country);
}
public int getSleep_MSEL()
{
return sleep_MSEL;
}
public static void main(String[] args)
{
Config.getInstance();
}
}