20165202 2017-2018-2 《Java程序设计》第7周学习总结
20165202 2017-2018-2 《Java程序设计》第7周学习总结
教材学习内容总结
Ch11
连接MySQL数据库
下载JDBC-MySQL数据库驱动
加载JDBC-MySQL数据库驱动
连接数据库
(Connection getConnection(java.lang.String,java.lang.String,java.lang.String)和
Connection getConnection(java.lang.String))如果数据库的表中的记录有汉字,那么在建立连接时需要额外多传递一个参数characterEncoding,并取值gb2312或utf-8
String uri =
"jdbc:mysql://localhost/students?useSSL=true&characterEncoding=utf-8";
con = DriverManager.getConnection(uri, "root",""); //连接代码
查询操作
- 顺序查询:
指ResultSet对象一次只能看到一个数据行,使用next()方法移到下一个数据行,next()方法最初的查询位置,即游标位置,位于第一行的前面。next()方法向下(向后、数据行号大的方向)移动游标,移动成功返回true,否则返回false
- 顺序查询:
更新、添加与删除操作
- 更新
update 表 set 字段 = 新值 where<条件子句> - 添加
insert into 表(字段列表)value (对应的具体的记录) - 删除
delete from 表名 where <条件子句>
- 更新
使用预处理语句
通用查询
事务
教材学习中的问题和解决过程
问题1:看过教材后JDBC的用途和意义不太明白
问题1解决方案:参考《深入浅出JDBC-快速入门》
不同的可执行文件都能通过JDBC访问数据库,又兼备存储的优势。简单说它就是JAVA与数据库的连接的桥梁或者插件,用JAVA代码就能操作数据库的增删改查、存储过程、事务等。
JDBC提供的接口包括:
JAVA API:提供对JDBC的管理链接;JAVA
Driver API:支持JDBC管理到驱动器连接。
DriverManager:这个类管理数据库驱动程序的列表,查看加载的驱动是否符合JAVA Driver API的规范。
Connection:与数据库中的所有的通信是通过唯一的连接对象。
Statement:把创建的SQL对象,转而存储到数据库当中。
ResultSet:它是一个迭代器,用于检索查询数据。
URL用于标识数据库的位置,通过URL地址告诉JDBC程序连接哪个数据库,URL的写法为:

代码调试中的问题和解决过程
问题1:MySQL初始化失败

问题1解决方案:
使用管理员的身份打开cmd,再执行
mysqld --initialize-insecure指令。如果之前已经以非管理员的形式执行了指令,一定要删除原来的data文件夹。如果提示“该文件正在被使用”,需要CTRL+SHIFT+ESC打开任务管理器关闭mysql进程即可正常删除data文件夹。
代码托管

上周考试错题总结
1.已知list是一个合法的集合引用,getCollection()返回一个合法集合的引用,下列合法的是?
A . for(Object o : list)
B . for(Object o : getCollection())
C . for(Object o : list.iterator())
D . for(lterator i ; list.iterator() ; i.hasNext() )
E . for(lterator i=list.iterator(); i.hasNext(); )
正确答案: B E
2.下列关于泛型类的子类的说法,正确的个数为
①LinkedList泛型类创建一个链表结构的对象。
②Stack泛型类创建一个堆栈对象。
③HashMap泛型类创建散列映射。
④DelayQueue泛型类创建一个无界阻塞队列。
⑤TreeSet泛型类创建树映射。
⑥Vector创建可增长的对象数组。
A . 6
B . 5
C . 4
D . 3
正确答案: B
解析:⑤TreeSet泛型类创建树集。
3.下列关于TreeSet泛型类常用方法的介绍,正确的是
A . public boolean contains(Object o) 如果此 set 包含指定的元素,则返回 true。如果指定对象无法与该 set 中的当前元素进行比较,或不包含,则返回false。
B . public boolean add(E e)将指定的元素添加到此 set。如果此 set 已经包含这样的元素,则该调用不改变此 set 并返回 false。
C . public boolean addAll(Collection<? extends E> c)将指定 collection 中的所有元素添加到此 set 中。如果此 set 由于调用而发生更改,则返回 true。
D . public E lower(E e) 返回此 set 中严格小于给定元素的最大元素;如果不存在这样的元素,则返回 null。
正确答案: B C D
解析:A项:如果指定对象无法与该 set 中的当前元素进行比较,则抛出ClassCastException异常。
4.下列关于正则表达式的说法,正确的是
A . \ba\w*\b匹配以字母a开头的单词
B . \d+匹配1个或更多连续的数字。
C . \b\w{6}\b 匹配6个及以上字符的单词。
D . [0-9]代表的含意与\d就是完全一致的:一位数字
E . \S+匹配不包含空白符的字符串。
F . (\d{1,3}.){3}\d{1,3}用来匹配 IP地址。
正确答案: A B D E
解析C项:\b\w{6}\b 匹配刚好6个字符的单词。F项: IP地址中每个数字都不能大于255,该表达式忽略了这个约束条件。
5.下列说法正确的是
A . Java 8之前,对日期进行运算,使用DateFormat类。
B . 需要人类能理解的时间,建议使用Date类的toString()。
C . 现在国际上通用的标准时间是GMT。
D . new Date(System.currentTimeMillis())等价于new Date()
正确答案: D
6.What is the output of the following code?(下面代码的运行结果是?)
LocalDate date = LocalDate.of(2018, Month.APRIL, 40);
System.out.println(date.getYear() + " " + date.getMonth()
+ " "+ date.getDayOfMonth());
A . 2018 APRIL 4
B . 2018 APRIL 30
C . 2018 MAY 10
D . Another date
E . The code does not compile.
F . A runtime exception is thrown.
正确答案: F
解析:Java throws an exception if invalid date values are passed. There is no 40th day in April—or any other month for that matter.
7.下列哪个表达式是正确的(无编译错误)?
A . int m =Float.parseFloat("567");
B . int m =Short.parseShort("567")
C . byte m =Integer.parseInt("2");
D . float m =Float.parseDouble("2.9")
正确答案: C
8.对于如下代码,下列哪个叙述是正确的?
public class E {
public static void main (String args[]) {
String s1 = args[1];
String s2 = args[2];
String s3 = args[3];
System.out.println(s3);
}
}
A . 程序出现编译错误。
B . 无编译错误,在命令行执行程序:“java E I love this game”,程序输出this。
C . 无编译错误,在命令行执行程序:“java E let us go”,程序无运行异常。
D . 无编译错误,在命令行执行程序:“java E 0 1 2 3 4 5 6 7 8 9”程序输出3。
正确答案: D
学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | |
|---|---|---|---|
| 目标 | 5000行 | 30篇 | 400小时 |
| 第一周 | 24/24 | 1/4 | 15/15 |
| 第二周 | 423/423 | 2/6 | 14/29 |
| 第三周 | 702/1109 | 1/7 | 16/45 |
| 第四周 | 918/2027 | 2/9 | 16/61 |
| 第五周 | 1208/3235 | 2/11 | 15/76 |
| 第六周 | 1137/4372 | 2/13 | 14/90 |
| 第七周 | 549/4921 | 1/14 | 10/100 |
20165202 2017-2018-2 《Java程序设计》第7周学习总结的更多相关文章
- 学号 20175212 《Java程序设计》第九周学习总结
学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
- 20145213《Java程序设计》第二周学习总结
20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...
- 20145213《Java程序设计》第一周学习总结
20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...
- 21045308刘昊阳 《Java程序设计》第九周学习总结
21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...
- 20145330孙文馨 《Java程序设计》第一周学习总结
20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...
- 20145337 《Java程序设计》第九周学习总结
20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...
- 20145337 《Java程序设计》第二周学习总结
20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...
- 20145218《Java程序设计》第一周学习总结
20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...
- 《Java程序设计》第九周学习总结
20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...
随机推荐
- linux中断的下半部机制
一.中断处理为什么要下半部?Linux在中断处理中间中断处理分了上半部和下半部,目的就是提高系统的响应能力和并发能力.通俗一点来讲:当一个中断产生,调用该中断对应的处理程序(上半部)然后告诉系统,对应 ...
- ThreadLocal 从源码角度简单分析
目录 ThreadLcoal源码浅析 ThreadLocal的垃圾回收 Java引用 ThreadLocal的回收 各线程中threadLocalMap的回收 内存泄露问题 总结 参考 ThreadL ...
- bootstrap-datetimepicker日期控件下载
bootstrap-datetimepicker.js bootstrap-datetimepicker.zh-CN.js bootstrap-datetimepicker.min.css 下载网站: ...
- STL的其他用法(adjacent_find, find_first_of, sort_heap, merge, binary_search)总结
2017-08-20 17:26:07 writer:pprp 1.adjacent_find() 下面是源码实现: template <class ForwardIterator> Fo ...
- Python学习札记(十) Function1 函数调用
参考:调用函数 Note 1.Python内置了很多函数,我们可以直接对这些函数进行调用.Python官网:Built in Fuctions eg.调用abs函数(取绝对值函数): >> ...
- python中的上下文管理器
刚刚看了vamei大神的上下文管理器博客,理解如下: 其实我自己经常用到上下文管理器,尤其是在打开文件的时候,如果自己比较懒,不想手工打上f.close(),使用上下文管理器就ok拉. 上下文管理器就 ...
- Python基础笔记系列八:字符串的运算和相关函数
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! 字符串的运算1.字符串的加法和乘法 python中不但支持字符串相加,还支 ...
- Decode Ways,编码方式数量求解。动态规划问题。
问题描述: A message containing letters from A-Z is being encoded to numbers using the following mapping: ...
- HDU4910 Problem about GCD
本文版权归ljh2000和博客园共有,欢迎转载,但须保留此声明,并给出原文链接,谢谢合作. 本文作者:ljh2000 作者博客:http://www.cnblogs.com/ljh2000-jump/ ...
- Memcached stats sizes 命令
Memcached stats sizes 命令用于显示所有item的大小和个数. 该信息返回两列,第一列是 item 的大小,第二列是 item 的个数. 语法: stats sizes 命令的基本 ...