两周没来了,现在补过。
10日、11日还是学习数据库的操作。分别学到了分页查询、事务、索引、视图、触发器、存储过程的写法和在Java中对应的调用方法。
12日终于接触到了培训中的第一个实训项目--QQ聊天程序,当然,实现的功能比较原始,有登录、注册、修改自己信息、好友分组显示、查询/添加好友、一对一聊天。看似不多的功能,却一直做到了上周结束,而且一些功能还未完善和稳定。
既然做了,就在此简单描述下实现的方法。程序用到的知识点有Socket通信、数据库访问、多线程以及一些GUI。程序分为客户端和服务器端两部分,整个过程中客户端是没有直接访问数据库的,都是在与服务器端通信,服务器端进行数据库操作后经过处理再返回客户端的。登录功能就是看数据库能不能查询到登录号和密码都吻合的数据,有则登录成功进入主界面,无则提示登录号或密码错误。注册主要是向数据库中插入数据,关键是注册成功后向用户返回一个QQ号。双击主界面上的自己头像进入个人信息修改界面,主要是修改数据库中的用户信息。好友分组显示会用到用户表和好友分组表的联合查询,好友是显示在树形控件中的,好友组作为好友的上一级节点来完成分组。查询分为精确查询和全部查询,只是在数据库中查询数据时条件不同罢了。添加好友稍微麻烦,因为用户可以采用不同的验证策略(如允许任何人添加、不允许任何人添加、要验证信息),好友添加成功后还需刷新好友列表。聊天是本项目的核心功能,能实现添加好友的功能,实现该功能就简单了,但要留心做界面上的提示(头像闪烁)和聊天窗口中的信息显示。
这个项目的实训,让我体会到了书到用时方恨少,要实现一个预定的效果,很多时间必须要查阅API文档或百度才知道怎么实现。同时,也让我了解到了自己对知识掌握的不够透彻,在调试运行时会时不时来电报错。