大道至简,现在的J2EE框架是否太模式化了?

来源:互联网 发布:淘宝上的钙片是真的吗 编辑:程序博客网 时间:2024/05/16 01:45

    手上的项目快收尾了,在这个项目里面,我对标签库的理解和使用又深入了一些。至此,J2EE的各个环节的常用技术,我有算了切实的体会。

    Spring,Hibernate,WebWork,JSTL等各层面的技术都可以熟练的使用了。开发的时候,特别需求不是特别清晰准确的时候,不断精化的过程中,框架的复杂给代码的重构带来了很多的阻力。

    最后,我听从别人的建议,就用最简单的Jsp+JDBC来做系统中最复杂一块的服务器端代码,结果很快就通过了用户的认可,推进了项目的发展。而用原系统使用的Spring+SiteMesh+Hibernate+Webwork+Jsp Tag 模式,这一块真的不知道什么时候才能弄出来。

    当然,现在需求完全清楚地情况下,我将代码重构到原来的平台下还是可能的.....不过我还是觉得原来的框架过于模式化了,特别不利于快速调试的方式。

    举的例子,如果我增加了两个字段和一个外部关联的数据表,基本上我要在Hibernate JDO层面上,WebWork Action Bean层面上,Jsp Tag View层面上,在Hibernat.Cfg.XML ,ActionBean.xml ,DAOBean.XML,Spring.XML上作配置,每个环节,每个层面都可能出现问题,每次调试和编码,都会重新Reload Web Application,其中时间上的代价和调试的困难,真的让人觉得无法忍受。

    对于一个开发人员来说,关注点应该是有限,现在的J2EE主要是为了完全细分的大规模开发团队准备的,在那种团队中,各个层面的修改,由不同的人负责,现有的J2EE又能够对各层面解藕,所以广受好评。

    而目前我接触的团队里,都是中小型团队,感觉使用这种模式反而增加了开发负担,特别是基本上项目组的每个人员对这些层面都必须都有了解,其中的培训成本和调试成本太高了。

    个人感觉对中小型,小团队的项目,使用简单的技术,使用先进的模式,也能很好的进行J2EE开发,同时方便重构。

     举个例子来说吧,就用JSP+JDBC,也可以严格的实现MVC模式,而且调试起来更快。

     如一个简单的用户管理系统,我可以划分为三类型的jsp文件。一个例子代码

     UserAction.jsp    控制器,控制提交行为的分派,根据FormAction进行判断

     UserModel.jsp    实现代码,所有的数据准备和处理

    UserListView.jsp 分页浏览视图

    UserRecordView.jsp 添加编辑视图

    UserSeeView.jsp  查看视图

    UserSearchView.jsp  查询视图

    在这个过程里,View.jsp中,可以直接用JSP,也可以使用JSTL ....

     Action.jsp转入 View.jsp时,在Action.jsp存数据到request里面,View.jsp通过JSTL提取Request的数据显示。

     通过以上的结构,我也可以很好的实现MVC,并且这个逻辑以后也能很方面的转入其他的流行的MVC框架中

     所以,我准备在以后的项目初期,用JSP+JSTL+JDBC机制实现早期构造和需求验证,在后期使用流行的MVC框架(如果项目资金允许)。    

     

原创粉丝点击