20165207 第七周学习总结
本周我学习的主要内容包括学习在IDEA中使用GIT、学习使用Xampp中的MySQL两部分。由于这两部分的学习对于我有些耗时间,本周代码行数并不如以前。我不觉得之前我多敲进去了一些代码,于是现在就可以不做这个任务,只是我觉得这周我的学习侧重在了代码之外关于工具使用的地方。
在IDEA中使用Git
随着学习的深入,我开始接触集成开发环境IDEA,许多代码的调试用IDEA也更加便捷。但之前敲教材上的代码、向远程项目里提交都使用的是ubuntu中的命令行的命令,新来的IDEA和要来的Xampp似乎要与之前的代码提交过程割裂开来。但IDEA中能够使用git提交这件事就大大减少了我不必要的担忧,并且打开虚拟机的操作所需要的时间也可以被Windows里装的IDEA节省。
首先我在我的Windows系统里装了一个社区版的IDEA。
然后新建一个项目,在file菜单中选择new然后选projectFromVersionControl中的git。
选择文件夹并填入我的码云项目的URL之后,我的项目便成功被clone下来了,然后需要设置SOURCEPATH让IDEA了解我们的源代码的位置。在src上右击选择Make Directory as再选择Source Root就可以设置源代码的位置为src文件夹了。
打开一个源文件时提示我没有设置SDK,点击进行设置
之前设置过,直接OK就可以了
然后还需要设置输出路径,运行程序会自动提示错误按提示点OK进行设置
然后在Modules选项里在bin文件夹上右击选择exclude不将bin纳入版本控制
在path选项卡里把outputpath和testoutputpath都设置成bin
选OK。
在编译时出现了另一个很严重的问题,这些程序原来在命令行里项目目录下编译的时候,编译器只会编译我在命令中给定的源文件,不会自动编译或者检查别的。现在我在idea环境clone下来的项目里编译一个第一章的源文件,结果出现了100多个错误。情况大概是这样的:
出现这些错误的原因,我觉得在于IDEA中的编译器自动检查了我src文件夹下的所有源文件,不论它们是否在同一章的文件夹下,只要是相同的名字,就会提示类重复。这个问题让我非常无奈,因为本来都是编译成功了没有问题的东西,现在就都不行了。我思考了很久如何才能够解决,尝试了一些奇奇怪怪的编译命令,但是都会像之前一样报错,目前我找到的最有效的办法是……在IDEA里面的命令行进行编译运行。首先在源文件上右击选择Open in terminal:
然后用命令进行编译:
在命令行里出来了运行结果:
我目前没有解决之前自动编译导致类和方法重复报错的问题,只是在IDEA里用了命令行来自己骗自己。现在正在寻求帮助。
下载并学习使用Xampp
最开始便出现了一个问题,教程里的官方网站的下载地址是不能下的,只会没完没了的刷新页面,所以我下的是从网上找来的不知道具体的内容是不是都对。
首先安装xampp:
打开之后,点前两个的start,Apache和MySQL是成功运行了的
红色的问题和这两个没有关系,我暂时没有考虑。
然后在IDEA中新建一个项目,名为JDBCTest,按照老师的教程输入ConnectionDemo的代码:
查看readme_en.txt文件中MySQL的用户名和密码
打开PHPAdmin建数据库
输入建数据库表的语句建表
回到IDEA中配置驱动,首先下载配置驱动mysql-connector-java-5.1.41-bin.jar
拷到lib目录下
点file里面的projectStructure打开如下界面:
选中拷过来的文件包:
但是在运行的过程中出现错误规定了一个不存在的文件夹
在菜单中选择run然后Edit configuration把那个错的 F:/TestJDBC/TestJDBC/ 改了:
这样运行程序就显示打开了与数据库的链接
以上两部分是我这周学习的东西,中间出现了一些错误还有思考和理解导致了时间的一些浪费,这周我敲进去的有效代码只有上面教程里测试数据库连接的示例代码,然后这个独立的项目中不是教材上的代码也没有向码云上提交。
补充
- 前一周(第七周)在IDEA中用git clone下项目到我的宿主机目录里,运行过程中发生了类重复的错误。本来想避免对教材代码的修改,思考之后在代码前面加上对应章节的包名才是正确的做法。加上包名之后,运行新敲进去的代码就不再报错了。
- 解决了上面这个问题,我把上周落下的提交试着用IDEA提交了上去
- 我后来完成了老师教程中下面的内容,包括建表t_message,向phpMyadmin中添加下载的world.sql,具体如下:在表中新增几行通过localhost访问phpMyadmin查看,添加成功:
- 脚本运行截图,由于现在这个项目是我上周从码云上用idea软件clone下来的,之前一连串的问题到今天才都解决,在Windows的git里面运行脚本计算的行数是我新clone的项目里面的,所以行数部分看起来有些……跳跃: