问题: 老师加了引号之后,还报错, Could not initialize class com.bjsxt.JdbcUtil,properities那个文件在src的里面
package com.bjsxt;
/**
* JDBC工具类
* @author
*
*/
//获取Connection对象
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ResourceBundle;
public class JdbcUtil {
private static String driver;
private static String jdbcUrl;
private static String username;
private static String userpassword;
static {
//读取Properties
ResourceBundle bundle = ResourceBundle.getBundle("jdbc.driver");
driver = bundle.getString("driver");
jdbcUrl = bundle.getString("jdbcUrl");
username = bundle.getString("username");
userpassword = bundle.getString("userpassword");
try {
//数据库的驱动实例化出来
Class.forName(driver);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
//获取Connection对象的封装
public static Connection getConnection() {
Connection conn=null;
try {
//创建链接
conn = DriverManager.getConnection(jdbcUrl,username,userpassword);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return conn;
}
//关闭Statement
public static void closeStatement(Statement state) {
try {
if(state!=null) {
state.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
//关闭Connection
public static void closeConnection(Connection conn) {
try {
if(conn!=null) {
conn.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
//关闭资源
public static void closeResource(Statement state,Connection conn) {
closeStatement(state);
closeConnection(conn);
}
}
package com.bjsxt;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class JdbcTest {
//向Departments表中添加一条数据
public void insertDepartments(String department_name,int location_id) {
Connection conn = null;
Statement state = null;
try {
//注册驱动 通过反射;//是为了加载类驱动,其实就是判断Driver类是否存在(有没有导包)
//创建链接
conn = JdbcUtil.getConnection();
//执行sql
String sql = "insert into departments values(default,'"+department_name+"',"+location_id+")";
state = conn.createStatement();
int flag = state.executeUpdate(sql);
System.out.println(flag);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
JdbcUtil.closeStatement(state);
JdbcUtil.closeConnection(conn);
}
}
//更新department表中的department_id为6的数据,将部门名称修改为教学部,location_id修改为8
public void updateDepartments(String department_name,int location_id,int department_id) {
Connection conn = null;
Statement state=null;
try {
conn = JdbcUtil.getConnection();
state = conn.createStatement();
//语句的处理,需要字符串的拼接
String sql = "update departments d set d.department_name='"+department_name+"',d.location_id = "+location_id+" where d.department_id="+department_id+"";
int flag = state.executeUpdate(sql);
System.out.println(flag);
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}finally {
JdbcUtil.closeResource(state, conn);
}
}
public static void main(String[] args) {
JdbcTest test = new JdbcTest();
// test.insertDepartments("人力资源2", 10);
test.updateDepartments("外联部", 5, 6);
}
}
driver=com.mysql.jdbc.Driver
jdbcUrl=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8
username=root
userpassword=123456