当前位置:  软件>java软件

二次开发平台 C1开发平台(card one)

    来源:    发布时间:2015-01-28

    本文导语:    一 CardOne开发框架 1 概述 CardOne是以Spring Framework为核心的,实用风格的JavaEE应用集成,是JavaEE世界中的主流技术选型,最佳实践的总结。 1.1 对项目管理的支持  基于maven(管理项目的构建,报告和文档的软件项...

 

一 CardOne开发框架 1 概述

CardOne是以Spring Framework为核心的,实用风格的JavaEE应用集成,是JavaEE世界中的主流技术选型,最佳实践的总结。

1.1 对项目管理的支持 

基于maven(管理项目的构建,报告和文档的软件项目管理工具)构建项目,使创建、开发、测试、发布、升级、生成文档等整个过程极度简便,各过程较规范。节省整个过程中不必要的时间消耗,规避很多风险。

1.2 主流技术选型

选用主流技术的重点原因为,较大部分开发人员已经掌握了这些技术的使用,在使用本框架开发时,基本可以做到零学习成术。而且各主流技术的开发手册,本框架的技术平台已收集齐全,方便开发人员随时查阅。以下为各主流技术选型:

1.2.1 Web

· MVC Framwork: Spring MVC 4.1.2。

· Template Framework:使用Freemarker(1、不能编写java代码,可以实现严格的mvc分离;2、性能非常不错;3、对jsp标签支持良好;4、内置大量常用功能,使用非常方便;5、宏定义(类似jsp标签)非常方便;6、使用表达式语言)。

· Javascript Library:JQuery、bootstrap。

· JavaScript/CSS Compressor: seajs、bootstrap。

1.2.2 Remote Invocation

· SOAP WebService: JAX-WS2.0的注解 + Apache CXF 无疑是最成熟的。

· Spring Http Invoker: 与rmi一样的性能,后期如果前端用nodejs开发,可以平滑的切换到Hessian。

1.2.3 Database

·  数据库设计基本原则: 1.主键的列名统一为id。2.为方便数据操作及维护,不建立任何外键,用程序去保证关联关系。3.为表名添加前缀以便日后管理。比如有几十个表,将联系比较紧密的表,使用相同的前缀。

· ORM Framework: spring JdbcTemplate的基础上结合模板引擎freemarker进行扩展,使之可把sql写到java代码外部,便于后期维护。封装支持多数据源动态切换、多方言支持等等。

· 数据库连接池: 采用阿里的druid,。

· Cache: MemcachedCache(可切换为阿里云的OCS)与GuavaCache混合使用,中央式缓存作为本地缓存的二级缓存,减少对网络io的消耗,结合spring cache注解,可减少代码量。

1.2.4 Services

· Security Framework: 基于角色的访问控制(Role-Based Access Control)作为传统访问控制(自主访问,强制访问)的有前景的代替受到广泛的关注。在RBAC中,权限与角色相关联,用户通过成为适当角色的成员而得到这些角色的权限。这就极大地简化了权限的管理。在一个组织中,角色是为了完成各种工作而创造,用户则依据它的责任和资格来被指派相应的角色,用户可以很容易地从一个角色被指派到另一个角色。角色可依新的需求和系统的合并而赋予新的权限,而权限也可根据需要而从某角色中回收。角色与角色的关系可以建立起来以囊括更广泛的客观情况。

· Schedule: 对于固定时间间隔的任务,JDK自带的Executor已足够好。Cron式定时执行,Spring的Scheduler也能满足。而且Spring的提供的纯XML配置也让Scheduler变得很简单,Quartz更大的优势体现在保证集群中有且仅有一台服务器执行任务。

1.2.5 Utilities

· General: 优先使用Apache 系列的工具类,其次有 google 的 guava 及 spring 中的工具类补充。

· JSON: 使用GSon, google 的工具类,安卓手机客户端开发时也会用到,减少开发人员的学习成本。

· Email: Spring自带的Email封装挺好用的。

· Logging: Slf4j,结合lombok的@Slf4j支持,可做了很少的代码量。 

· 其它:excel生成与读取,mdb读取等等。

2 特点和优势

· 学习成本很低,了解主流技术的开发人员可以上手即用。

· 开发文档详细齐全,并用其构架了基础开发平台,再用基础开发平台实现了hrm、oa、cms等系统,有大量的demo可以参考。

· 有配套的代码生成工具支持,可生成整个项目的所有后台代码,有基本的增、删、改、分页查询、验证等功能。

· 对excel、xml、json、pdf等各类数据转换有封装方便使用的工具类。

· 在配置部分不光支持xml,还支持动态语言groovy。可用于复杂业务逻辑的动态配置。

二 CardOne代码生成工具 1 概述

基于spring 配置方式配置项目结构,包括项目名称、项目包名、各层模块,并可定义每个模块下有几个业务,每个业务对应有那些实体等等,还可能配置那些实体是不需要生成增、删、改、分页方法dao、service、controller各层方法的,比如有些实体只是简单的关联表。如果扩展现有生成模板可实现前端页面的生成。

2 特点和优势

· 采用开发人员熟悉的spring配置方式,零学习成本。

· 采用主流的模板引擎技术freemarker,方便扩展模板。

· 配置上可实现连接多个不同的数据源,生成同一个项目的代码。

3 生成案例

· Po层:完全与数据库表相对应的结构。

· Dto层:继承po层表结构,可一些业务操作属性,比如ids用于批量删除、分页号paginationNo、分页大小paginationSize

· Vo层:与视图交互时交互数据。

· Dao层:数据持久层,现基于spring jdbc实现,也可切换为mybatis或其它框架。

· Service层:业务层,写各种业务规则。

· Controller层:控制层,现基于 spring mvc.


    
 
 

您可能感兴趣的文章:

  • 几个windows平台C++开发错误举例
  • 请问在哪下载嵌入式Linux开发平台???想学嵌入式开发!!!
  • 谁知道国内有那些公司在linux平台上做开发的,或开发linux软件的?
  • Think第二版发布了!(本人开发的C语言跨平台开发库)
  • 面向事物(结构)的开发平台 XWorker
  • 云计算开发平台 Cell Cloud
  • 移动互联快速开发平台
  • PHP快速开发平台 SunShineAnywherePlatform
  • 企业信息系统开发平台 JBob
  • 请问谁知道网上哪里有跨平台软件开发或者是开发可移植性软件的资源?给高分!
  • 视觉快速开发平台 qcv
  • 移动开发平台 Titanium4j
  • Eclipse Web开发平台 WTP
  • J2EE应用程序开发平台 Saturn
  • Web开发平台 Eclipse Orion
  • MMORPG游戏开发平台 OpenNeL
  • Java 快速开发平台 JRapid
  • 集成网络开发平台 lamppr
  • 移动应用快速开发平台 APICloud
  • Java快速Web开发平台 J-HI
  • 移动设备开发平台 Maemo
  • 原来作window平台上开发,现因工作关系 转到unix平台,如何快速上手?
  • 我是学pb的,有一个问题想请教各位java的朋友,j2ee平台是什么啊?如果要用这个平台的开发pb的话是否要学java??
  • 嵌入式linux开发:一段代码在windows平台用VC编译运行正常,在linux平台用gcc编译运行正常,但是用arm-linux-gcc编译在嵌入式板子上运行就不正常.
  • 请问linux下的好的jsp开发平台?
  • 在线移动应用开发平台 AppCan
  • 应用程序开发平台 Titanium
  • 现在主要有哪些java的开发平台和编译器?
  • RedhatAS4里面如何搭建C++开发平台?
  • Eclipse网络软件开发平台 Netwiser
  • 游戏开发平台 Volity
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 开发平台gdbserver的使用
  • 大家推荐一个windows下的java开发平台。工具本身是为windows优化的。jbuilder太慢。
  • 3D游戏界面开发平台 Famo.us
  • 开源电子开发平台 Wiring
  • J2EE快速开发平台 F1JEE
  • Linux开发平台的问题,有点弱吾笑!
  • 微信开发平台 weiphp
  • AJAX Web开发平台 Dorado7
  • 富客户端开发平台 Eclipse RCP
  • 移动程序的开发平台 Worklight
  • 企业业务开发平台 BPMX3
  • Java手机开发平台 Java ME
  • Web2.0应用开发平台 Wakanda
  • 一个小调查--大家都用什么java的开发平台???
  • JAVA通用快速开发平台 wabacus
  • 企业级前端应用开发平台 EDP
  • 招聘C/C++开发人员 Linux平台
  • <新手>Linux平台的WebServices开发
  • 移动应用开发平台 xFace3
  • 敏捷开发的开源平台 iceScrum


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3