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的更多相关文章

随机推荐

  1. web前端开发笔记(1)

     一.HTML标签书写有哪些规范? 页面编码. 文档声明. 关键字与描述. 行内元素不能包含块级元素. a标签不能嵌套a标签. 标签名和属性必须用小写字母书写,属性必须加引号,标签必须闭合,单标签页必 ...

  2. AllowOverride None

    PHP Advanced and Object-Oriented Programming Larry Ullman <Directory /> AllowOverride None < ...

  3. Guideline 2.1 - Information Needed

    For information about testing your app and preparing it for review, please see Technical Note TN2431 ...

  4. __getattr__,settr

    __getattr__  如果属性查找在实例以及对应的类中(通过__dict__)失败, 那么会调用到类的__getattr__函数, 如果没有定义这个函数,那么抛出AttributeError异常. ...

  5. 第三课:JAVA反射机制

    基础的不想写啦,好了,直接上JAVA反射机制吧: 类对象概念: 所有的类,都存在一个类对象,这个类对象用于提供类层面的信息,比如有几种构造方法, 有多少属性,有哪些普通方法. JAVA类,他们的区别在 ...

  6. 修改dedecms面包屑导航的首页链接关键字

    dedecms面包屑导航默认是"主页>分类>二级分类>",我们知道链接的锚文字对排名有一定影响,这时可以考虑将“主页”改成具体的关键字,那么如何修改dedecms ...

  7. Intel 设计缺陷背后的原因是什么? | Linux 中国

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/F8qG7f9YD02Pe/article/details/79386769 wx_fmt=jpeg& ...

  8. OC 手势可能出现的问题

    oc手势有分別是 Tap(点一下).Pinch(二指往內或往外拨动).Rotation(旋转).Swipe(滑动,快速移动).Pan (拖移,慢速移动)以及 LongPress(长按). UITapG ...

  9. HTTP 教程

    HTTP 简介 HTTP协议(HyperText Transfer Protocol,超文本传输协议)是因特网上应用最为广泛的一种网络传输协议,所有的WWW文件都必须遵守这个标准. HTTP是一个基于 ...

  10. 非线性方程(组):MATLAB内置函数 solve, vpasolve, fsolve, fzero, roots [MATLAB]

    MATLAB函数 solve, vpasolve, fsolve, fzero, roots 功能和信息概览 求解函数 多项式型 非多项式型 一维 高维 符号 数值 算法 solve 支持,得到全部符 ...