首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

问个关于连接数据库有关问题

2012-03-19 
问个关于连接数据库问题!求具体步骤。我的是sql2005的还有那个jdbc加载驱动啊![解决办法]import java.io.In

问个关于连接数据库问题!
求具体步骤。我的是sql2005的 还有那个jdbc加载驱动啊!

[解决办法]
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;


public class JDBConnection {
public Connection conn = null; // 声明Connection对象的实例
public Statement stmt = null; // 声明Statement对象的实例
public ResultSet rs = null; // 声明ResultSet对象的实例

private static String dbClassName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";//定义保存数据库驱动的变量
private static String dbUrl = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=DB_ATM";
private static String dbUser = "sa";
private static String dbPwd = "sa";

public JDBConnection(String propertyFileName) {// 带属性文件名的构造方法
Properties prop = new Properties();// 属性集合对象
InputStream is = null;
try {
is = JDBConnection.class.getClassLoader().getResourceAsStream(
propertyFileName);// 属性文件输入流
// is = new FileInputStream("src/" + propertyFileName);
prop.load(is);// 将属性文件流装载到Properties对象中
is.close();// 关闭流
dbClassName = prop.getProperty("dbClassName");
dbUrl = prop.getProperty("dbUrl");
dbUser = prop.getProperty("dbUser");
dbPwd = prop.getProperty("dbPwd");
} catch (Exception e) {
System.out.println("属性文件 " + propertyFileName + " 打开失败!");
}
try {

Class.forName(dbClassName);// 1.注册驱动
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}

public JDBConnection() {// 默认的不带参数的构造函数
try {

Class.forName(dbClassName);// 1.注册驱动
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}

public static Connection getConnection() {
Connection conn = null;
try {
// Class.forName(dbClassName);// 1.注册驱动
conn = DriverManager.getConnection(dbUrl, dbUser, dbPwd);//2.建立与数据库的链接
} catch (Exception ee) {
ee.printStackTrace();
}
if (conn == null) {
System.err
.println("警告: DbConnectionManager.getConnection() 获得数据库链接失败.\r\n\r\n链接类型:"
+ dbClassName
+ "\r\n链接位置:"
+ dbUrl
+ "\r\n用户/密码"
+ dbUser + "/" + dbPwd);
}
return conn;
}

/*
* 功能:执行查询语句
*/
public ResultSet executeQuery(String sql) {
try { // 捕捉异常
conn = getConnection(); // 调用getConnection()方法构造Connection对象的一个实例conn
stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,//3.创建语句
ResultSet.CONCUR_READ_ONLY);
rs = stmt.executeQuery(sql);//4.执行查询
} catch (SQLException ex) {
System.err.println(ex.getMessage()); // 输出异常信息
}
return rs; // 返回结果集对象 5.结果处理
}

/*
* 功能:执行更新操作
*/
public int executeUpdate(String sql) {
int result = 0; // 定义保存返回值的变量
try { // 捕捉异常
conn = getConnection(); // 调用getConnection()方法构造Connection对象的一个实例conn
stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
result = stmt.executeUpdate(sql); // 执行更新操作


} catch (SQLException ex) {
result = 0; // 将保存返回值的变量赋值为0
}
return result; // 返回保存返回值的变量
}

/*
* 功能:关闭数据库的连接
*/
public void close() {//6.释放资源
try { // 捕捉异常
try {
if (rs != null) { // 当ResultSet对象的实例rs不为空时
rs.close(); // 关闭ResultSet对象
}
} finally {
try {
if (stmt != null) { // 当Statement对象的实例stmt不为空时
stmt.close(); // 关闭Statement对象
}
} finally {
if (conn != null) { // 当Connection对象的实例conn不为空时
conn.close(); // 关闭Connection对象
}
}
}
} catch (Exception e) {
e.printStackTrace(System.err); // 输出异常信息
}
}

}





够全了把!满意不?楼主
[解决办法]

Java code
首先要配置你的系统变量 我的电脑-属性-环境变量-用户变量-新建变量-classpath-“.;加上jar包的路径”package mysqlpak;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.util.*;import javax.swing.text.Position;public class PreparedStatementDemo{    public static final String DRIVER="org.gjt.mm.mysql.Driver";         public static fianl String USER="root";    public static final String PASSWORD="mysqladmin";    public static final String URL="jdbc:mysql://localhost:3306/stu";//后面的stu是你的数据库(注意不是表)    public static void main(String[] args) throws  Exception    {        Connection con=null;        PreparedStatement ps=null;        ResultSet rs=null;        Class.forName(DRIVER);//加载驱动程序,在jar包中可以找到的        String sql="insert into person(name,sex,number,password,year)values(?,?,?,?,?)";//连接数据库        con=DriverManager.getConnection(URL, USER, PASSWORD);        ps=con.prepareStatement(sql);        ps.setString(1, "JOHNOmmO");        ps.setString(2, "MM");        ps.setInt(3, 111111);        ps.setInt(4, 12456321);        ps.setString(5, "2011-02-24");        ps.executeUpdate();        con.close();            }}
[解决办法]
Java code
package com;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;public class TestMSSQL {    public static void main(String[] args) {        Connection conn = null;        String driver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";// 定义保存数据库驱动的变量        String url = "jdbc:microsoft:sqlserver://192.168.0.195:1433;DatabaseName=db_netExam";        String name = "sa";        String pass = "sa";        try {            Class.forName(driver);            conn = DriverManager.getConnection(url, name, pass);            System.out.println(conn);        } catch (ClassNotFoundException e) {            // TODO Auto-generated catch block            e.printStackTrace();        } catch (SQLException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }    }} 

热点排行