老师,我的代码有什么错吗?
来源:6-6 自由编程
qq_就是这样_1
2020-10-06 14:27:30
package com.imooc.jdbc.exam; import java.sql.Connection; import java.sql.Date; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.Statement; import java.sql.Time; import org.junit.Test; import com.imooc.jdbc.utils.JDBCUtils; public class JDBCCourse { @Test //按创建时间倒序排序显示所有数据 public void demo6() { Connection conn=null; PreparedStatement pstmt=null; ResultSet rs=null; try { conn=JDBCUtils.getConnection(); String sql="select * from course order by createTime"; pstmt=conn.prepareStatement(sql); rs=pstmt.executeQuery(); while(rs.next()) { int id=rs.getInt("id"); String name=rs.getString("name"); String category=rs.getString("category"); String desp=rs.getString("desp"); Time createTime=rs.getTime("createTime"); System.out.println(id+" "+name+" "+category+" "+desp+" "+createTime); } }catch(Exception e) { e.printStackTrace(); }finally { JDBCUtils.release(pstmt, conn); } } @Test //删除Java Web这门课程 public void demo5() { Connection conn=null; PreparedStatement pstmt=null; try { conn=JDBCUtils.getConnection(); String sql="delete from course where name='JAVA Web'"; pstmt=conn.prepareStatement(sql); int num=pstmt.executeUpdate(); if(num>0) { System.out.println("删除成功"); }else { System.out.println("删除失败"); } }catch(Exception e) { e.printStackTrace(); }finally { JDBCUtils.release(pstmt, conn); } } @Test //将Java零基础的课程描述改为Java语法 public void demo4() { Connection conn=null; PreparedStatement pstmt=null; try { conn=JDBCUtils.getConnection(); String sql="update course set name='JAVA语法' where name='JAVA零基础'"; pstmt=conn.prepareStatement(sql); int num=pstmt.executeUpdate(); if(num>0) { System.out.println("修改成功"); }else { System.out.println("修改失败"); } }catch(Exception e) { e.printStackTrace(); }finally { JDBCUtils.release(pstmt, conn); } } @Test //查询课程名称为Java零基础的数据并显示 public void demo3() { Connection conn=null; PreparedStatement pstmt=null; ResultSet rs=null; try { conn=JDBCUtils.getConnection(); String sql="select * from course where name='JAVA零基础'"; pstmt=conn.prepareStatement(sql); rs=pstmt.executeQuery(); while(rs.next()) { int id=rs.getInt("id"); String name=rs.getString("name"); String category=rs.getString("category"); String desp=rs.getString("desp"); Time createTime=rs.getTime("createTime"); System.out.println(id+" "+name+" "+category+" "+desp+" "+createTime); } }catch(Exception e) { e.printStackTrace(); }finally { JDBCUtils.release(rs, pstmt, conn);; } } @Test //显示所有数据 public void demo2() { Connection conn=null; PreparedStatement pstmt=null; ResultSet rs=null; try { conn=JDBCUtils.getConnection(); String sql="select * from course"; pstmt=conn.prepareStatement(sql); rs=pstmt.executeQuery(); while(rs.next()) { int id=rs.getInt("id"); String name=rs.getString("name"); String category=rs.getString("category"); String desp=rs.getString("desp"); Time createTime=rs.getTime("createTime"); System.out.println(id+" "+name+" "+category+" "+desp+" "+createTime); } }catch(Exception e) { e.printStackTrace(); }finally { JDBCUtils.release(rs, pstmt, conn); } } @Test //表格中的三条数据添加到数据库 public void demo1() { Connection conn=null; PreparedStatement pstmt=null; ResultSet rs=null; try { conn=JDBCUtils.getConnection(); String sql="insert into course values(null,?,?,?,?),(null,?,?,?,?),(null,?,?,?,?)"; pstmt=conn.prepareStatement(sql); pstmt.setString(1,"JAVA零基础"); pstmt.setString(2,"JAVA"); pstmt.setString(3,"JAVA基础语法"); pstmt.setDate(4,new Date(System.currentTimeMillis())); pstmt.setString(5,"JAVA Web"); pstmt.setString(6,"JAVA"); pstmt.setString(7,"JSP和Servlet"); pstmt.setDate(8,new Date(System.currentTimeMillis())); pstmt.setString(9,"前端小白"); pstmt.setString(10,"前端"); pstmt.setString(11,"HTML/CSS/JS"); pstmt.setDate(12,new Date(System.currentTimeMillis())); int num=pstmt.executeUpdate(); if(num>0) { System.out.println("添加成功"); }else { System.out.println("添加失败"); } }catch(Exception e) { e.printStackTrace(); }finally { JDBCUtils.release(rs, pstmt, conn); } } }
package com.imooc.jdbc.utils; import java.io.IOException; 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; /** * JDBC的工具类 * @author Administrator * */ public class JDBCUtils { private static final String driverClass; private static final String url; private static final String username; private static final String password; static { //加载文件属性并解析 Properties props=new Properties(); //如何获得属性文件的输入流 //通常情况下使用类的加载器的方式进行截取 InputStream is=JDBCUtils.class.getClassLoader().getResourceAsStream("jdbc.properties"); try { props.load(is); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } driverClass=props.getProperty("driverClass"); url=props.getProperty("url"); username=props.getProperty("username"); password=props.getProperty("password"); } /** * 注册驱动的方法 * @throws ClassNotFoundException */ public static void loadDriver() throws ClassNotFoundException { Class.forName(driverClass); } /** * 获得连接的方法 * @throws SQLException */ public static Connection getConnection() throws Exception { loadDriver(); Connection conn=DriverManager.getConnection(url,username,password); return conn; } /** * 资源释放 */ public static void release(Statement stmt,Connection conn) { if(stmt!=null) { try { stmt.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } stmt=null; if(conn!=null) { try { conn.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } conn=null; } public static void release(ResultSet rs,Statement stmt,Connection conn) { if(stmt!=null) { try { stmt.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } stmt=null; if(conn!=null) { try { conn.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } conn=null; if(rs!=null) { try { rs.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } rs=null; } }
create table course( id int unsigned auto_increment key, name varchar(20) not null, category varchar(20) not null, desp varchar(30) not null, createTime datetime not null );
2回答
好帮手慕小班
2020-10-09
同学你好,1、同学可以将new java.sql.Timestamp(new java.util.Date().getTime())理解为一种通用的形式。
2、显示出来的时间也是一样,同学是说同时存入的数据,时间是一样的吗,如果是,同学存入数据时,获取到的系统时间是一样的没有问题。
如果同学想表达的不是这个意思,还麻烦同学具体描述一下。
祝学习愉快~
好帮手慕珊
2020-10-07
同学,你好!代码整体完成得很不错,只是时间显示的时候没有日期。
修改建议:获取时间的时候使用getString()方法就可以了。
另外,如果不想让时分秒都是0,也可以在插入数据时使用如下方法:
pstmt.setTimestamp(4, new java.sql.Timestamp(new java.util.Date().getTime()));
用于替换setDate(),修改后代码如下所示:
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
相似问题
回答 4
回答 1
回答 1
回答 2
回答 3