用Hibernate+Struts做东西,感觉真是舒服(有内容)

类别:Java 点击:0 评论:0 推荐:

比较忙,粗略的写了一下,不知道能否有用,当作学习笔记了.

1.hibernate2.12
   hibernate提供的map方式,对我们来说,已经足够了,基本上one-to-one,和one-to-many(many-to-one)就已经能够解决问题,没有用到直接数据库的SQL语句操作(直接jdbc操作).主要是在做数据库设计的时候,考虑到了hibernate的设计模式.
   
  基本文件:
   Task.htm.xml
   Task.java
   TaskHandle
  在TaskHandle中,  一般有如下方法(其它逻辑,可自行增加):
    getTaskList(int pageIndex,String otherStr);
    getTask(String task_id);
    addTask(Task task);
    updateTask(Task task);
    deleteTask(String task_id);
    ...
2.struts1.1
    web页面部分:
    信息查询(列表,删除):TaskList.jsp,以CheckBox多选方式来删除.页面上部为查询条件,主体为信息列表(分页显示). 其中,查询条件部分Form与后台QueryTaskForm关联,用于查询信息(这样可以避免中文编码问题),主体信息列表直接用getTaskList取回来的JavaBean(Task)的List(此处如前台显示信息比较复杂,可单独形成一个javabean(例如:LargeTask.java),形成List),页面中Iterate方式Bean:Write即可.
    增加信息页面:AddTask.jsp
      Form元素直接用struts标签形成即可,与后台两个Action一个,ActionForm对应,例如:TaskForm,PreAddTaskAction,AddTaskAction,PreAddTaskAction用于初始化各种信息,AddTaskAction用于实际进行Add操作.Add成功后,可以转向信息提示页面,也可以转向TaskList页面.
    编辑信息页面:EditTask.jsp
      大致同AddTask.jsp
   查看详细信息页面:ViewTask.jsp
      只有一个ViewTaskAction,用于获取信息,直接BeanWrite即可.

   页面布局采用Tiles,基本的四部分架构(top,left,body,bottom),其中中间的body部分,用上述的页面extends即可.随时可以调整系统页面布局,很方便.    
   系统系统校验采用普通的html:errors,没有用Validator,感觉不太会用,而且,好像比较复杂:),页面仍然中仍然有一部分才用javascript,增加UI的友好性.
   权限控制采用集中控制的方式,即在tiles的top页面中,判断当前页面的url,然后到后台去查找,看这个url的关键字部分,应该属于何种角色,需要什么样的登录人员进行操作,这样,在一个地方就可以进行控制,很方便.如果未登录,则直接转到登录页面(后边带着当时的url,等登录以后,可以返回到该页面).进行登录确认操作.
   系统中,前台页面部分没有用到任何jsp嵌入代码,都是用struts实现(struts标准tag).
   系统中文编码问题解决:filter+jsp页面charset定义(GBK)+中文数据库驱动(可选),主要的是避免手工用getParameter获取,直接用ActionForm的getXXX方法,可以避免中文问题的出现,整个系统没有用到直接的编码转换,也就避免了系统移植到非中文编码环境下的问题.
   系统中,美工只是做了首页和二级页面的样式,其它的都是用struts标签来控制,把需要显示的信息嵌入到页面中,而且,只是很少一部分,不影响页面的美观,可以完美的呈现美工的原始设计思想.

本文地址:http://com.8s8s.com/it/it14542.htm