一种J2EE项目的开发方法及开发平台与流程

文档序号:12119731阅读:374来源:国知局
一种J2EE项目的开发方法及开发平台与流程

本发明涉及软件工程技术领域,特别涉及一种J2EE项目的开发方法及开发平台。



背景技术:

虽然软件开发方法从最初的瀑布式开发、历经迭代开发、螺旋开发发展到如今的敏捷开发,但仍然很难找到一种合适的方法可以真正指导具体的项目开发工作。

J2EE项目在技术选型上存在大量的成熟框架和第三方组件,一般企业技术决策者会基于当前企业的技术积累、个人偏好和技术主流发展方向选择框架。而这些框架一旦实施到项目中,后期将很难变更,比如将持久层的框架从mybatis切换到hibernate。此外,这些框架和第三方组件也会不断升级,如何在项目中升级这些框架和组件也是一个难题。

随着项目持续进行,代码总量越来越庞大,软件复杂度也不断上升,具体开发人员也需要越来越长的时间去分析代码,再落实开发工作,对项目需求响应速度变得越来越慢。

在当前的软件开发项目中,确实已经存在大量的代码生成方法用来辅助开发,但是这些方法一般只在项目建设之初有效,可以生成大量的基础代码,开发工程师在这个基础上进行修改,不断迭代,最终完成开发任务。一旦项目变更,需要持续迭代,那么这些项目生成方法就不能发挥作用。



技术实现要素:

本发明的目的在于提供一种J2EE项目的开发方法及开发平台,能够提高项目开发的效率,从而节省人力成本。

为实现上述目的,本发明一方面提供了一种J2EE项目的开发方法,所述开发方法包括:预先提供J2EE项目开发模型,所述J2EE项目开发模型包括通用组件模型、能力组件模型、基础组件模型、数据访问层组件模型、业务层组件模型、控制层组件模型、web主应用组件模型以及批处理主应用组件模型;接收针对当前项目的开发指令,初始化所述当前项目的开发架构;基于所述J2EE项目开发模型,在所述开发架构中配置组件代码生成工具;利用所述组件代码生成工具,生成基础组件代码和控制层组件代码,并分别将所述基础组件代码和控制层组件代码打包生成基础组件和控制层组件;为所述控制层组件中的各个业务层接口分配实现类,并将实现类维护于业务层组件中;将新增的数据访问类维护于数据访问组件中;将业务层组件代码和数据访问组件代码分别打包,生成业务层组件和数据访问组件;基于所述基础组件、控制层组件、业务层组件和数据访问组件,集成web主应用和批处理主应用,并将所述web主应用和所述批处理主应用部署于预设运行环境中。

进一步地,所述方法还包括:响应用户的账号注册请求,为所述用户创建账号和密钥,并为所述用户分配接口使用权限;当输入的账号和密钥与创建的账号和密钥相匹配时,在所述开发架构中配置组件代码生成工具。

进一步地,所述基础组件中包括数据库中各个数据表对应的实体类以及用于对数据表进行操作的数据访问类,其中,所述操作包括增加、删除、改正或查询中的至少一种;所述控制层组件中包括业务层接口、请求参数类、响应参数类以及对外提供服务的控制器类。

进一步地,在利用所述组件代码生成工具,生成基础组件代码和控制层组件代码的步骤之前,所述方法还包括:维护数据库结构设计文件并根据预设接口设计文档规范,维护当前项目的接口设计文件。

进一步地,所述预设运行环境中包括中心应用服务器和子应用服务器;相应地,将所述web主应用和所述批处理主应用部署于预设运行环境中具体包括:预先将具有相同业务功能的web主应用和批处理主应用统一存放于业务模块中;所述中心应用服务器对所述业务模块进行集中发布及管理;所述子应用服务器从所述中心应用服务器处获取并安装所需的业务模块,并将安装的业务模块提供给客户端。

进一步地,当向所述客户端提供的业务模块需要依赖于其他业务模块时,所述子应用服务器从所述中心应用服务器处将所依赖的业务模块加载到内存中,并利用已安装的业务模块及加载至内存中的业务模块向所述客户端提供服务。

为实现上述目的,本发明实施方式还提供一种J2EE项目的开发平台,所述开发平台包括:模型提供单元,用于预先提供J2EE项目开发模型,所述J2EE项目开发模型包括通用组件模型、能力组件模型、基础组件模型、数据访问层组件模型、业务层组件模型、控制层组件模型、web主应用组件模型以及批处理主应用组件模型;开发架构初始化单元,用于接收针对当前项目的开发指令,初始化所述当前项目的开发架构;工具配置单元,用于基于所述J2EE项目开发模型,在所述开发架构中配置组件代码生成工具;组件生成单元,用于利用所述组件代码生成工具,生成基础组件代码和控制层组件代码,并分别将所述基础组件代码和控制层组件代码打包生成基础组件和控制层组件;实现类分配单元,用于为所述控制层组件中的各个业务层接口分配实现类,并将实现类维护于业务层组件中;数据访问类维护单元,用于将新增的数据访问类维护于数据访问组件中;组件打包单元,用于将业务层组件代码和数据访问组件代码分别打包,生成业务层组件和数据访问组件;应用集成单元,用于基于所述基础组件、控制层组件、业务层组件和数据访问组件,集成web主应用和批处理主应用,并将所述web主应用和所述批处理主应用部署于预设运行环境中。

进一步地,所述开发平台还包括:用户权限设置单元,用于响应用户的账号注册请求,为所述用户创建账号和密钥,并为所述用户分配接口使用权限;鉴权单元,用于当输入的账号和密钥与创建的账号和密钥相匹配时,在所述开发架构中配置组件代码生成工具。

由上可见,本发明提供了一种J2EE项目开发模型,该模型由通用组件模型、能力组件模型、基础组件模型、数据访问层组件模型、业务层组件模型、控制层组件模型、web主应用组件模型以及批处理主应用组件模型组成。其中,每个组件模型可以独立开发和调试,最后再装配为web主应用组件和批处理主应用组件,这两个组件可以独立部署和运行。在项目迭代过程中,无论是数据库结构变化还是业务接口层面发生变化,平台都可以为任何符合本平台J2EE项目开发模型的软件项目提供持续生成数据访问层组件和控制层组件的能力,工程师只需开发业务层组件即可,不需要维护其他组件,从而节省了人力成本。本发明的项目开发方法同时适用于新项目开发和旧项目重构,能够辅助Java工程师快速进行软件开发工作,提高开发效率。

附图说明

图1为本发明具体实施方式中J2EE项目的开发方法流程图;

图2为本发明具体实施方式中J2EE项目的开发装置的功能模块图。

具体实施方式

为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施方式中的附图,对本申请实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅仅是本申请一部分实施方式,而不是全部的实施方式。基于本申请中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施方式,都应当属于本申请保护的范围。

请参阅图1,本发明实施方式提供一种J2EE项目的开发方法,所述开发方法可以包括以下步骤。

步骤S1:预先提供J2EE项目开发模型,所述J2EE项目开发模型包括通用组件模型、能力组件模型、基础组件模型、数据访问层组件模型、业务层组件模型、控制层组件模型、web主应用组件模型以及批处理主应用组件模型。

在本实施方式中,可以预先构建一个平台,在该平台中可以提供J2EE项目开发模型。所述J2EE项目开发模型中可以包括项目开发时所用到的各个组件模型。例如,这些组件模型可以包括通用组件模型、能力组件模型、基础组件模型、数据访问层组件模型、业务层组件模型、控制层组件模型、web主应用组件模型以及批处理主应用组件模型。这样,根据这些组件进行项目开发,便可以限定了J2EE项目的开发结构。

步骤S2:接收针对当前项目的开发指令,初始化所述当前项目的开发架构。

在本实施方式中,当项目开发人员通过步骤S1中构建的平台进行项目开发时,可以向所述平台下达针对当前项目的开发指令。响应于所述开发指令,可以在平台中初始化当前项目的开发架构。所述初始化的过程可以是依据开发指令中携带的参数来执行的。具体地,所述参数例如可以包括开发架构中的业务层接口数量、开发架构中涉及的实现类和数据访问类等等。

步骤S3:基于所述J2EE项目开发模型,在所述开发架构中配置组件代码生成工具。

在本实施方式中,在对当前项目的开发框架进行初始化后,可以基于所述J2EE项目开发模型,在所述开发架构中配置组件代码生成工具。所述组件代码生成工具可以用于生成各个组件的代码,从而能够进一步地生成各个组件对应的文件。

在本发明一个实施方式中,在配置组件代码生成工具之前,为了确保平台使用的安全性,可以要求每个项目开发人员在平台中注册账号。这样,平台可以响应用户的账号注册请求,为所述用户创建账号和密钥,并为所述用户分配接口使用权限。这样,项目开发人员只有在验证了账号之后,才可以利用分配了使用权限的接口来配置组件代码生成工具。具体地,当输入的账号和密钥与创建的账号和密钥相匹配时,可以在所述开发架构中配置组件代码生成工具。

步骤S4:利用所述组件代码生成工具,生成基础组件代码和控制层组件代码,并分别将所述基础组件代码和控制层组件代码打包生成基础组件和控制层组件。

在本实施方式中,所述组件代码生成工具可以接收项目开发人员输入的编译指令,生成基础Base组件代码和控制层Bundle组件代码。在生成两个组件代码之后,可以打包生成基础组件Base.jar和控制层组件Bundle.jar。

在本实施方式中,Base.jar中包括数据库中各个数据表对应的实体类以及用于对数据表进行操作的数据访问类,其中,所述操作包括增加、删除、改正或查询中的至少一种。Bundle.jar中包括业务层接口、请求参数类、响应参数类以及对外提供服务的控制器类。

步骤S5:为所述控制层组件中的各个业务层接口分配实现类,并将实现类维护于业务层组件中;将新增的数据访问类维护于数据访问组件中;将业务层组件代码和数据访问组件代码分别打包,生成业务层组件和数据访问组件。

在本实施方式中,在对所述控制层组件进行业务逻辑开发时,首先可以为所述控制层组件中的各个业务层接口分配实现类,并将实现类维护于业务层Service-Impl组件中。在利用本发明中的平台进行项目开发时,需要遵循分层设计原则,将新增的数据访问类维护于数据访问Persistence-Impl组件中。最后,可以将业务层组件代码和控制层组件代码打包生成业务层组件Service-Impl.jar和数据访问组件Persistence-Impl.jar。

步骤S6:基于所述基础组件、控制层组件、业务层组件和数据访问组件,集成web主应用和批处理主应用,并将所述web主应用和所述批处理主应用部署于预设运行环境中。

在本实施方式中,在生成了基础组件、控制层组件、业务层组件和数据访问组件后,便可以根据平台提供的开发手册,集成web主应用和批处理主应用,并将所述web主应用和所述批处理主应用部署于预设运行环境中。

具体地,所述预设运行环境中包括中心应用服务器和子应用服务器。这样,可以预先将具有相同业务功能的web主应用和批处理主应用统一存放于业务模块中。所述中心应用服务器可以对所述业务模块进行集中发布及管理。这样,各个业务模块可以对应不同的业务功能。在向客户端提供服务时,所述子应用服务器可以从所述中心应用服务器处获取并安装所需的业务模块,并将安装的业务模块提供给客户端。

在本发明一个实施方式中,提供给客户端的业务模块可能需要依赖其他业务模块才能正常运行,在这种情况下,所述子应用服务器可以从所述中心应用服务器处将所依赖的业务模块加载到内存中,并利用已安装的业务模块及加载至内存中的业务模块向所述客户端提供服务。

在本发明一个实施方式中,在利用所述组件代码生成工具,生成基础组件代码和控制层组件代码的步骤之前,平台还可以响应于项目开发人员输入的操作指令,维护数据库结构设计文件pdm并根据平台提供的预设接口设计文档规范,维护当前项目的接口设计文件xml,从而能够随着项目开发的进程,实时地更新数据库结构设计文件和接口设计文件。

请参阅图2,本发明还提供一种J2EE项目的开发平台,所述开发平台可以包括:

模型提供单元100,用于预先提供J2EE项目开发模型,所述J2EE项目开发模型包括通用组件模型、能力组件模型、基础组件模型、数据访问层组件模型、业务层组件模型、控制层组件模型、web主应用组件模型以及批处理主应用组件模型;

开发架构初始化单元200,用于接收针对当前项目的开发指令,初始化所述当前项目的开发架构;

工具配置单元300,用于基于所述J2EE项目开发模型,在所述开发架构中配置组件代码生成工具;

组件生成单元400,用于利用所述组件代码生成工具,生成基础组件代码和控制层组件代码,并分别将所述基础组件代码和控制层组件代码打包生成基础组件和控制层组件;

实现类分配单元500,用于为所述控制层组件中的各个业务层接口分配实现类,并将实现类维护于业务层组件中;

数据访问类维护单元600,用于将新增的数据访问类维护于数据访问组件中;

组件打包单元700,用于将业务层组件代码和数据访问组件代码分别打包,生成业务层组件和数据访问组件;

应用集成单元800,用于基于所述基础组件、控制层组件、业务层组件和数据访问组件,集成web主应用和批处理主应用,并将所述web主应用和所述批处理主应用部署于预设运行环境中。

在本发明一个实施方式中,所述开发平台还包括:

用户权限设置单元,用于响应用户的账号注册请求,为所述用户创建账号和密钥,并为所述用户分配接口使用权限;

鉴权单元,用于当输入的账号和密钥与创建的账号和密钥相匹配时,在所述开发架构中配置组件代码生成工具。

需要说明的是,上述各个功能模块的具体实现方式与步骤S1至S6中的描述一致,这里便不再赘述。

由上可见,本发明提供了一种J2EE项目开发模型,该模型由通用组件模型、能力组件模型、基础组件模型、数据访问层组件模型、业务层组件模型、控制层组件模型、web主应用组件模型以及批处理主应用组件模型组成。其中,每个组件模型可以独立开发和调试,最后再装配为web主应用组件和批处理主应用组件,这两个组件可以独立部署和运行。在项目迭代过程中,无论是数据库结构变化还是业务接口层面发生变化,平台都可以为任何符合本平台J2EE项目开发模型的软件项目提供持续生成数据访问层组件和控制层组件的能力,工程师只需开发业务层组件即可,不需要维护其他组件,从而节省了人力成本。本发明的项目开发方法同时适用于新项目开发和旧项目重构,能够辅助Java工程师快速进行软件开发工作,提高开发效率。

上面对本发明的各种实施方式的描述以描述的目的提供给本领域技术人员。其不旨在是穷举的、或者不旨在将本发明限制于单个公开的实施方式。如上所述,本发明的各种替代和变化对于上述技术所属领域技术人员而言将是显而易见的。因此,虽然已经具体讨论了一些另选的实施方式,但是其它实施方式将是显而易见的,或者本领域技术人员相对容易得出。本发明旨在包括在此已经讨论过的本发明的所有替代、修改、和变化,以及落在上述发明的精神和范围内的其它实施方式。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1