《Java语言与程序设计实验指导与习题解答》——“如何靠代码写完你的第一本书”攻略

背景:苦逼大二上学期必修了Java,结果濒临退休的59岁恶魔boss冷酷无情,喝了点假酒下手没轻没重,java实验报告直接给了我们一本书,就是这本《java语言与程序设计实验指导与习题解答》,要求是把1-17章的基础训练到编程题全写了(不写习题解析的题)(别的java老师一般就布置几个实验题让我们写实验报告,毕竟只有8个学时的实验课)

一.实验指导书(非常不错,优点是很经典,缺点是跨度过大,前面的基础练习水的跟狗一样,后面的编程题难的我叫爸爸,而且部分函数已经被淘汰或者更换了,可能会带来一些麻烦。如果从上Java课第一天开始跟着写还是不错的,可惜神仙bossJava课快上完了才给)

二.完成代码见网盘

https://pan.baidu.com/s/118ah4USGw3HWLDbHCBlHAA(含pdf实验指导书)

代码仅供参考,请不要直接搬运(尤其是和我一个班的,不然要一起死liao,记得图片用自己的,要么就干脆不贴图)

建议在自己电脑上跑一遍。

-----------------------------------------------------------------------------------

2018.12.29补充:

https://pan.baidu.com/s/1Bg7hkNIXatzmtwac-7Uk1A

上面这个我重新排版了,弄了高亮看着舒服很多,(不方便复制,因为复制后会给出行号,嘿嘿嘿)弄了目录方便索引,贴了原题目,文档大小12.23MB.....

(16章最后一问,Telnet那题我没弄了,最后弄了个客户端的图片直接交实验报告了,所以那题我的运行结果没有参考价值)

--------------------------------------------------------------------------------------

三.其他

-------------------------------------------------------------------------------------

1.README:
整体环境 Java:eclipse8+jdk1.8  数据库:mysql5.6(我是用wamp一键搭的)
需要导入的包和类——第17章需要导入com.mysql.cj.jdbc.Driver类,它在mysql-connector包里。
    做法:详见https://blog.csdn.net/CSUstudent007/article/details/85204827
插入图片——
    做法:如果用的JFrame,那直接把图片拖到你在的项目的根目录下面,如下所示:

《Java语言与程序设计实验指导与习题解答》——“如何靠代码写完你的第一本书”攻略_第1张图片

这里的path是我的图片路径,可以看到我的Test13类是在Experition项目里的,所以图片直接拉到此项目的根目录下就行。如下所示:

《Java语言与程序设计实验指导与习题解答》——“如何靠代码写完你的第一本书”攻略_第2张图片

如果是用Applet,那么可以调用getImage()来调用图片,其中的参数getCodeBase()获得其二进制返回的url,+图片编号,来以此调用图片,具体图片插入为:

文件打开项目Experition的src文件,找到test3(包,选择你自己的包),然后把图片拉到这里。

《Java语言与程序设计实验指导与习题解答》——“如何靠代码写完你的第一本书”攻略_第3张图片

跑APPLET——
    做法:

eclipse直接一手alt+shift+x +a运行,或者右键run+applet,IDEA直接点运行。

ps:注明一点,继承applet的类必须是public主类。

------------------------------------------------------------------------------------------------

修改和补充

有同学发现applet的音频文件播放不了,之前我也播放不出声音,后来发现其实是我音频文件放错了地方(应该要放在bin目录下)

具体见:

applet无法播放出声音的问题:https://blog.csdn.net/CSUstudent007/article/details/85245525

-------------------------------------------------------------------------------------------------

在命令行上运行代码——

    做法:

1.进入项目Experition的src文件夹的包目录里,复制该路径,如此所示:E:\Java eclipse\Experition\src\test3

《Java语言与程序设计实验指导与习题解答》——“如何靠代码写完你的第一本书”攻略_第4张图片

2.打开命令行,cd 该路径,先javac Client.java编译,再java Client.class 进行运行,后面输入的为命令行参数,比如:

java Client 123321 即输入了一个“123321”的字符串传给了main函数

ps:

在命令行运行项目时,记得要删掉在代码最上面的导入包,比如:把package test3;给注释掉保存后再javac编译和运行

也可以不删package test照样在cmd运行,具体做法见百度,但注释掉是最简单的办法。

关于文件输入输出:

创建.dat二进制文件:新建个txt然后把它后缀给改了,当然前提是你要让文件不隐藏后缀名,具体做法见百度。

所有的额外文件,比如123.txt,321.dat,各种图片,都是可直接放在项目的根目录下(比如Experition),然后重命名后按编号+后缀调用。具体做法参见上面的调用图片做法。

---------------------------------------------------------------------------------------------------------------------------

2.关于第十七章的JDBC编程:

---------------------------------------------------------------------------------------------

2018.12.29 2.1补充:

有人问我为什么代码跑不了,我一问才知道他连mysql数据库都没装......(下过wamp的,bin目录的mysql就是你要的mysql)

连不上数据库解决办法:

连不上数据库的可能:如果报错说与mysql的时间域匹配不上导致连接失败:https://blog.csdn.net/CSUstudent007/article/details/85211014

还有可能是需要配置数据源:https://blog.csdn.net/CSUstudent007/article/details/85207336(有时候你的mysql已经自动配好数据源了,可以不用管这一步)

ps:mysql版本要与你的驱动匹配,一般mysql5.6及以下都是没问题的。

----------------------------------------------------------------------------

2.2这本习题书上的第17章用的是JDBC-ODBC桥连,但从jdk1.8开始,Oracle已经把JDBC-ODBC删了,所以你按照17章的代码跑下来一般是全屏error。

《Java语言与程序设计实验指导与习题解答》——“如何靠代码写完你的第一本书”攻略_第5张图片

解决方法是:驱动程序改成com.mysql.cj.jdbc.Driver。或者下载jdk1.7及以下版本后,在eclipse选中项目打开properties更改jdk版本。网址见下行:

https://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html

2.3 我在写第十七章JDBC时碰到的错误:

2.31关于乱码的:https://blog.csdn.net/CSUstudent007/article/details/85211014

2.32书上代码有误,基础训练1的executeUpdate里他写的createString是错的,少了个右括号,真心坑的一匹。

3.关于第16章java网络编程

3.1它所有用到的DataOutputStream和DataInputStream都是有问题的,因为你可以发现当你输入din.readLine()时,这个语句直接被编译器给划掉了(说明这个库的这个函数已经被删掉淘汰了),所以建议改用为字节流的读入和输出。如下所示:

《Java语言与程序设计实验指导与习题解答》——“如何靠代码写完你的第一本书”攻略_第6张图片

 

16章最后一题关于telnet的:win10只能安装telnet客户端,但我们需要的是telnet服务器。

所以要从这个官网下载:http://www.goodtechsys.com/downloadstelnetnt2000.asp

且需要导入org.apache.commons.net.telnet.TelnetClient,即org.apache.commons.net包

镜像下载地址:http://commons.apache.org/proper/commons-net/download_net.cgi

下载common-net-3.6.jar包后通过properities导入到你在用的项目中。

然后你还要把apache服务器导入到eclipse上面去,做法请自行百度。

4.未完待续,后面的会逐渐补充(等我写完汇编实验orz),有问题可以留言。

补充:之前很多链接我都不小心放上了我的编辑文章的链接,只能我自己观看(现已修改)。。。给大家带来了麻烦,不好意思orz

 

你可能感兴趣的:(Java)