201521123060 《Java程序设计》第14周学习总结
1.本周学习总结
1.1以你喜欢的方式(思维导图或其他)归纳总结多数据库相关内容。
2.书面作业
1.MySQL数据库基本操作
1.1建立数据库,将自己的姓名、学号作为一条记录插入。(截图,需出现自己的学号、姓名)
1.2在自己建立的数据库上执行常见SQL语句(截图)
再添加一个信息,并查询;
改写姓名;
删除信息;
2.使用JDBC连接数据库与Statement
2.1使用Statement操作数据库。(粘贴一段你认为比较有价值的代码,出现学号)
try {//201521123060
conn = DriverManager.getConnection(URL,userName,password);
Statement statement = conn.createStatement();
ResultSet resultSet = statement.executeQuery(sql);
// id | stuno | name | gender | birthdate | major
while(resultSet.next()){
int id = resultSet.getInt("id");
String stuno = resultSet.getString("stuno");
String name = resultSet.getString("name");
Date date = resultSet.getDate("birthdate");
System.out.print("id="+id+" stuno="+stuno+" name="+name+" birthdate="+date+"\n");
}
} catch (SQLException e) {
e.printStackTrace();
}finally{
if(conn!=null)
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}//可以使用Try..with..resources语法简化
conn = null;
}
2.2你认为使用JDBC操作数据库的套路是什么?有那几点需要注意。
答:1.装载驱动
2.与数据库建立连接(Connection)
3.向数据库发送SQL语句(statement)
4.获得和处理查询或更新语句返回的结果
5.关闭连接,释放资源
3.PreparedStatement与参数化查询
3.1使用PreparedStatement根据用户指定的查询条件进行查询。(粘贴一段你认为比较有价值的代码,出现学号)
// 根据参数查询数据
strSql = "select * from students where Id < ?";
pStatement = con.prepareStatement(strSql);
pStatement.setInt(1, 10);
rs = pStatement.executeQuery();//201521123060
// 数据库中存在如下记录
strSql = "select * from students";
rs = pStatement.executeQuery(strSql);
3.2批量更新-批量插入1000个学生,统计整个操作所消耗的时间。对比普通方法插入与使用executeBatch
方法所消耗的时间。(使用JUint4测试,需要出现时间对比截图)
4.JDBCUtil与DAO
4.1粘贴一段你认为比较有价值的代码,出现学号
//201521123060
public static void registerDriver() {
try {
Class.forName(driverName);// jdbc4.0以前需要这句进行驱动注册
} catch (ClassNotFoundException e) {
e.printStackTrace();
System.out.println("找不到驱动");
}
}
public static Connection getConnection() throws SQLException {
Connection conn = null;
System.out.println("正在连接数据库...");
conn = DriverManager.getConnection(url, userName, password);
System.out.println("数据库已连接!");
return conn;
}
public static void closeConnection(Connection conn) {
System.out.println("正在释放所有资源...");
if (conn != null) {
try {
conn.close();
conn = null;
} catch (SQLException e) {
e.printStackTrace();
}
}
4.2使用DAO模式访问数据库有什么好处?
答:方便代码的编写,使程序层次分明。
5.使用数据库改造购物车系统
5.1使用数据库改造以前的购物车系统(应有图形界面)。如果以前为完成购物车系统,可编写基于数据库的学生管理系统。包括对学生的增删改查,要求使用。
5.2相比较使用文件,使用数据库存储与管理数据有何不一样?
3.码云
3.1.码云代码提交记录