public List<User> getUserByCond(User user){
        String hql = "select user from User user where 1=1 ";
            Map map = new HashMap();
        return (List<User>) userDao.findByHql(hql, map);
    }
这是系统的核心层,主要完成服务的封装。在系统中,我采用 JavaBean 组件实现系统业务逻辑的处理。
数据持久层:我们的操作最终是要与数据库打交道的,对数据库的增、删、改、查等,这些都要依赖数据持久层来完成。其具体执行代码
public PaginationSupport listByPage(String entityName, int currentPage,int pageSize) {
        HibernateTemplate ht = getHibernateTemplate();
        Session session = getSession();
        Integer count = (Integer) session.createQuery("from "+entityName).list().size();
        Query query =session.createQuery("from "+entityName);
         query.setFirstResult((currentPage-1)*pageSize);
         System.out.println("FirstResult:"+(currentPage-1)*pageSize);
         query.setMaxResults(pageSize);
         System.out.println("pageSize"+pageSize);
         List list = query.list();
         System.out.println("List"+list);
        PaginationSupport ps = new PaginationSupport(currentPage,pageSize,list,count);
        ps.setCurrentPageNum(currentPage);
        ps.setPageSize(pageSize);
        return ps;
    }
     该层在程序中体现在于将数据持久层,即调用dao层中的方法对对象持久化。
控制层(Controller):可以理解为从用户接收请求, 将模型与视图匹配在一起,共同完成用户的请求。划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以 完成什么样的用户请求。控制层并不做任何的数据处理。例如,用户点击一个连接,控制层接受请求后, 并不处理业务信息,它只把用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。在Struts2中,控制层就相当于本系统中的Web.xml文件和Struts2.xml文件,它的核心是通过在Web.xml中的过滤器转到Struts.xml文件中其核心代码为:
<filter>
        <filter-name>struts2</filter-name>
        <filter-class>
            org.apache.struts2.dispatcher.FilterDispatcher
        </filter-class>
    </filter >
    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
而在Struts.xml文件中主要是一种固定的模式action,通过Struts.xml中的name属性告诉程序到底实现哪个具体的action,然后将得到的结果返回到Struts.xml中并通过标签result跳转到另一个jsp。
由于我们用的是Struts2框架,所以我们用Action来控制流程,而不是servlet。
因此,一个模型可能对应多个视图,一个视图可能对应多个模型。模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。如果用户通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都应 反映到这些变化。因此,无论何时发生了何种数据变化,控制器都会将变化通知所有的视图,导致显示的更新。这实际上是一种模型的变化-传播机制。模型、视图、控制器三者之间的关系和各自的主要功能。
上一篇:flash小游戏制作论文
下一篇:ASP.net房屋租赁管理系统设计与实现

构建下一代网络的开放业...

实现宽带综合业务数字网...

城域网多业务承载的優化探讨【1859字】

固网增值业务及其技术实现【2299字】

下一代网络及其业务生成...

Android课程同步练习系统的设计

Android智能手机的交互式学习系统的设计

医院财务风险因素分析及管理措施【2367字】

承德市事业单位档案管理...

中国学术生态细节考察《...

志愿者活动的调查问卷表

C#学校科研管理系统的设计

神经外科重症监护病房患...

10万元能开儿童乐园吗,我...

AT89C52单片机的超声波测距...

国内外图像分割技术研究现状

公寓空调设计任务书