20175320 2018-2019-2 《Java程序设计》第9周学习总结

教材学习内容总结

本周学习了教材的第十一章的内容,在这章中介绍了JDBC与Mysql数据库,通过本章我了解到了如何利用jdbc驱动连接Mysql数据库,并对数据库内容进行查看以及修改。与教材不同的是,我使用了老师提供的xampp与PHPAdmin替换了教材中的mysql以及navicat,并在IDEA中编译运行了代码。

mysql数据库的连接

教材中选择从官网下载安装mysql服务,并在启动Mysql数据库服务器后进行了初始化以及设置了root用户,而使用xampp只需要下载安装好xampp,并在初始界面的Mysql后点击start即可

Mysql客户端管理工具

教材中使用了navicat作为客户端在Mysql服务器上建立数据库的软件,需要下载安装并在启动了Mysq服务器后进行创建数据库以及建立表等一系列操作。而使用xampp只需要在浏览器中输入http://localhost并选择PHPAdmin即可对数据库进行管理。

JDBC

JDBC是专门用于操作数据库的API,使用JDBC的应用程序一旦和数据库建立连接,就可以使用JDBC提供的API操作数据库。而JDBC与数据库的连接需要驱动,这就需要下载相应数据库的驱动。在教材中连接驱动复制到jdk的jre\lib\ext目录下,同时也需要复制到jre的lib\ext目录下,但新版本的jdk没有了jre下的ext目录,这对我们下一步的操作造成了较大的困难。而在IDEA中只需要配置驱动路径即可实现程序与数据库的连接。

程序中管理数据库

  • 加载数据库驱动:Class.forName("com.mysql.jdbc.Driver")
  • 连接数据库:getConnection(java.lang.String)
  • 向数据库发送SQL查询语句:createStatement()
  • 处理查询结果:executeQuerey("SELECT * FROM <数据库名>"
  • 关闭当前连接:close()
  • 其余操作基本都是基于以上方法,只是在个别方法有所差异。

教材学习中的问题和解决过程

本周的主要内容是了解如何使用程序对数据库进行访问,本章有大量安装以及使用软件的内容,需要练习的程序不多本身,且基本都是按照程序中管理数据库的五个顺序进行。

代码调试中的问题和解决过程

代码运行过程中没有遇到太大问题,但在配置运行条件时遇到了较多的问题。

  • 问题1:xampp无法连接Apache。
  • 问题1解决方法:根据窗口的提示得知是接口被占用,点击netstat,发现443接口被占用,点击Apache后的config,选择httpd-ssl.conf,将[Listen] 443改为其接口。


  • 问题2:在使用SQL语句创建新数据库时显示如图的错误:
  • 问题2解决方法:直接在界面中点击新建,之后可以在管理界面中选择SQL语句或通过选项进行管理。

    MessageDAODemo运行结果:

代码托管

示例代码都是在IDEA中运行的,虚拟机中没有本周示例代码

上周考试错题总结

上周测试已在上一篇博客中进行总结。

其他(感悟、思考等,可选)

本周的内容并不是很难,但在配置运行环境时遇到了很多的问题,本来是想在windows下运行代码的,但在实际操作过程中由于软件的更新、环境变量以及其他因素造成了许多困难,而上网搜索很难找到合适的解决方法,最后还是选择了xampp以及IDEA来进行运行。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第九周 1398/7791 2/13 30/182

尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

参考:软件工程软件的估计为什么这么难软件工程 估计方法

参考资料

20175320 2018-2019-2 《Java程序设计》第9周学习总结的更多相关文章

  1. 学号 20175212 《Java程序设计》第九周学习总结

    学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...

  2. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

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

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

  4. 20145213《Java程序设计》第一周学习总结

    20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

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

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

  6. 20145330孙文馨 《Java程序设计》第一周学习总结

    20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

  7. 20145337 《Java程序设计》第九周学习总结

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

  8. 20145337 《Java程序设计》第二周学习总结

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

  9. 20145218《Java程序设计》第一周学习总结

    20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

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

    20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...

随机推荐

  1. 【汇总目录】Java

    疯狂Java学习笔记 [2019年03月20日] Lambda表达式与函数式接口 [2019年03月20日] Lambda表达式概念与基本语法 [2019年03月18日] 内部类 [2019年02月1 ...

  2. 【easy】110. Balanced Binary Tree判断二叉树是否平衡

    判断二叉树是否平衡 a height-balanced binary tree is defined as a binary tree in which the depth of the two su ...

  3. 此主机支持Intel VT-x,但Intel VT-x处于禁用状态

    原因:未开启虚拟化技术 解决方法:https://www.cnblogs.com/jiefu/p/10711955.html

  4. 爬虫-requests

    一.爬虫系列之第1章-requests模块 爬虫简介 概述 近年来,随着网络应用的逐渐扩展和深入,如何高效的获取网上数据成为了无数公司和个人的追求,在大数据时代,谁掌握了更多的数据,谁就可以获得更高的 ...

  5. Java Spring Boot VS .NetCore (二)实现一个过滤器Filter

    Java Spring Boot VS .NetCore (一)来一个简单的 Hello World Java Spring Boot VS .NetCore (二)实现一个过滤器Filter Jav ...

  6. numpy的array合并-【老鱼学numpy】

    概述 本节主要讲述如何把两个数组按照行或列进行合并. 按行进行上下合并 例如: import numpy as np a = np.array([1, 1, 1]) b = np.array([2, ...

  7. SQL反模式学习笔记22 伪键洁癖,整理数据

    目标:整理数据,使不连续的主键Id数据记录变的连续. 反模式:填充断档的数据空缺. 1.不按照顺序分配编号 在插入新行时,通过遍历表,找到的第一个未分配的主键编号分配给新行,来代替原来自动分配的伪主键 ...

  8. DcotrineFixtureBundle学习

    根据官方文档对Fixture进行学习 首先使用 composer require --dev doctrine/doctrine-fixtures-bundle 来导入扩展 之后注意,如果symfon ...

  9. 如何用div绘制一个容器,例如圆形

    需求:一个圆形的容器,里面有两种颜色,随比率不同而变化. 实现同一个容器中两种颜色变化的关键是css渐变 //background:linear-gradient(#818181 30%,#06FF3 ...

  10. YII2 console中引用其他模块(子项目)的model时出现model找不到命名空间的问题解决

    YII2 console中写定时任务, 想使用其他模块的model, 在 console的yii.php 入口文件中引入其他模块的配置文件, 否者会出现model等命名空间找不到的问题. 还有, 命名 ...