java课设心得与体会
完成的任务
1.2.3.4.5.
登录模块前台服务权限管理
密码MD5加密
集成小组成员的各个模块
心得与体会
刚开始看这个项目的时候,觉得比较简单,总体的感觉是java的swing布局有些复杂,其他的都还好!由于时间比较紧,发现了项目中的一些bug,但还没有时间来得及一一修改和完善,以后有时间,再完善。做这个项目的时候,由于有几门考试,所以没有花很多时间考虑这个架构,而是参考了网上的一些代码,慢慢的理清了思路。
起初,我的思路是使用三层架构,使用典型的MVC模式,M(模型)包括一些javabean,一些实体类和基础的方法,V(视图)主要是swing搭建的界面,C(控制器)则包括一些具体的操作方法,以及调节模型和视图之间的调用关系等。
这次,整个系统并没有完全使用MVC模式编写,只使用了一小部分,小组的其他成员,对MVC模式都不是很了解,此项目,使用MVC模式,我感觉还复杂一些,有很多多余的操作。本系统连接操作数据库使用的是DBUtils,它是是操作数据库的组件,对传统操作数据库的类进行二次封装,可以把结果集转化成List。DBUtils封装了对JDBC的操作,简化了JDBC操作,可以少写代码。ArrayHandler:将ResultSet中第一行的数据转化成对象数组;ArrayListHandler将ResultSet中所有的数据转化成List,List中存放的是Object[];BeanHandler:将ResultSet中第一行的数据转化成类对象;BeanListHandler:将ResultSet中所有的数据转化成List,List中存放的是类对象;ColumnListHandler:将ResultSet中某一列的数据存成List,List中存放的是Object对象;KeyedHandler:将ResultSet中存成映射,key为某一列对应为Map。Map中存放的是数据;MapHandler:将ResultSet中第一行的数据存成Map映射;MapListHandler:将ResultSet中所有的数据存成List。List中存放的是Map;ScalarHandler:将ResultSet中一条记录的其中某一列的数据存成Object。前台服务模块,主要理解Vector的使用就可以了,Vector类可以实现可增长的对象数组。与数组一样,它包含可以使用整数索引进行访问的组件。但是,Vector的大小可以根据需要增大或缩小,以适应创建Vector后进行添加或移除项的操作。Vector可以扩展为二维或者三维数组,在前台服务中,菜单列表和桌子列表的表格的数据源均来自Vector,所以,需要我们动态构造Vector添加到表格中去,并且呈现出来。修改数据的办法一般是,先修改Vector里面的值,然后更新到table中,或者直接修改table里面单元格的值。获得表格指定行和列的值的方法是table.getValueAt(row,column)。菜单和桌子列表都是用的Vector的二维表现形式,其中把菜单和桌子关联起来用来了Vector的三维形式,主要是用来方便获取每一桌的点的菜。其他的部分都是一些逻辑关系。很多时间,花费在了界面上面。业务逻辑的处理,主要包括,首页是定桌,点菜,菜必须签单,才有效,结账的时候,必须没有未签单的菜。其实菜单列表和桌子列表是通过三维的Vector关联起来的,通过桌子列表的索引,可以查询到该桌子菜单列表的情况。结账这一块的时候,主要就是在结账成功后,相应的消费信息才会真正的进入数据库。
谈到登录模块,首先说密码加密。密码加密,其实就是,通过数据库,你无法看到真实的密码,看到的是经过MD5算法加密后的32位字符。虽然,大都加密,都采用二次MD5加密,防止通过逆运算,破解,但这个系统,并没有搞到这么复杂,就采用了一次MD5加密。密码加密后,登录系统和修改密码的时候,都需要做一次密码加密后的验证,添加新用户的时候,也需要把密码加密后,加入到系统数据中。登录模块,就是密码的校验,很重要的异常和用户的不规则输入的判断等。
权限管理模块,本系统采用了二级权限管理,超级管理员和普通管理员,超级管理员,拥有所有的操作权限,而普通管理员,只能前台服务和日结账,以及修改自己的密码。这个模块的实现,其实也没有什么难度,只要在登录的时候,判断一下用户级别,如果是普通用户,则设置一些按钮为不可用即可。
集成小组成员的各个模块,这个工作可以说是最头疼的一个。开始,规划的蛮好,采用MVC模式编写,但后来发现,他们对这个都不知道,所以无法进行下去,考虑到后面的集成问题,就部分采用了老师给的基本的数据库采用代码,但我还是保留了MVC的框架和一些类,方便以后的扩展。
鲁蒙
扩展阅读:学习java课程的学习心得
学习java课程的学习心得
记得当时拿着Oracle授权学习中心颁发的毕业证书时喜悦的心情,到现在对着电脑写心得体会的时间,才发现,半年的的时间,一眨眼就过去。回顾这半年的生活,心里总充满着感激,感激Oracle授权学习中心给了我一个学习深造的平台,感激java教学老师对我的培养。
国内Java热自从201*年就有增无减,无论是游戏,还是大中小网站,还是B2C商城,还是各大信息系统,到处都是是java的身影;各大招聘网站的java工程师的招聘信息也是目不暇接,于是我便决定要改行学IT这块。
我记得我编写首个小程序“helloword”,在这一刻我已经进入了java的世界。当时自己不是很理解为什么main方法一定要这样来定义publicstaticvoidmain(String[]args),能不能不这样写?问了好多同学,他们告诉我的答案是一样的“java本身要求就是这样子的”,但我自己不甘心,就进行了下面的好多操作:把main改个名字运行一下,看看报什么错误,然后根据出错信息进行分析;把main的public取掉,在试试看,报什么错误;static去掉还能不能运行;不知道main方法是否一定要传一个String[]数组的,把String[]改掉,改成int[],或者String试试看;不知道是否必须写args参数名称的,也可以把args改成别的名字,看看运行结果如何。结果把HelloWorld程序反复改了七八次,不断运行,分析运行结果,最后就彻底明白为什么了main方法是这样定义的了。接着在以后的学习中我也采用这样的方法解决问题,却发现自己的速度比别人慢了好多,我就把自己的课余时间也分一部分给了java。因为基础是最重要的,只有基础牢固才有可能对后面的学习有更加深刻的认识!学习一门新的语言,参考书是离不开的。听老师说订的教材偏难,不适合我们初学者,于是我在图书馆借了参考书(一本篇幅较短的入门书来学习那些最简单、最基本的东西、包括学习Java语法等)。同时,对一个最简单的程序也应该多去调试,多想想如果改动一下会出现什么结果?为什么必须那样写?多去想想这些问题然后去操作,会让你有更多的收获。这样反复地思考是很有用的。在学习Java的语法时,Java的语法是类似c语言的,所以学习的比较轻松。唯一需要注意的是有几个不容易搞清楚的关键字的用法,public,protected,private,static,什么时候用,为什么要用,怎么用,和同学一起讨论了好久才得以解决。在学习Java的面向对象的编程语言的特性。比如继承,构造器,抽象类,接口,方法的多态,重载,覆盖,Java的异常处理机制。对于一个没有面向对象语言背景的人来说,我觉得这个过程需要花很长很长时间,因为学习Java之前没有C++的经验,只有C语言的经验,花了很长时间,才彻底把这些概念都搞清楚,把书上面的例子反复的揣摩,修改,尝试,把那几章内容反复的看过来,看过去,看了很多遍,才彻底领悟了。开始熟悉Java的类库。基础类库里面的类非常非常多。据说有3000多个。但是我真正使用的只有几个,比如说java.io.*;java.util.*;java.sql.*;等。此外,我对于static,public,private,Exception,try{},catch{},finally{}等等一开始都不是很懂,都是把书上面的例子运行成功,然后就开始破坏它,
Oracle职业教育珠海校区学校网址:-zh.com
不断的根据自己心里面的疑问来重新改写程序,看看能不能运行,运行出来是个什么样子,是否可以得到预期的结果。这样虽然比较费时间,不过一个例子程序这样反复破坏几次之后。我就对这个相关的知识彻底学通了。有时候甚至故意写一些错误的代码来运行,看看能否得到预期的运行错误。这样对于编程的掌握是及其深刻的。在学习Java的过程中我得出这样的结论:1.学习中,要养成良好的习惯(写括号时要成对,字母大小写要区分,单词拼写要准确)。
2.在学习的过程中,最好不是仅仅停留在java表层,不是抄书上的例子运行出结果就可以。要注意,即便对一个简单的例子也要有耐心去琢磨、调试、改动。
3.在学习的过程中一定要动手做、试着写代码,而不是抱一本书看看就行。很多东西和体会必须自己动手才能真正属于自己。
4.在Java的学习过程中,可能会遇到形形色色的问题不容易解决,应多去专业论坛了解相关的知识,书本上的知识有限。要会从网上搜索有用的信息加以整理,促进学习的深入和知识水平的提高。
现在的我在家软件公司上班,IT业之所以那么有魅力,其中的一个原因就是相对高的年薪诱惑。不论是年轻人还是中年人,与其他职业相比,能力稍差也能赚到不错的年薪。以上呢就是我学习java的学习心得和体会,希望能和大家共勉!
文章来源:-zh.com/chinese/students/showstudents.asp?ID=1057
Oracle职业教育珠海校区学校网址:-zh.com
友情提示:本文中关于《java课设心得与体会》给出的范例仅供您参考拓展思维使用,java课设心得与体会:该篇文章建议您自主创作。
来源:网络整理 免责声明:本文仅限学习分享,如产生版权问题,请联系我们及时删除。