一般是main方法执行测试程序的错误,改成使用测试单元进行测试
之前在main中写的代码:执行报上述错误。
public class keyDruidDemo {
public static void main(String[] args) throws Exception {
String inputName = "sunwukong";
String inputPassword = "123456";
String email = "2138@qq.com";
String birthday = "2001-02-21";
String infoId = "6";
int inputInfoId = Integer.valueOf(infoId);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date inputBirthday = sdf.parse(birthday);
Properties prop = new Properties();
//读取配置文件 配置文件路径选择以项目根目录路径开头的路径
prop.load(new FileInputStream("NativeMybatis/src/main/resources/com/kdy/druid.properties"));
//获取连接池对象
DataSource dataSource = DruidDataSourceFactory.createDataSource(prop);
//获取连接
Connection conn = dataSource.getConnection();
System.out.println(conn);
String sql = "insert into users (name,password,email,birthday,infoId) values(?,?,?,?,?);";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1,inputName);
pstmt.setString(2,inputPassword);
pstmt.setString(3,email);
pstmt.setDate(4,(java.sql.Date)inputBirthday);
pstmt.setInt(5,inputInfoId);
int count = pstmt.executeUpdate();
System.out.println(count);
conn.close();
pstmt.close();
}
}
需要改成:引入junit依赖,然后在test中创建@Test测试:
public class DruidDemoTest {
@Test
public void druidDemoTest() throws Exception {
String inputName = "sunwukong";
String inputPassword = "123456";
String email = "2138@qq.com";
String birthday = "2001-02-21";
String infoId = "6";
int inputInfoId = Integer.valueOf(infoId);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date inputBirthday = sdf.parse(birthday);
Properties prop = new Properties();
//读取配置文件 配置文件路径选择以项目根目录路径开头的路径
prop.load(new FileInputStream("src/main/resources/com/kdy/druid.properties"));
//获取连接池对象
DataSource dataSource = DruidDataSourceFactory.createDataSource(prop);
//获取连接
Connection conn = dataSource.getConnection();
System.out.println(conn);
String sql = "insert into users (name,password,email,birthday,infoId) values(?,?,?,?,?);";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1,inputName);
pstmt.setString(2,inputPassword);
pstmt.setString(3,email);
pstmt.setDate(4,new java.sql.Date(inputBirthday.getTime()));
pstmt.setInt(5,inputInfoId);
int count = pstmt.executeUpdate();
System.out.println(count);
conn.close();
pstmt.close();
}
}