以前在学校的时候自己以为是不是每个做JAVA开发的公司每次做项目的时候都要搭建一个SSH框架呢,工作之后才发现每个公司都有自己的一套框架,要不是在SSH基础上,要不是在SSI基础上进行了符合自己公司需求的封装,并且随着自己公司的框架被应用到各个实际系统的过程中,这个框架会越来越成熟,会使该公司的开发效率越来越高。
根据笔者接触过的几个公司的框架,笔者发现要想实现高效的开发,每个公司的框架应该具备如下的特点:
1.具有灵活的分页功能。
分页功能是每个项目中必须要实现的功能,而恰恰这个功能是比较费时费力的,如果在框架中实现这一功能,将在每个项目中大大减少分页的重复性工作。
2.可以方便的实现文件的上传与下载、数据的导入和导出的功能。
文件的上传于下载、数据的导入和导出在大部门项目中也会遇到,但是这两个功能可能会因为项目的不同导致实现上有一点区别,我们框架中要做的就是应该抽出其中共有的东西,定义为抽象的东西,以便不同的项目、不同的需求都能很容易的实现该功能。
3.方便的事务管理功能。
事务管理一般来说都定义在业务逻辑层。我们框架中应该实现对业务逻辑对象事务的简单配置甚至是零配置。笔者接触过的两个框架中,一个需要在配置完一个业务逻辑对象时,在事务管理的配置文件中加上一句简单的配置即可,另一个是框架中实现了几个基本的业务逻辑对象,并对这几个对象实现了事务管理的配置,开发的时候定义的业务逻辑对象都是继承自这几个基本对象,也就省去了事务管理的配置。
4.具有异常处理框架。
基本上每个项目的异常处理都应该可以使用公司的框架定义的异常处理框架,并不会因为项目的不同而要求的异常处理也不一样。
5.具有自己的一套页面组件。
项目开发都是团队的开发,要想保证每个开发人员的界面风格统一,最好的办法就是定义一套公司自己的页面组建。这样既能保证开发效率,也能做到界面的统一。freemark就是不错的选择,其支持自定义宏,公司框架中可以定义一套自己的页面组建宏,供开发人员调用即可。
6.具有数据校验框架。
每个项目在数据校验时都可能会用到大量的正则表达式,那么在公司的框架中将这些正则表达式封装起来,提供统一的调用接口将是不错的选择。
7.简单的实现菜单的配置。
一个好的框架应该提供对菜单、二级菜单等的简单配置、管理。还是上文提到的两个框架,一个是通过XML配置文件实现了对系统中一级菜单、二级菜单、三级菜单的管理,而另个框架要实现相同的需求却要在数据库中进行繁琐的配置,显然第一个框架的实现方案更可取、更高效。