6-6 自由编程 作业
来源:6-6 自由编程
csm032
2020-04-24 22:19:01
————————mysql———————— create table course( id int unsigned key auto_increment comment '课程编号', name varchar(20) not null comment '课程名称', category varchar(20) not null comment '所属方向', desp varchar(30) not null comment '课程描述', createTime timestamp not null comment '创建时间' );
————————JDBCDemo2———————— package com.imooc.jdbc.demo; import java.sql.Connection; import java.sql.Date; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.Timestamp; import org.junit.Test; import com.imooc.jdbc.utils.JDBCUtils; import com.imooc.jdbc.utils.SearchInfo; public class JDBCDemo2 { @Test public void demo() { Connection conn=null; PreparedStatement pstmt=null; ResultSet rs=null; String str=""; try { conn=JDBCUtils.getConnection(); // 1、首先将表格中的三条数据添加到数据库 String sql="insert course values(null,?,?,?,?),(null,?,?,?,?),(null,?,?,?,?)"; pstmt=conn.prepareStatement(sql); pstmt.setString(1, "Java零基础"); pstmt.setString(2, "Java"); pstmt.setString(3, "Java基础语法"); pstmt.setTimestamp(4, new Timestamp(System.currentTimeMillis())); pstmt.setString(5, "Java Web"); pstmt.setString(6, "Java"); pstmt.setString(7, "JSP和Servlet"); pstmt.setTimestamp(8, new Timestamp(System.currentTimeMillis())); pstmt.setString(9, "前端小白"); pstmt.setString(10, "前端"); pstmt.setString(11, "HTML/CSS/JS"); pstmt.setTimestamp(12, new Timestamp(System.currentTimeMillis())); int num=pstmt.executeUpdate(); if(num>0) { System.out.println("添加数据成功\n"); // System.out.println(new Timestamp(System.currentTimeMillis())); }else { System.out.println("添加数据失败\n"); } // 2、显示所有数据 sql="select * from course"; pstmt=conn.prepareStatement(sql); rs=pstmt.executeQuery(); str=SearchInfo.searchInfo(rs); System.out.println(str); // 3、查询课程名称为Java零基础的数据并显示 sql="select * from course where name=?"; pstmt=conn.prepareStatement(sql); pstmt.setString(1, "Java零基础"); rs=pstmt.executeQuery(); str=SearchInfo.searchInfo(rs); System.out.println(str); //4、将Java零基础的课程描述改为Java语法 sql="update course set name=? where name=?"; pstmt=conn.prepareStatement(sql); pstmt.setString(1, "Java语法"); pstmt.setString(2, "Java零基础"); num=pstmt.executeUpdate(); if(num>0) { System.out.println("修改成功\n"); }else { System.out.println("修改失败\n"); } // 5、删除Java Web这门课程 sql="delete from course where name=?"; pstmt=conn.prepareStatement(sql); pstmt.setString(1, "Java Web"); num=pstmt.executeUpdate(); if(num>0) { System.out.println("删除成功\n"); }else { System.out.println("删除失败\n"); } //6、按创建时间倒序排序显示所有数据 sql="select * from course order by createTime desc"; pstmt=conn.prepareStatement(sql); rs=pstmt.executeQuery(); str=SearchInfo.searchInfo(rs); System.out.println(str); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { JDBCUtils.release(rs, pstmt, conn); } } }
————————JDBCUtils———————— 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; 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 pros=new Properties(); InputStream is=JDBCUtils.class.getClassLoader().getResourceAsStream("jdbc.properties"); try { pros.load(is); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } driverClass=pros.getProperty("driverClass"); url=pros.getProperty("url"); username=pros.getProperty("username"); password=pros.getProperty("password"); // driverClass="com.mysql.cj.jdbc.Driver"; // url="jdbc:mysql://localhost:3306/jdbctest?serverTimezone=Hongkong"; // username="root"; // password="123456"; } //加载驱动方法 public static void loadDriver() throws ClassNotFoundException { Class.forName(driverClass); } //建立连接的方法 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(rs!=null) { try { rs.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } rs=null; } 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; } } }
————————SearchInfo———————— package com.imooc.jdbc.utils; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Time; import java.sql.Timestamp; public class SearchInfo { public static String searchInfo(ResultSet rs) throws SQLException { String str=""; while(rs.next()) { int id=rs.getInt("id"); String name=rs.getString("name"); String category=rs.getString("category"); String desp=rs.getString("desp"); Timestamp createTime=rs.getTimestamp("createTime"); str=str+id+" "+name+" "+category+" "+desp+" "+createTime+'\n'; } return str; } }
————————jbc.properties———————— driverClass=com.mysql.cj.jdbc.Driver url=jdbc:mysql://localhost:3306/jdbctest?serverTimezone=Hongkong username=root password=123456
1回答
好帮手慕小脸
2020-04-25
同学的代码完成的不错,继续加油。
祝:学习愉快~
相似问题