hibernate+struts2学生信息管理系统简单整合


一.项目结构(MVC)
直接上图
hibernate+struts2学生信息管理系统简单整合_第1张图片 hibernate+struts2学生信息管理系统简单整合_第2张图片
前者是整个项目结构,webcontent包含的是前端的一些jsp文件和css样式,java resourse包含后台的一些业务逻辑处理及接口;
后者是hibernate框架涉及的部分(红线)model层下的.hbm.xml是持久化层的ORM映射文件,可以通过Eclipse直接生成: 右击持久化层的包(model)--->new-->other-->hibernate-->选择第四个.hbm.xml,根据自己需要更改选项。

     hibernate.cfg.xml是总配置文件,包含数据库的一些配置,及一些策略,如图:



    
     root
    12315
    com.mysql.jdbc.Driver
    jdbc:mysql:///web?useUnicode=true&characterEncoding=UTF-8
    org.hibernate.dialect.MySQLDialect

    true
    true
    update
    thread
   
    
    
     
     
    
而struts2主要是包含Action动作的控制和结果的返回,这里不一一例举了,直接上成果图,已经挂载在云端服务器了:
网址:www.bo-study.com/web
登录:
hibernate+struts2学生信息管理系统简单整合_第3张图片

管理页面:
hibernate+struts2学生信息管理系统简单整合_第4张图片
下面说下过程遇到的一些奇葩问题:
1.查询一个表时,某一个字段全部一样,如上图学号一栏全是s00001????
后来一步步排查,发现配置文件和后台数据处理没问题,是数据库的问题-----------该表没有主键,加了主键之后就好了。
2.当后台接受前端的request.getParameter();数据时候,返回的是String,必须转回相应的数据类型,涉及一些简单转换:
转化为int  :int i=XX.intValue();
转化为integer:integer in=Integer.valueOf(String),integer in=new Integer(int)
转化为String:String str=XX.toString();当然还有其他方法...
3.写hql语句出错???
原因是直接把hql语句当做sql语句了,hql语句from后面的“表"是hibernate的持久化层的名字,而不是数据库中的表的名称。
总结:遇到的困难当然不止这些,不过其它都是很初级的错误,英文大小写,拼错那些。。

你可能感兴趣的:(JAVA学习)