1. 本章学习总结
2. 书面作业
Q1. MySQL数据库基本操作
建立数据库,将自己的姓名、学号作为一条记录插入。(截图,需出现自己的学号、姓名)
在自己建立的数据库上执行常见SQL语句(截图)
-参考:实验任务书-题目1
Q2.使用JDBC连接数据库与Statement
2.1使用Statement操作数据库。(粘贴一段你认为比较有价值的代码,出现学号)
conn = DriverManager.getConnection(URL,userName,password);
//获得数据库连接
Statement statement = conn.createStatement();
ResultSet resultSet = statement.executeQuery(sql);
//发送SQL语句
//201521123019
2.2你认为使用JDBC操作数据库的套路是什么?有那几点需要注意。
1.安装数据库驱动
2.建立数据库连接
3.创建数据库操作对象
4.向数据库发送SQL语句
5.执行数据库,处理结果
6.关闭连接,释放资源
Q3.PreparedStatement与参数化查询
3.1使用PreparedStatement根据用户指定的查询条件进行查询。(粘贴一段你认为比较有价值的代码,出现学号)
public void searchByPst()
{
ArrayList<Long> arr=new ArrayList<Long>();
try{
pst=conn.prepareStatement(querySql);
rs=pst.executeQuery();
while(rs.next())
{
arr.add(rs.getLong("ID"));
}
System.out.println(arr);
this.pst.close();
}catch (Exception e)
{
e.printStackTrace();
}
}
//201521123019
3.2批量更新-批量插入1000个学生,统计整个操作所消耗的时间。对比普通方法插入与使用executeBatch方法所消耗的时间。(使用JUint4测试,需要出现时间对比截图)
long t1=System.currentTimeMillis();
for(int i=0;i<1000;i++){
String strSql = "insert into students(stuno,name) values(?,?)";
pStatement = con.prepareStatement(strSql);
pStatement.setString(1, "2015000");
pStatement.setString(2, "张三");
pStatement.addBatch();
}
long t2=System.currentTimeMillis();
Calendar c=Calendar.getInstance();
c.setTimeInMillis(t2-t1);
System.out.println("耗时: " + c.get(Calendar.MILLISECOND) + "ms");
int[] arr=pStatement.executeBatch();
pStatement.executeUpdate();
pStatement.close();
System.out.println(Arrays.toString(arr));
//201521123019
Q4. JDBCUtil与DAO
4.1粘贴一段你认为比较有价值的代码,并说明为什么要摘取这段代码。出现学号
try{
pst=conn.prepareStatement(sql);
pst.setInt(1,id);
rs=pst.executeQuery();
stu.name=rs.getString("Name");
stu.id=rs.getInt("ID");
}catch(Exception e)
{
e.printStackTrace();
}
finally{
try{
rs.close();
pst.close();
}catch(SQLException e) {}
}
return stu;
//201521123019
4.2使用DAO模式访问数据库有什么好处?
DAO模式集成了各类操作,形成一个工具类,数据库的修改只要修改DAO层的访问方式就可以了,不用整个项目都进行修改。
Q5.使用数据库改造购物车系统
5.1使用数据库改造以前的购物车系统(应有图形界面)。如果以前为完成购物车系统,可编写基于数据库的学生管理系统。包括对学生的增删改查,要求使用。
5.2相比较使用文件,使用数据库存储与管理数据有何不一样?
数据库可以存储大量的信息,利用SQL便于管理,安全性更高