连接数据库
程序员文章站
2022-05-29 18:51:47
...
package javaJDBC;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class BaseDao {
//准备好相关的数据库连接的数据
//引入驱动类名(常量)
private final static String DRIVER="com.mysql.jdbc.Driver";
//连接数据库的URL路径
private final static String URL="jdbc:mysql://localhost:3306/yyds";
//数据库登录账号
private final static String USER="root";
//数据库登录密码
private final static String PASSWORD="lx031212";
//加载驱动(抛出异常)。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
static{
try {
//抓住异常
Class.forName(DRIVER);
} catch (ClassNotFoundException e) {
//(打印异常信息)如果捕获到异常,则打印异常信息,如果没有捕获到,则不会执行。
e.printStackTrace();
}
}
//与数据库连接.................................
public static Connection getConnect(){
Connection conn=null;
try {
conn= DriverManager.getConnection(URL, USER, PASSWORD);
return conn;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return conn;
}
//增删改函数..........................
public static boolean insertDeleteUpdate(String sql){
try {
//预处理SQL语句
PreparedStatement pre=getConnect().prepareStatement(sql);
//执行SQL语句(返回操作的行数
int res=pre.executeUpdate();
//判断返回值是1还是0
if(res>0){
return true;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
//查询
public static String[][] cha(String sql){
try {
//预处理SQL语句,可能存在的异常,需要处理
PreparedStatement pre = getConnect().prepareStatement(sql);
ResultSet res=pre.executeQuery();//光标指针
res.last();//光标弄到最后一行,为了获取二维数组的长度
//创建一个二维数组
String[][] dates=new String[res.getRow()][];//getRow()得到最后一行光标的行数数值,行数号。getRow()指当前光标位置行数号。
res.beforeFirst();//光标弄到第一行,默认从第一行开始。(光标原本默认第一行的上面一行,光标指向哪行就从哪行开始.)
int count=0;
while (res.next()) {//判断光标真就返回true,假就返回false
//创建一个一维数组
String[] arrs=new String[2];
//将结果集存储入一维数组中
arrs[0]=res.getString("id");
arrs[1]=res.getString("book");
//将一维数组存储入二维数组中
dates[count]=arrs;
count++;
}
//将二维数组返回
return dates;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
//随便返回一个二维数组
return new String[1][1];
}
}
}
下一篇: 九月里(组诗)