万码学堂2017级学生肖*翔
项目感言:
几天前,传说中的C模块项目演示在众目睽睽之下终于落下了帷幕。我的心里也平静了许多。
本次项目,是javaEE阶段的最后一个项目,其实说实话,我的javaee掌握的并不是太好,但是时间不等人,项目在眼前,我只好尽我的全力去认真地把项目做完。我们组做的是OCOD( one
City one world ) 网站项目,题目是我们组自己起的,内容是仿照列表网(一个海南的网络公司)设计的,主要功能是用户和商家可以发布和查看相关行业的信息,比如招聘,租房,办婚宴,买宠物等等。跟58同城非常相似,登录网站后最先显示的是主页,而后是二级,三级页面。看似简单,但做起来真的是十分复杂。指导项目的最后,我还有一个头像上传没有做完,当然,这跟我本身做的慢有关系。当时选择项目时,我们觉得这个项目比较不错,模板也挺漂亮,所以我们选择了这个项目作为我们的C模块实训项目。
项目开始的头三天,我们小组的人都在忙着修图、处理模板。我也没闲着,因为我要做登录、注册和自动登录,所以我也在改模板、修图,把要用的样式和js都找好,头几天因为在处理这样的边边角角,所以比较轻松。就在这时,组长开始带着我们一起设计数据库、搭建框架。因为这个项目有很多地方是需要多级查询,所以在设计表时,组长在主外键关系的设计上下了很大的工夫,对各表之间的关联也十分注意。数据库的设计对整个项目来说至关重要,一个有缺陷的数据库可以拖垮整个项目,我们的数据库也经历了大幅度、多次的修改,在这里我就不赘述了。因为C模块的项目要用到SSH框架,这是目前正流行的框架,分开就是Spring/Struts/Hibernate Hibernate是我的弱项 当时学习的时候练得少,而且有许多关键点没有理解,做项目时比较懊悔,但没办法,只好做了。我们从搭建过框架,我只知道大体步骤,但完全不会。组长试着搭了第一遍,但漏掉了一些细节,第二遍搭建时就好了。后来因为有好几次改动了数据库,导致重搭框架,最终我们搭了5遍,才把这件事彻底解决。
后来的两周,我一直在做登录、注册和自动登录,这些虽然简单,我也并不是很熟练,有一些瑕疵,还是组长帮我指出来的。总之,我的进度条一直比较缓慢。在做自动登录时,出了一些问题,当我执行自动登录时有时会报500错误,我问过小组组员,他们表示不太清楚,我也问了其他小组的人,还问了老师,最后发现时少写了一个判断,因为我的流程都正确,所以很难发现。我也从这时起觉得细节真的很重要,写代码时一定要考虑细致,不能疏忽大意。
再把所有错误解决后,已经到了第三周了,我们组都开始加快进度,接下来我做的是我的功能的重点:用户中心。我做的是用户中心的私信功能、收藏功能和修改资料。私信功能包括收信箱,商家给用户发来回信,你可以在收信箱中看到,发件箱是用户发给对方的,要发送信息时,先跳到消息页面,输入收信人,消息内容,验证无误后再发送,发送后,会自动跳转到发件箱,可以看到收件人和发送的内容以及日期。这个功能看似简单,也并没有太复杂的逻辑,但是,这些信息是通过数据库查询语句查询出来的,而本次项目用的是SSH框架,用的是hibernate查询语句,我心里完全没有底,不太会写。收件箱内容的查询语句和发件箱的查询语句差不多,都是按时间排序。所以我只好把上课时的课件翻出来,重新看课件,我开始自己尝试着去写,一开始我完全写的不对,怎么测试都不成功,后来我去问了组长,组长负责写多级查询,所以他的hibernate语句比较熟练。组长耐心的给我讲解了写法,他讲完后,我又对照课件看了看,思路顿时清晰了许多。最后,我花了好几天时间终于把这个查询语句写完了,慢慢的,再写语句的过程中我逐渐学会了hibernate的基本语法,后面的句子我也开始慢慢的写出来了,只是经常出错,所以导致效率慢。
最后,在项目预演前的晚上,我终于把错误改好,把功能交给了组长,我心里悬着的石头终于落了地。
我觉得,我本次项目实训最大的收获就是把查询语句练会了,虽然写起来还是会有点慢,但是相比以前,我已经有了很大的进步,而且经过这次的项目实训,我的思路也比以前更加清晰了,这还是要感谢我的组长,以及各位老师同学的帮助,没有他们,我不会顺利完成本次项目答辩。也很感谢学校,能给我这样一次比较不错的实训机会。学习的道路还很长,我会一步一个脚印,扎扎实实的走下去。