struts2+hibernate学生管理系统总结
Posted java新人交流
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了struts2+hibernate学生管理系统总结相关的知识,希望对你有一定的参考价值。
struts2+hibernate整合学生管理系统总结手记
看到之前有位同学写过这个系统的总结,然而看完后颇有感想。我也想来发表一下我学到的知识,俗话说的好:“学习要善于归纳总结!”
undefined
若有错误,望批评指正!~
一、
先来给大家看一下系统WEB的基本界面。
图1.登录的主界面
图2.学生列表界面
图3.进行点击跳入修改界面
图4.修改学生资料界面
图5.添加学生资料界面
以上就是视图层的图片!
二、
实践总结:
本项目设计思想是MVC分层
,其中包括的包有entity(实体),db(会话工厂session...),service(实体类的业务逻辑接口),serviceimpl(接口的实现类),action(动作)。以上包在下面会有所体现。
①整合部分:拿到一个项目,先了解前端界面的每个部分,哪里需要与后端做交互,重点记录下。这个项目跟着老师一起做的,用到的框架就是struts2+hibernate整合,做好准备工作,将需要的jar导入到WEB-INFO/lib下(这个问题需要注意一下,有的eclipse版本像老师一样导入是会报jar导入的错误
),随后创建实体类(entity包),生成实体类的对应配置文件(*.xml也就是各种xml),最后生成表结构,这步老师用到的方法恰到好处,即用hibernate框架中的测试方法SchemaExport
对象直接生成实体类对象的表格, 第一模块致辞完成。
②用户登录模块:(db包)先创建MyHibernateSessionFactory
,目的是其工具类获取session 对象,同时也体现了单例模式。下面代码就是在创建sessionFactory对象时候的构造私有方法
//构造方法私有化,保证单利模式(这步大家可以注意下) private myHibernateSessionFactory(){ }
其次设计用户登录(这里仅说明了用户登录,应该进入还有学生管理
)的业务逻辑接口,各种实体类DAO(service包),这其中包含的都是每个实体类的方法,接下来随之对应的当然是要创建实现接口的类啦(serviceimpl包),在实现类中用到hql将登录界面中的用户名与密码和数据库中的做查询对比,正确即可登录,错误便会调回主界面(这里用到了表单验证
),既然说到了调回那么一定离不开action了!这也是用到了struts2的方便之处,创建对应的登录Action类,在这个方法中实现了上面所述的表单验证,老师这里用到重写一个名为 validate
的方法,致此,第二模块完毕。
③学生信息管理模块:最终的大boss,前面都是铺垫,这步需要将学生类的增删改查与前端代码的那些按钮和超链接所对应,当然如果大家跟着老师一步一步的去做,细心应该是没有什么大问题的,这步我的心得是需要耐心!
三、
知识点总结:
①关于hibernate
它是JDBC的轻量级的对象封装,作为持久层框架,在整个项目里,我们没有用到jdbc的连接方法,用的是hibernate配置文件的方式去访问数据库,这里确实要比冗长的jdbc代码要便捷的多!
②关于struts2
这个是与Action层所关联的框架,它的便捷之处在于直接通过我们所写的Action层下的action注入到对应的struts2.xml
(配置文件),从而达到跳转页面的目的。这里我有一个重点要说,就是关于通配符的方式,代码如下:
//这里第一个*代表的是匹配所有action层下的名为xxxx(例如Uers,Students)Action的类,第二个*是指这个类下的所有方法 <action name="*_*" class="action.{1}Action" method="{2}">
以上呢,就是我对整个项目的个人总结!第一次写手记,若有语言矛盾,见请谅解!~
undefined
最后送给大家一副名联:
有志者事竟成,破釜沉舟,百二秦关终属楚; 苦心人天不负,卧薪尝胆,三千越甲可吞吴。!~~~~~~
------------------------------`time_is_everything`----------------------------
以上是关于struts2+hibernate学生管理系统总结的主要内容,如果未能解决你的问题,请参考以下文章
struts2和hibernate 传值问题和实体类设计问题
Struts2,Hibernate,Spring框架学习总结