一个好多平台对于一个程序员的重要性

快速开发:普元EOS平台简介 近期公司做的项目是基于普元的EOS平台进行开发。为了了解这个开发平台,特地去普元公司进行了四天的培训。 普元EOS是基于J2EE体系结构、采用面向构件技术实现企业级应用开发、运行、管理、监控和维护的中间件平台。 它将J2EE体系规范、构件技术、xml技术和可视化技术完美结合起来,为基于J2EE平台上的应用提供了面向构件的服务。 阅读详情
 

希望这篇文章能够对那些正在或即将开发自己团队的J2EE应用快速开发平台的个人或公司能有所启发!    

      像EOS这样动辄几十上百万的平台不是每个公司都愿意花钱去买的!因此构建一套穷人级的企业快速开发平台成了很多团队的首选,而对于小团队来说,构建一套自己可以维护的开发平台才是最重要的。下面,我将以我的平台的开发过程为例来详细解析这个过程!  

“如果能把项目中大量的代码编写工作变得轻松,是多好的一件事!  "

        在使用了AppFuse之后,我有个想法,能不能利用velocity这个优秀的模板引擎,用一种更加直观的模式,把开发项目中的重复代码让它自动生成,生成之后的基础代码,按照实际的需求稍作修改便可以运行,极大的提高工作效率。这样的话,程序员就可以从大量的重复劳动中解放出来,将精力更多的投入到业务分析及学习中。

        这个想法一直在我的脑海里横亘不去,尤其在做了大量的重复模块后,深刻体会了重复Coding的那种浪费生命的痛苦后,这种冲动尤为强烈。

         离开旧公司,到了新公司之后,由于职位和公司定位的不同,让我有时间开始把快速开发平台和自动代码生成器的开发真正的摆上开发日程上了。

          第一步 ,自动代码生成器生成的是业务模块,那么底层必须有一套框架能够为它提供支撑,而且这套基础框架要足够灵活,并且和单个模块的耦合性要比较弱。要解耦模块之间的联系,势必要用到MVC分层设计。感谢Java的开放性,使它有这么许许多多的MVC框架可以使用。我采用的当然是目前最流行的 SSH(Struts+Spring+Hibernate)的组合(以前项目一直在用,也有些成熟的积累),花了三个月的时间,通过一个项目的实际应用来使这个框架基本成型。其目前功能包括:

        1:灵活完善的权限管理功能(包括用户管理、角色管理、组织机构管理、资源管理、资源角色映射管理...)。原来计划采用开源的JGuard来托管这部分的功能,因为一些特殊的原因放弃了(考虑要和工作流引擎的权限部分做集成),只采用了其权限管理的一些设计思想。

        2:基于Spring的AOP实现的日志和权限管理(通过Spring的代理也将Struts的Action托管了,使的对Action的调用也能被 AOP侦测到),这样对每个功能的调用,如果需要日志纪录的话,之间将其配置到Spring的配置文件中就可以了。

        3:UI上实现了类似.NET的Validation验证,这点很重要,想必大家都深刻体会到利用JavaScript或Struts的验证机制来实现前端页面数据验证的痛苦了吧:),我们实现的功能如下图所示:

   4、多套UI风格样式。这个不是很必须,但是作为一套成功的系统,良好的用户体验也是必不可少的。

        5、支撑模块:2套报表引擎(一个是基于JasperReport实现的B/S版本报表;另外一个是类Excel的报表引擎),流程引擎(其实就我个人来看,工作流引擎才是这套系统的灵魂 ,有了它,所有流程性应用包括表单、业务流、权限都可以通过配置并结合Beanshell脚本来获得 ,以下是我们报表和流程设计器的一些截图:

   6、i18n的支持,由于我们有很多国外的客户,这块是必须的。

 

有了这个基础支撑平台之后,就可以开始着手开放我们的代码生成器了。

        第二步 :开发代码生成器。 AppFuse基于Ant的自动代码生成模式让我深恶痛绝,究其原因,一句话--“不够人性化”,我们做的首先必须考虑可用性,因此决定采用可视化的UI 模式。由于我用的是NetBean编辑器,做可视化的Swing开发不成问题(这点要感谢SUN啊,出了个和VB一样简单的IDE)。我实现的代码生成器的界面如下:

  

 

怎么样?是不是够傻瓜化啊?呵呵,是个人都能用啊!

       从上面大家可以看到,我们这个代码生成器和Hibernate的POJO对象生成工具类似,也是基于数据库的模型来生成代码的,不同的是,我们生成的代码范围更广,不仅包括了POJO对象暨相应的hbm.xml文件,另外还包括相应的DAO(Server层)、相应的Action、Form类、相关的 JSP文件(list页面、edit页面、Excel导出页面等等)、资源文件及相关的Struts和Spring的配置子文件(Struts和 Spring均支撑将配置拆分成多个配置,我们利用这种特性来减低模块之间的耦合性。)

        至于数据库模型的获得,可以利用JDBC的MetaData(元数据模型) 的功能来获得,我们目前维护了表的完整的主键、外键关系(父子表)

 第三步:配置模板。有了可视化的数据库表映射模型,也获得了数据库表及其主外键关系的详细信息,接下来当然是根据这些信息来生成代码了。这里我们用了强大的Velocity模板 技术,这样不仅可以灵活的处理复杂的表映射对象之间的关系,也能够灵活的进行变更升级。而且我们能够通过所获得的数据库模型,在页面上自动实现基于Javascript的数据验证“非空验证、字符长度验证、数字验证,日期验证”。

          呵呵,通过以上3个步骤的工作,我们的基础开发平台和自动代码生成器就大功告成了!目前我们生成的代码可以直接编译通过,通过简单的系统配置后,可以直接在服务器上跑!由于模板种类多,而且模板中自动实现的代码功能已经非常完善了,所以一些特殊的业务需求只需要在自动生成的代码基础上做简单修改就可以了!

         基础开发平台和代码生成器投入使用后,对我们项目开发的资源投入的改善是非常明细的,目前基于基础平台和代码生成器的配合,我们已经做了6、7个系统了,平均每个系统的开发时间至少要比以前节约40%,有的项目甚至达到了80%以上(我们最高的一天,处理了40多个表的增、删、该、查的功能,及中文本地化)。而且,另外很重要的一点,生成的代码无形中统一了程序员的设计风格,我们通过这套开发机制,能够最大限度的保证我们开发的系统质量,保证模块可以在不同系统之间的自由迁移,最大限度的实现复用!在项目开发中节省出来的大量时间,也让我们可以去研究更多的开源中间件和系统,来增强我们的基础平台,从而形成一个良性的循环!

 我们做了多套模板,能够针对单表操作,及父子表操作来自由组合搭配。以下就是我们系统的一些功能截图,除了中文化之外,基本上没有修改:

单表操作:

父子表关联操作:

 

博客平台选择指南:找到适合程序员的完美舞台 程序员该如何选择适合自己的博客平台呢?本文从多个角度深入探讨了各种博客平台的特点并给出了具体可行的选择建议。 阅读详情

相关推荐

算法对程序员的重要性

程序员需要具备良好的计算机科学和编程基础知识,理解程序的逻辑和架构,熟悉常见的编程语言(如C、C++、Java、Python等)和开发工具(如集成开发环境、调试器、版本控制系统等)。在编写代码时,程序员需要考虑代码的可读性、可维护性和性能等方面,并进行充分的测试和调试,以确保程序的正确性和稳定性。他们需要能够理解和实现更复杂的算法,如图论算法、动态规划、贪心算法等。"算法实现万物都可算"是指通过适当的算法设计和实现,可以解决各种问题,无论是科学、工程、经济、社会等领域的问题,都可以用算法进行求解。

百锦再的博客 1万+

忘掉普元EOS、构建自己的企业级快速应用开发平台

<br />希望这篇文章能够对那些正在或即将开发自己团队的J2EE应用快速开发平台的个人或公司能有所启发!   <br />      像EOS这样动辄几十上百万的平台不是每个公司都愿意花钱去买的!因此构建一套穷人级的企业快速开发平台成了很多团队的首选,而对于小团队来说,构建一套自己可以维护的开发平台才是最重要的。下面,我将以我的平台的开发过程为例来详细解析这个过程!   <br />“如果能把项目中大量的代码编写工作变得轻松,是多好的一件事! "<br />        在使用了AppFuse之后,我有

qq498630285的专栏 1361

普元EOS7.5基础教程(官网版)

普元EOS7.5基础教程

OPSLI 快速开发平台:提升开发效率,让您轻松创建企业级应用

总之,OPSLI 快速开发平台是一个易于使用、高效、功能丰富的低代码开发平台,适用于各种类型的企业级应用开发。总的来说,OPSLI 快速开发平台是一个高效、灵活、易用的低代码开发平台,适用于各种类型的企业级应用开发。如果您正在寻找一个能够帮助您提高开发效率、降低开发成本、提高应用质量的工具,那么OPSLI 快速开发平台是您的不二选择。此外,OPSLI 快速开发平台还有很多丰富的插件,例如图表、表单、表格等,您可以轻松地实现您的业务需求。我们将继续提供优质的产品和服务,帮助您提高生产力,提升您的业务竞争力。

u013416283的博客 532

企业级快速开发平台JXADF.zip

基于OSGi的企业级快速开发平台——JXADF 1、基于OSGi、J2EE 2、插件集市(http://osgi.jxtech.net)中有丰富的插件。 3、前端代码(界面、CSS、JS、图片等)、后端代码(JAVA业务逻辑、SQL脚本【只需要提供一种数据库脚本,在安装时会根据数据库类型自动转换】)全部打包在一个Bundle(JAR)中,分发、测试、积累、部署都十分方便。 4、支持热部署、多数据库、多皮肤、国际化。 5、支持多种工流引擎,包括:健新科技自己研发的工作流引擎、Activiti、Oracle BPM,可根据需要集成自己的工作流引擎。 6、桌面端、移动端自己适应,开发一次,即可支持多种终端。 7、学习成本低、效率高。 8、有丰富的文档,参见:(http://osgi.jxtech.net) 9、演示地址:http://demo.jxtech.net 用户名:admin 密码:123456 这是目前国内唯一个基于OSGi提供插件集市的企业级快速开发平台。 标签:JXADF  J2EE框架

基于云平台的ATS系统微服务架构方案研究

在当前智慧地铁的升级转型过程中,城市轨道交通ATS系统面临着稳定性差、运维方 式繁琐和故障应急处理效率低等问题。为此,提出一种基于云平台的ATS系统微服务架构方案; 研究了ATS系统在云平台上的微服务总体架构、ATS应用的微服务划分和设计、容器部署方式 及通信交互模式,可实现系统松耦合和易扩展,达到节约计算资源、提高系统稳定性和运营效 率的目的

mi_lan1的博客 966

Agile Business Studio敏捷企业业务快速开发平台及敏捷宣言

联系qq:158393237 What is  Agile  Business  Studio?(简称ABS)     ABS是一款快速开发平台,提供完全可视化操作界面、组件化、模块化的开发环境,具备超强的的工作流、组织机构和权限API、复杂图表和报表汇总能力、丰富的业务规则定制能力,以及各种浏览器环境下的复杂业务展现和交互支持。ABS采用纯BS、SOA和云架构,支持所有PC、平板和移动设备

Ai大模型,odoo,idempiere,metasfresh,低代码,ecshop数据采集发布接口,zencart,lightinthebox,shopex 数据采集接口 1298

AI人工智能与模拟退火:碰撞出的智慧火花

本文旨在为读者全面介绍模拟退火算法在人工智能领域的应用。我们将涵盖从基础理论到实际实现的完整知识体系,帮助读者理解这一受自然界启发的优化技术如何解决复杂的计算问题。文章首先介绍模拟退火的基本概念,然后深入其工作原理和数学基础,接着通过Python实现展示具体应用,最后讨论实际应用场景和未来发展方向。模拟退火(Simulated Annealing, SA):一种受物理退火过程启发的概率性优化算法能量函数(Energy Function):评估系统状态的函数,对应优化问题的目标函数。

AGI×大数据,开启智能时代的认知跃迁;解码AGI,赋能数据驱动的智能革命。 452

六.java进阶-微服务架构平台-DevOps低开平台-普元EOS学习这一篇就够了(详细)

分布式微服务架构,集成平台普元EOS。EOS Microservices 5.0。Devops。信创

ThatsThePrice的博客 2131

python爬虫项目(六十八):爬取电商平台用户购买历史数据,分析消费行为

本文详细介绍了如何爬取电商平台用户购买历史数据,并分析其消费行为。通过爬虫技术、数据存储、分析和可视化等步骤,可以深入了解消费者的行为特征。未来,随着数据分析技术的不断发展,利用人工智能和机器学习方法对消费行为进行更深层次的分析,将成为电商平台提升竞争力的重要手段。

斌擎科技 2768

2023华为od机试C卷【启动多任务排序】C++ 实现

一个应用启动时,会有多个初始化任务需要执行,并且任务之间有依赖关系,例如A任务依赖B任务,那么必须在B任务执行完成之后,才能开始执行A任务。现在给出多条任务依赖关系的规则,请输入任务的顺序执行序列,规则采用贪婪策略,即一个任务如果没有依赖的任务,则立刻开始执行,如果同时有多个任务要执行,则根据任务名称字母顺序排序。

MISAYAONE的博客 887

程序员常用的几个主流软件外包平台:哪一个更适合你?

程序员如何选择合适的外包平台?本文对比分析了主流平台的优缺点:程聚宝(原程序聚合)专业规范,抽佣低但审核严;一品威客门槛低但价格竞争激烈;电鸭社区适合远程协作但项目少;猪八戒规模大但内卷严重;技术社区信息分散但无抽成;Upwork项目优质但门槛高。建议新手从程聚宝、一品威客入手练手,长期发展需积累客户资源和个人品牌。平台只是工具,最终决定收入的是交付能力和客户关系维护。

摘星编程的博客 3763

猿创征文|Qt 文件和目录应用讲解【QCoreApplication】【QFile、QFileInfo】【QTemporaryDir和QTemporaryFile】【QDir】【QFileSyste】

Qt 文件和目录精准讲解【QCoreApplication】【QFile、QFileInfo】【QTemporaryDir和QTemporaryFile】【QDir】【QFileSyste】【QFileDialog】 第一章 QCoreApplication类 第一节 QCoreApplication常用函数方法 第二节 QCoreApplication举例 第二章 QFile类 第一节 静态函数方法 第二节 成员函数方法 第三章 QFileInfo类 第一节 常用函数方法 第四章 QDir类

Qt历险记,专注Qt技术,三年医疗设备研发经验,1年机器视觉研发经验,半年柔性传感研发经验。 942

2024年最新程序员接单必看的五个平台,最后一个赚麻了_程序员接单平台

著名的Coding旗下的互联网软件外包服务平台,平台以外包为主。

2401_84562041的博客 8058

桌面运维工程师面试题详解(一)

桌面运维工程师面试题详解(一)

jks212454的博客 1425

YOLOv11改进缝合注意力 | 深度优化的BiFormer模型-结合BiLevel Routing Attention与深度可分离卷积的创新应用(附代码)

YOLO(You Only Look Once)系列目标检测算法一直以来都是计算机视觉领域的热门选择。随着YOLOv11的发布,它在许多实际应用场景中取得了显著的性能提升。然而,面对日益复杂的目标检测任务,单纯依赖卷积神经网络(CNN)在某些情况下已经显得力不从心,特别是在处理小尺度、密集目标以及遮挡目标时,卷积操作的局部性限制了模型的表达能力。

一键难忘的博客 716

程序员接私活,接单平台

面向国内企业接单,主要好处就是对英语沟通能力的要求没那么高,不过客户屁事多,不懂装懂,需求来回改,喜欢瞎 bb,回款周期长的问题也普遍存在。 因此,我个人觉得,面向国内市场接单,在你基本技术能力都满足的情况下,下面这项能力应该是你最需要重视的: 商务沟通能力(管理好客户的心理预期) 倘若管理不好客户心理预期,项目就容易出问题。最常见的情况,就是信息不对称:客户认为钱给多了,你活干少了;或者你活干了一堆,却见不到具体产出物等等。 类似这样的坑,还有一堆。限于篇幅,就不在此细聊了,我后面会新开篇文

GQ_666的博客 1万+

C/C++李峋同款跳动的爱心代码(完整代码)

C++语言实现出李峋同款跳动的爱心的完整代码。

AIGC 10万+

超级实用的程序员接单平台,看完少走几年弯路,强推第一个!

超级实用的程序员接单平台,看完少走几年弯路,强推第一个!

DEVELOPERAA的博客 1370

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

数据结构与算法对一个程序员来说的重要性?

图灵奖获得者,Pascal之父尼克劳斯·维尔特曾经说过:程序 = 数据结构 + 算法。 编程从本质上来说就是算法加数据结构。甚至可以说一切计算机技术,包括本科阶段要学的计算机操作系统、计算机网络、数据库系统等等,以及各种技术框架和库无不建立在算法和数据结构之上的。 然而现实是大部分工作很少会直接用到算法或数据结构,多数都是写CRUD或处理业务逻辑。即使完全不懂算法和数据结构,也可以把工作做好。 所以对于初入门的程序员来说,算法和数据结构似乎是可有可无的。很多人算法的巅峰水平可能就是大学毕业的时候,随着工作

九章算法的博客 3135

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

10个程序员可以接私活的平台

私活接的好收入不比上班少,一些同学靠接私活月收入也上万甚至几万了。我们先来聊聊什么样的私活不能接。。1、没有第三方担保的个人对个人的尽量不要接,双方都没保障,出了问题很大的可能撕破脸皮不了了之。2、一上来就直接说给我开发一个什么软件,不说具体需求,没有需求文档的都不靠谱,这样的项目不要接。3、尽量442收费方式,即开工收40%项目款,项目中期收40%项目款,项目结束收20%项目款。一开始不给钱的,尽量不要接,这一点一定要记住,否则很容易付出了劳动得不到应得的收入。不给完钱,不交完整代码。

logic1001的博客 2699

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

python程序员可以从哪些平台接单赚钱?看完我给你介绍的这几个平台,没学过python的你也能边学习边赚钱

今天给大家介绍几个程序员可以接私活的平台,其中包括:国内个平台,国外个平台。私活虽然也没有那么好做,一般私活的性价比远比上班拿工资的低。但是作为一个额外的创收渠道,,都乐意利用业余时间接私活。程序员客栈中国非常领先的自由工作平台,为中高端程序员、产品经理和设计师等等互联网相关人员提供稳定的线上工作机会,包括自由工作、远程工作和兼职工作,还支持按需雇佣,工作模式非常多,感兴趣的推荐大家尝试一下。虽然名称叫程序员客栈,但是除了程序员,像产品经理,设计师等等互联网相关人员,都能在上面找到适合自己的项目。

m0_59162248的博客 3802

[转载]如何做一个出色的程序员

爱这行!!!       从事任何行业都一样,只有真正的爱上了这份工作,才会投入热情,才会在顺境中自我警醒,在逆境中寻找突破。这个行业的竞争很激烈,你停下来走,别人就立刻会跑步超过你,没有对这一行业的一种热情,就很难在困境中保持一种执着的态度坚持到底。踏踏实实“扎马步”       今天无意中看了“校长”的“程序员&司机”,其中谈到了关于程序员速成的问题。其实速成班毕业

星空下的邂逅 2万+

不看后悔!国内外程序员接单平台大合集!带你一次性了解各个热门接单平台!

相信每个程序员都对于接单这件事,都或多或少的有所了解,程序员在网上兼职接单,的确是一个增加收入的有效方式,收入的多少,与程序员的个人能力也是息息相关,但是除此之外,还有一个影响收入的关键就是平台的选择,而且平台的选择不仅会影响收入的多少,还与个人权益的保障,接到单子的种类和质量息息相关。可以说,有时候选好一个好平台,比个人能力的强弱更为关键。本篇文章将会介绍以下几个平台:一:程序员客栈。

mate1357的博客 6460

论程序员在当今社会的重要性

在现如今的社会,无论是自黑还是嘲讽也好,反正是对程序员的反面言论是越来越多,在贴吧论坛随处可见的黑程序员的小段子也是数不胜数。其实真正的程序员一般都是把那些小段子当成是笑话看,毕竟他们不了解程序员,但是对于许多不知情人士还有那些所谓的“专家”眼里可就不同了,可以说程序员在社会人眼里的地位是每况愈下啊,在这种情况下,作为一个资深的程序员的我就必须有义务在这里普及一下程序员的重要性了。   首先说明

X-Sirius的专栏 7963

做一个有脑子的程序员

程序员是最理性的一个群人,除非面对电子产品的时。程序员是一群高智商的群体,唯一的缺点就是发际线总是很难防守。程序员是一群情商比较低的人群,常常看到程序员仅仅因为对技术的理...

纯洁的微笑 7776
上一篇: 软件开发人员的作战手册 - 让程序员活的久一点
下一篇: 工作流
java520ll
博客等级 码龄15年 2粉丝 4原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值