首页 > 代码库 > JDBC数据库连接
JDBC数据库连接
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class MyConnection {
static Statement statement = null;
static PreparedStatement preStat = null;
static ResultSet resultSet = null;
static Connection con = null;
public static void main(String[] args) {
MyConnection mycon = new MyConnection();
Connection con = mycon.getConnection();
// ********************数据遍历
// Statement用来执行sql语句
try {
statement = con.createStatement();
// 要执行的SQL语句
String sql = "select * from Student";
// 结果集
resultSet = statement.executeQuery(sql);
// 遍历数据
while (resultSet.next()) {
String Sid = resultSet.getString(1);
String Sname = resultSet.getString(2);
String Sage = resultSet.getString(3);
String Ssex = resultSet.getString(4);
String Szhuanye = resultSet.getString(5);
System.out.println("Sid:" + Sid + " Sname:" + Sname
+ " Sage:" + Sage + " Ssex:" + Ssex + " Szhuanye:"
+ Szhuanye);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// ************执行增删改 字符串的拼接 *********
// insert into student valuse(‘"+Sid+"‘,‘"+Sname+"‘.......);
// ****************预处理执行增删改**************
String insert = "insert into student values(?,?,?,?,?)";
String update = "update student set Sname=? where Sid=?";
String delete = "delete from student where Sid=?";
// 增加数据
try {
preStat = con.prepareStatement(insert);
// 这里可能还要判断一下数据库的约束条件
preStat.setString(1, "100080");
preStat.setString(2, "我试试");
preStat.setString(3, "100");
preStat.setString(4, "男");
preStat.setString(5, "100080");
// 执行sql语句
preStat.executeUpdate();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// **********更新数据
try {
preStat = con.prepareStatement(update);
preStat.setString(1, "更改");
preStat.setString(2, "100080");
preStat.executeUpdate();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
// **********删除数据
try {
preStat = con.prepareStatement(delete);
preStat.setString(1, "100080");
preStat.executeUpdate();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
// ************************预处理语句PreparedStatement 查询数据
try {
preStat = con.prepareStatement("select * from Student where Sid=?");
// 设置参数 表示 第一个参数 为100002
preStat.setString(1, "100080");
// 执行预处理语句
resultSet = preStat.executeQuery();
// 遍历数据
while (resultSet.next()) {
String Sid = resultSet.getString(1);
String Sname = resultSet.getString(2);
String Sage = resultSet.getString(3);
String Ssex = resultSet.getString(4);
String Szhuanye = resultSet.getString(5);
System.out.println("Sid:" + Sid + " Sname:" + Sname
+ " Sage:" + Sage + " Ssex:" + Ssex + " Szhuanye:"
+ Szhuanye);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
// 数据库连接方法
public Connection getConnection() {
// 驱动程序名
String driver = "com.mysql.jdbc.Driver";
// URL指向要访问的数据库名score
String url = "jdbc:mysql://localhost:3306/score?useUnicode=true&characterEncoding=UTF-8";
//注意score后面家的代码是指定编码 不知道 有可能乱码
// String url="jdbc:mysql://127.0.0.1:3306/score";
// MySQL配置时的用户名
String user = "root";
// MySQL配置时的密码
String password = "123456";
try {
// 加载驱动 通过名字把类的源数据对象加载到内存中
Class.forName(driver);
// 连续数据库
con = DriverManager.getConnection(url, user, password);
if (!con.isClosed())
System.out.println("数据库连接成功!");
} catch (Exception e) {
e.printStackTrace();
}
return con;
}
}