1. 本周学习总结

1.1 以你喜欢的方式(思维导图或其他)归纳总结多数据库相关内容。

答:

2. 书面作业

1. MySQL数据库基本操作

建立数据库,将自己的姓名、学号作为一条记录插入。(截图,需出现自己的学号、姓名)

答:

在自己建立的数据库上执行常见SQL语句(截图)

-参考:实验任务书-题目1

2. 使用JDBC连接数据库与Statement

2.1 使用Statement操作数据库。(粘贴一段你认为比较有价值的代码,出现学号)

答:

//201521123001
conn = DriverManager.getConnection(URL,userName,password);
//获得数据库连接
Statement statement = conn.createStatement();
ResultSet resultSet = statement.executeQuery(sql);
//发送SQL语句

2.2 使用JDBC操作数据库主要包含哪几个步骤?

-参考:实验任务书-题目2

答:

  1. 注册JDBC驱动(jdbc4.0 后无需使用这句进行驱动注册操作)

    Class.forName(driverName);
  2. 创建连接

    conn = DriverManager.getConnection(URL,userName,password);
  3. 通过连接创建语句

    Statement statement = conn.createStatement();
  4. 通过语句获得结果集

    ResultSet resultSet = statement.executeQuery(sql);
  5. 处理结果集

    while(resultSet.next())
  6. 释放资源

    conn.close()

3. PreparedStatement与参数化查询

3.1 使用PreparedStatement根据用户指定的查询条件进行查询。(粘贴一段你认为比较有价值的代码,出现学号)

答:

//201521123001
strSql = "select * from student where name= ?";
pStatement = con.prepareStatement(strSql);
pStatement.setString(1, "小明");
rs = pStatement.executeQuery();

3.2 批量更新-批量插入1000个学生,统计整个操作所消耗的时间。(使用方法executeBatch)

参考:实验任务书-题目3

答:

//201521123001
pStatement = con.prepareStatement(strSql);
long btime = System.currentTimeMillis();
int t;
for(int i = 0 ; i<1000 ; i++)
{
pStatement.setString(1, "小明");
pStatement.addBatch();
t = pst.executeUpdate();
}
long atime=System.currentTimeMillis();

数据量少于1000时,多个values方式比较快,随着数据量增加,batch效率会明显高于多values方式

4. JDBCUtil与DAO

4.1 粘贴一段你认为比较有价值的代码,出现学号

答:

//201521123001
conn = JDBCUtil.getConnection();
stat = conn.createStatement();
rs = stat.executeQuery(sql);
while (rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
System.out.format("该记录的id=%d,姓名=%s\n", id, name);
}

4.2 使用DAO模式访问数据库有什么好处?

参考:实验任务书-题目5

答:

DAO模式将数据库分为3层:数据层、业务层、交互层,每层所写的内容分开,方便代码编写和调用,让逻辑更清晰,防止思路混乱

5. 使用数据库改造购物车系统

5.1 使用数据库改造以前的购物车系统(应有图形界面)。如果以前为完成购物车系统,可编写基于数据库的学生管理系统。包括对学生的增删改查,要求使用。

答:

//201521123001
try {
//更新商品数据
String strSql = "update Commodity set name = ?";
rs = pStatement.executeQuery(strSql);
rs.setString(1, name);
rs.setDouble(2, price);
rs.setInteger(3, num);
row = rs.executeUpdate();
}
catch (Exception e) {
e.printStackTrace();
}
finally {
pStatement.close();
rs.close();
row.close();
}

5.2 相比较使用文件,使用数据库存储与管理数据有何不一样?

答:

首先,数据库可以存储大量的信息;

并且,数据库管理方便,可以用sql操作,对大量数据易于增,删,改,查,极大减少了工作量;

最后,数据库比普通的存储方式安全,一般的数据库都有备份数据的功能和相应的命令可以实现它;

3. 码云

3.1. 码云代码提交记录

在码云的项目中,依次选择“统计-Commits历史-设置时间段”, 然后搜索并截图

201521123001 《Java程序设计》第14周学习总结的更多相关文章

  1. 2018面向对象程序设计(Java)第14周学习指导及要求

    2018面向对象程序设计(Java)第14周学习指导及要求(2018.11.29-2018.12.2)   学习目标 (1) 掌握GUI布局管理器用法: (2) 掌握各类Java Swing组件用途及 ...

  2. 面向对象程序设计(JAVA) 第14周学习指导及要求

    2019面向对象程序设计(Java)第14周学习指导及要求 (2019.11.29-2019.12.2)   学习目标 (1)掌握GUI布局管理器用法: (2)掌握Java Swing文本输入组件用途 ...

  3. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  4. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  5. 201521123038 《Java程序设计》 第九周学习总结

    201521123038 <Java程序设计> 第九周学习总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 2. 书面作业 本次PTA作业题集异常 ...

  6. 20155303 2016-2017-2 《Java程序设计》第二周学习总结

    20155303 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 『注意』 "//"为单行批注符: "/*"与&quo ...

  7. 20175221 2018-2019-2 《Java程序设计》第一周学习总结

    20175221 2018-2019-2 <Java程序设计>第一周学习总结 教材学习内容总结 本周通过观看书本配套视频,学到了如解释器,编译器等一些简单概念. 还懂得了java的一些简单 ...

  8. 20175314 《Java程序设计》第九周学习总结

    20175314 <Java程序设计>第九周学习总结 教材学习内容总结 根据课本的介绍下载了MySQL和Navicat for MySQL并成功对后者进行破解 MySQL客户端管理工具(如 ...

  9. 20175314 《Java程序设计》第二周学习总结

    20175314 <Java程序设计>第二周学习总结 教材学习内容总结 我在APPstore上发现了一个可以支持我们在IOS系统上学习实践Java程序的开发环境,只需要购买专业版就可以使用 ...

  10. 20155312 2016-2017-2 《Java程序设计》第九周学习总结

    20155312 2016-2017-2 <Java程序设计>第九周学习总结 课堂内容总结 两个类有公用的东西放在父类里. 面向对象的三要素 封装 继承 多态:用父类声明引用,子类生成对象 ...

随机推荐

  1. js的call,apply,bind的使用与区别

    在原生js中会有三个很常见的函数,call,apply,bind 他们的作用就是改变当前函数的this指针, 但是细微来说他们还是有不同的. 1)call,apply都是执行某一函数,发现this有变 ...

  2. RobotFramework自动化测试框架-移动手机自动化测试AppiumLibrary库其它的常见自动化关键字

    关键字 使用描述 Close Application 关闭掉当前已经打开的APP Application,该关键字不需要接收任何的参数,但是使用该关键字的前提是已经打开了一个APP Applicati ...

  3. 状态机/迭代器/LINQ/协程

    状态机 有限状态机(Finite State Machine 或 Finite State Automata)是软件领域中一种重要的工具. 状态机允许一个对象在其内部状态改变时改变它的行为.对象内部状 ...

  4. asp.net core MVC 过滤器之ActionFilter过滤器(二)

    本系类将会讲解asp.net core MVC中的内置全局过滤器的使用,将分为以下章节 asp.net core MVC 过滤器之ExceptionFilter过滤器(一) asp.net core ...

  5. java版飞机大战 实战项目详细步骤.md

    [toc] 分析 飞机大战 首先对这个游戏分析,在屏幕上的物体都是飞行物,我们可以把建一个类,让其他飞行物继承这个类.游戏中应有英雄机(也就是自己控制的飞机).敌人.而敌人应该分为打死给分的飞机(就是 ...

  6. 【Java学习笔记之二十五】初步认知Java内部类

    可以将一个类的定义放在另一个类的定义内部,这就是内部类. 内部类是一个非常有用的特性但又比较难理解使用的特性(鄙人到现在都没有怎么使用过内部类,对内部类也只是略知一二). 第一次见面 内部类我们从外面 ...

  7. 错误Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future:

    今天写PHP代码,遇到了这个非常不友好的报错(Deprecated: mysql_connect(): The mysql extension is deprecated and will be re ...

  8. Linux中的定时任务at、crontab

    at at命令可以用来在某一时段执行一次任务,只会执行一次,不会重复执行. at命令是由atd服务来控制的,使用之前先查看atd服务是否正常: $ /etc/init.d/atd status * a ...

  9. Navicat for MySQL11--使用经验

    Navicat for MySQL11--使用经验.. --------- /-------------------导出SQL:右键表--转储SQL文件--结构和数据---(Finished - Su ...

  10. sweetalert------一个非常萌的alert!

    今天逛github的时候发现一个非常萌的alert,比IE和各大浏览器的原alert美多惹. github项目地址:https://github.com/t4t5/sweetalert 通过git c ...