20165310java_blog_week7
2165310 《Java程序设计》第7周学习总结
教材学习内容总结
通过JDBC管理数据库
原理图:

链接数据库方式
- `Connection getConnection(java.lang.String) `
- `Connection getConnection(java.lang.String, java.lang.String, java.lang.String)`
- 汉字:传递一个参数characterEncoding
查询操作:
- 创建对象:
try{ Statement sql=con.createStatement();
}
catch(SQLException e ){}- 处理查询结果: 1.`ResultSetrs= sql.executeQuery("SELECT *FROM students");` 2.无论字段是何种属性,总可以使用`getString(intcolumnIndex)`或 `getString(StringcolumnName)`方法返回字段值的串表示 - 关闭链接:`con.close();` - 顺序查询:`Statementstmt= con.createStatement(int type ,intconcurrency);`(可滚动对象) - 条件与排序查询 1.where子语句:`一般格式:select 字段 from 表名 where 条件` 2.排序:`order by`子语句
更新、添加与删除操作
- 更新:`update 表set字段= 新值 where<条件子句>` - 添加: 1.`insert into 表(字段列表) values (对应的具体的记录)` 2.`insert into 表 values (对应的具体的记录)` - 删除:`delete from 表名 where<条件子句>`
由于本周主要配置XAMPP与学习Junit编写测试代码,还有一部分未能学习完成,下面将主要总结本周遇到的学习困难与解决方法
教材学习中的问题和解决过程
1.引入jar包后,Test类依然无法运行,如下图所示:

原因与解决方法:测试类必须由test开头,把test放到类名的后半部分就会报错,改成testGetAdd

2.用IDEA打开别的编辑器创建的项目无法运行Junit(jar包等配置,代码格式等无问题)
原因与解决方法:从IDEA本地创建项目再进行Junit测试类,具体原因不明,但是这样操作以后没有再出错
3.在实验第四次复数类的测试类编写的时候,发现测试时候本应该是定值的常量发生了变化,无法设定预想结果。
原因与解决方法:
在产品函数中代码加法函数方法体如下:
a+=m;
b+=n;//a,b分别为被加数的实数、虚数部分;m、n分别为加数实数、虚数部分
return new Complex(a,b);//复数构造方法
此处的返回值更新了原来a,b的值,在平时的代码书写中这样更方便,效率更高,但是这样导致测试代码原本的预设常数进行动态变化,难以设定预设值,修改后代码如下:
int c=a+m;
int d=b+n;//a,b分别为被加数的实数、虚数部分;m、n分别为加数实数、虚数部分
return new Complex(c,d);//复数构造方法
3.XAMPP的MySQL服务无法打开:
原因与解决方法:之前装了单独的MySQL,虽然关闭了但是仍然有冲突,卸载MySQL即可:
cd ~/
sudo rm /usr/local/mysql
sudo rm -rf /usr/local/var/mysql
sudo rm -rf /usr/local/mysql*
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/My*
vim /etc/hostconfig and removed the line MYSQLCOM=-YES-rm -rf ~/Library/PreferencePanes/My*
sudo rm -rf /Library/Receipts/mysql*
sudo rm -rf /Library/Receipts/MySQL*
sudo rm -rf /var/db/receipts/com.mysql.*
(Mac命令行)
4.卸载MySQL之后发现依然存在冲突,于是重装XAMPP,发现只有MySQL服务可以开启
原因与解决方法:没有进行重启,会显示:
XAMPP: Starting Apache...fail.
XAMPP: Another web server is already running.
XAMPP: Starting FTP...fail.
XAMPP: Another FTP daemon is already running.
百度后显示很可能是接口被占用,查询端口占用情况:并没有端口被占用。
想到可能需要重启,再度卸载重启后再安装,可以运行三项服务

5.JDBC在IDEA中的配置:
原因与解决方法:网络上多为Eclipse的教材,少数IDEA的教程仍有不少错误在,其实很简单,同Junit运行一样,在Dependencies中添加应用即可:

代码托管



上周考试错题总结
- 测试完成后补充
20165310java_blog_week7的更多相关文章
随机推荐
- python数据结构之哈希表
哈希表(Hash table) 众所周知,HashMap是一个用于存储Key-Value键值对的集合,每一个键值对也叫做Entry.这些个键值对(Entry)分散存储在一个数组当中,这个数组就是Has ...
- 使用nginx服务器如果遇到timeou情况时可以如下设置参数,使用fastcgi: fastcgi_connect_timeout 75; 链接 fastcgi_read_timeout 600; 读取 fastcgi_send_timeout 600; 发请求
使用nginx服务器如果遇到timeou情况时可以如下设置参数,使用fastcgi: fastcgi_connect_timeout 75; 链接 fastcgi_read_timeout 600; ...
- create view in view
CREATE VIEW view_region2role AS ( SELECT region_set_id, region_set_name, GROUP_CONCAT(id) gc_id, GRO ...
- 500 status http status code 状态码
https://developer.mozilla.org/en-US/docs/Web/HTTP/Status Server error responses 500 Internal Server ...
- 44(function pointer 2)
#include<iostream> using namespace std; class A { public: int x; int sayhello() { cout<< ...
- GA安装
- 2018/03/23 每日一个Linux命令 之 sed
官方定义: Linux sed命令是利用script来处理文本文件. sed可依照script的指令,来处理.编辑文本文件. Sed主要用来自动编辑一个或多个文件:简化对文件的反复操作:编写转换程序等 ...
- 两种JS事件流
1.事件冒泡流(从注册事件元素到外侧容器元素的过程): 2.事件捕获流(与冒泡相反的过程):
- ifconfig 查看网卡信息
[root@linux-node- sss]# ifconfig eno16777736: flags=<UP,BROADCAST,RUNNING,MULTICAST> mtu inet ...
- kettle 安装mysql 驱动
错误连接数据库 [mysql] : org.pentaho.di.core.exception.KettleDatabaseException: Error occurred while trying ...