阅读更多

22顶
6踩

编程语言

原创新闻 开源平台eRedG4_V1.2版发布了

2011-05-04 09:26 by 见习记者 eredlab 评论(28) 有14555人浏览

在广大网友的支持和鞭策下,eRedG4_V1.2版又登场了。

eRedG4(易道系统集成与应用开发平台)是一个开放源代码的、面向企业计算环境下异构系统集成与行业应用快速二次开发的平台。它包括:基础类库、业务模型框架、富浏览器端开发框架、富桌面端开发框架、权限参考模型、平台集成开发插件六大组成部分。

您可以通过下面的地址获取到G4最新版本和相关资源:

GoogleCode项目主页

http://code.google.com/p/g4-xiongchun/
在线演示系统暨G4平台在线交流社区

http://web230531.host89.chinajsp.net
eRedG4平台总设计师个人博客

http://hi.baidu.com/eredlab

QQ讨论群

eRedG4①号群(500人):92497522[已满]  

eRedG4②号群(200人):127369735[已满]  

eRedG4②号群(500人):48359988

Email:eredlab@vip.qq.com

eRedG4社区开源版版本变更日志

2011-05-03 发布eRedG4_V1.2版本

(1). 解决了报表打印功能报表模板设计器和报表引擎和Groovy*.jar发生版本不兼容的问题。

(2). 新增了下拉树高级控制以及下拉树和Form表单之间数据交互的标准范例[树范例七(下拉树2)]。

(3). 删除了原存储过程调用例子,新增了[存储过程调用]标准范例。菜单路劲:./其它/存储过程调用。

(4). 新增“表单同步提交”标准范例。菜单路径:./表单及表单元素/表单同步提交。

(5). 编写了G4应用的部署war包ANT打包脚本,以后建议大家开放调试都在标准JavaProject下使用G4Server来调试别再去弄什么WebProject。生产部署的时候使用此ANT脚本生成war包或ear包来部署G4应用。

(6). 编写了生成G4_API的JavaDoc ANT脚本,在以后发布的版本中将附带一份自动生成的G4_API文档。

(7). 引入基于JUnit单元测试测试机制,编写了部分核心类的测试用例,以后会陆续编写大量的单元测试用例尽可能多的覆盖G4平台代码。

(8).解决<eRedG4:ext.codeStore />标签生成的JSON资料末尾有","逗号在IE7下显示无法解析的Bug。

(8). 封装了基于Flash的SWFUpload上传和Web表单上传的API,封装仿AJAX效果下载流文件API。开发实现了[文件管理]标准范例功能演示模块。在系统预置图标中加入了上传和下载图标。完善了<eRedG4:ext.myux />标签,追加了swfupload扩展类型来导入SWFUpload所需的相关资源。

(9).完善了[表单交互(数据提交和填充)]功能演示模块。

(10).完善了log4j日志文件的输出路径设置:使用相对路径替代了绝对路径。为日志输出在系统部署和系统移植时提供了很大的便利性。

(11).针对对字典维护和全局参数表维护加入了“内存同步”功能,保证维护后不需重启应用服务器。把字典数据源由原来的从eacode表中取改为从codeview视图中取,这样的会业务数据字典也可以通过union语句加入到codeview视图中来由平台统一载入内存。(提示:只有数据量不大,读取又比较频繁的业务数据才能将其union到codeview视图加载到内存中)

(12).完善了非法请求拦截机制,加入了对会话超时情况下异步请求的拦截和重定向(以前版本只对同步请求做了处理)。(提示:系统升级后不需要对现有代码做任何改动,所有异步请求在会话超时的时候将被统一拦截重定向到登录页面)

(13).完善了<eRedG4:html />标签,加入了exportParams属性导出全局参数。(提示:此参数仅在index.jsp中使用,自己实现的业务功能模块只需要通过parent.参数键名就可以在JS上下文中访问到全局参数)

(14).将浏览器标题、系统标题、Banner图片、Logo图片、版权信息等都改为由全局参数表设置。以后的版本大家只需要直接在“全局参数表维护”中配置相关参数就可以定制你们自己的相关信息而不需要再去修改代码。

(15).解决了ext窗口或其他html层会被Flash图形报表遮盖的bug。

(16).新增了对2D栏位图和2D栏位组合图图形报表的封装,并开发了"2D栏位图"和"2D栏位组合图"两个标准范例模块。

(17).完善了所有的UPDATE的SQLMAP语句,将isNotEmpty改为了isNotNull解决修改操作不能将字段修改为空字符串的Bug。

(18).完善了RequestFilter类,对请求类型进行了定义,将请求是否需要进行安全认证区分为常规请求和裸请求:只需要在请求参数中传递postType:1,则此请求为裸请求,不需要安全认证便可直接访问到Action。

(19).将客户端提示信息从Service中分离前移到了Action层或者JSP层来处理。

(20).解决多个功能模块列表数据翻到第N页,点击刷新按钮后返回第一页的Bug。
(21).完善了用户登录系统验证程序,新加了是否允许同一个用户同时建立多个会话连接的参数配置。

(22).完善了DAO接口,增加了获取SqlMapClientTemplate对象的方法。封装了批处理执行非查询SQL语句的API及新增了批处理调用范例。

(23).增加了参数设置:左侧卡片树菜单当前活动卡片是否置顶1:置顶;0:不置顶.可以通过全局参数表来设置。
(24).完善和Fix了权限参考模型中多处严重缺陷和Bug。

(25).废除了在global.g4.properties中配置jdbcType属性的步骤,改为由系统加载JDBC驱动后从Connection对象的元数据中动态识别JDBCType参数。
(26).修复了在线演示系统[G4社区]功能模块发帖内容中包含一些特殊字符时导致页面显示崩溃的Bug。

(27).完善了Dao和Reader的queryForPage()方法,对内置的分页参数进行了非空及合法性校验。

(28).修复了在导出Excel时如果导出数据为空,则导出的excel文件中包含有excel模板表达式代码的bug。
2011-03-14 发布eRedG4_V1.1.1版本

(1). 调整了一下jar包以及PPT介绍文档,Fix了oralce数据执行脚本的一点bug。

2011-03-13 发布eRedG4_V1.1版本

(1). 开发了G4社区功能,方便G4用户进行交流和g4产品的推广宣传和技术支持。

(2). 完善了IDao接口,返回update操作和delete操作所影响的行数。

(3). 解决excelReader.read(int, int);方法的缺陷。实际列数>定义的metadate列数时数组越界。

(4). 解决Request请求监控功能插入耗时字段总为0/null的Bug。

(5). 改造了SpringBean监控功能,放弃对DAO的监控。只监控ServericeBean。重写切入点拦截表达式,使拦截基于G4项目的其他Service更加方便。并将此功能模块重命名为:Service监控。

(6). 完善了若干系统管理各功能模块UI细节。

(7). 重新组织了项目结构,为项目环境的搭建提供了更快捷的构建方法。

(8). 开发了修改当前登录用户个人信息功能。主界面首选项->修改个人信息。

(9). 封装了存储过程调用方法。

(10). 完善了DAO接口,加入了通过DAO直接获取Connection对象,DataSource对象的方法。

(11). 解决新增部门和新增菜单在mysql下面排序号字段为空时保存出[Out of range value adjusted for column]异常的Bug。

(12). 解决当菜单请求地址为空时打开空Tab的Bug。该为弹出提示信息”此菜单还没有指定请求地址,无法为您打开页面“。

(13). 重构了后台代码:将和UI显示细节关联的将Java对象转换为Json资料格式的步骤从Serivce前移到了Action来处理;将所有的事务不相关的查询操作都前移到Action由g4Reader来处理。

(14). 定义了声明式的Spring容器事务管理策略并完成事务管理示例程序的开发。

(15). 删除了以前实现的异常信息管理功能,废除了从DB中获取异常信息的实现方法。

(16). 修复在Tomcat下session超时不能将请求拦截重定向到登录界面的Bug。

(17).解决打开切面监控时,监控ID并发同步的问题。

(13).调整了G4Server,支持新建WebProjet和新建JavaProject两种方式。具体操作请参见视频教程。

(14).fix了人员管理与授权功能模块授权窗口重复初始化的Bug。

2010-12-22 发布eRedG4_V1.03.1版本

(1). 修复了系统管理下面所有功能分页的Bug.(此Bug由V1.03版本简化DAO开始模式,重写系统够后台时候引起)

(2). 修复了人员授权后登录系统求权限并集的Bug.(此Bug由V1.03版本简化DAO开始模式,重写系统够后台时候引起)

(3). 修复了封装的mysql分页算法翻页时候每页记录数翻倍的BUG.

2010-12-20 发布eRedG4_V1.03版本

(1). 实现了服务器不相关的静态资源管理器(G4.Resource),对CSS/JS文件进行压缩和缓存处理。

(2). 基于G4.Resource对在线演示系统进行升级,完成在线演示系统的二次提速.效果很给力!

(3). 完善序列号反生器组件(G4.ID)在高并发下的线程同步隐患问题。

(4). 以G4最终定位的简化Dao开发模式的思想,重写G4初期实现的权限参考模型的后台代码。

(5). 解决系统管理模块中MYSQL不兼容Oracle的sysdate关键字而引起的bug。

(6). 重新规划了业务模型层的命名规则并对现有代码做了相应调整。

(7). 对配置文件目录结构做了微调。

(8). 废除了领域实体对象Domain的概念,引入持久化对象PO和值对象VO的概念。

(9). 修复在MYSQL5.5版本下maxvalue被作为保留字导致G4出错的Bug。

2010-12-15 发布eRedG4_V1.02版本

(1). 完善了JDBC监控的控制台输出模式。

(2). 解决了index.js中由于网络慢Dom元素未产生而提前执行获取Dom方法的Bug。

(3). 购买了虚拟主机部署了eRedG4演示站点。

(5). 解决非developer帐户登录查询基于用户授权的菜单权限信息SQL语句的Bug。

(6). 解决了EAHTTPSESSION表在Tomcat中启动sessionid由于字段长度不够而报错的Bug。

(7). 对监控功能加入了演示运行模式控制。

(8). 编写了《搭建G4开发环境.chm》文档;重新录制了《视频教程:搭建基于eRedG4_V1.*的开发环境》。

2010-12-12 发布eRedG4_V1.01版本

(1). 全面支持了Mysql。系统管理及所有的Demo都能做Mysql上运行,并封装了Mysql分页算法。对用户提供了和Oracle一致的分页API编程接口。完全屏蔽MYQL和Oracle的底层数据库分页算法差异。

(2). 修复了系统管理功能中的表格翻页丢失查询参数的Bug。

(3). 美化了系统管理菜单图标及调整了菜单排列。

(4). 完善了一些系统管理后台代码和标准范例代码。

(5). 测试了G4在JDK1.5环境下的兼容性,一切OK!

(6). 完善了Oracle SQL脚本和DMP、新增了MYSQl数据初始化脚本.

(7). 重新录制了基于G4V1.01版本创建G4开发环境的视频教程。

2010-12-08 发布eRedG4_V1.0版本

(从2007-10到2010-12-08,G4经历了漫长的辛酸捣腾史,终于发布V1.0版本了!)

(1). 定义并封装G4常用数据结构:DTO、KEY、PO、VO。

(2). 实现数据库无关的支持集群部署的支持ID缓存的序列号发生器。

(3). 实现G4默认的AJAX交互资料格式JSON的Java编码与解析的Json处理器。

(4). 实现对属性文件进行常规CRUD操作的工具类封装。

(5). 汇编了大量的开发实用工具类G4Utils。

(6). 实现了G4异构系统缺省交互资料格式XML编码与解析的XML处理器。

(7). 实现了基于Velocity封装的模板引擎。

(8). 完成Struts-Spring-iBatsi的框架集成。

(9). 完成对Action、Service和DAO的基类抽象定义。

(10). 实现基于jetty的内置式开发调试服务器G4Server的封装。

(11). 完成<eRedUI:arm.Viewport />、<eRedUI:html />、<eRedUI:body />、<eRedUI:import />、<eRedUI:div />、<eRedUI:script />、<eRedUI:out />、<eRedUI:flashReport />、<eRedUI:ext.codeStore/>、<eRedUI:ext.codeRender />...等标签的封装。

(12). 完成对FusionChartsFree图形报表的标签化封装和数据填充API封装。

(13). 完成对Jasperreport报表引擎的封装,支持Applet打印和PDF打印及导出。

(14). 完成对Excel模板自定义标记语言定义及相关封装,实现基于自定义模板标记语言的Excel导出。

(15). 完成权限参考模型的设计及实现。包括:组织机构管理、角色管理与授权、人员管理与授权、菜单资源管理。

(16). 完成基础数据维护模块的设计与实现。包括:字典维护、全局参数表维护、异常信息维护。

(17). 完成运行监控模块的设计、底层封装与实现。包括:Request请求跟踪、Session会话监控、JDBC执行监控、SpringBean监控。

(18). 完成开发小助手模块的实现。包括:ExtJSAPI速查、调色板、系统与之图标功能。

(19). 抽象定义了"G4ESB"简单参考模型,并完成了Webservice和HttpInvoker两种远程服务开发模式的封装与集成。

(20). 反复论证G4是将Ext进行标签化封装还是使用原生ExtJS进行简单扩展,最终提供G4.Builder来支持快速开发。论证结果:选择后者。

(21). 完成表单及表单元素标准范例开发。包括:基本输入(属性配置)、基本输入(方法事件)、日历选择框(日期时间)、下拉选择框(本地数据源)、下拉选择框(字典数据源)、下拉选择框(远程数据源)、下拉选择框(N级联动)、单选框复选框、表单交互(提交、填充)、工具栏菜单栏、消息对话框、富文本输入框、Form布局(缺省)、Column布局、综合布局1、综合布局2。

(22). 完成窗口及面板组件标准范例开发。包括:面板范例1、窗口范例1、Tab标签卡范例1。

(23). 完成表格组件标准范例开发。包括:表格范例1(基本特性)、表格范例2(行级展开)、表格范例3(可编辑表格)、表格范例4(列锁定)、表格范例5(缓冲表格)、表格范例6(合计表格)。

(24). 完成树形组件标准范例开发。包括:树范例1(普通树)、树范例2(异步树)、树范例3(复选树)、树范例4(级联复选树)、树范例5(下拉树)、树范例6(异步表格树)。

(25). 完成报表组件的标准范例开发。包括:Applet报表、PDF报表、Excel导出、Excel导入。

(26). 完成图表组件标准范例开发。包括:2D|3D柱状图、2D|3D饼图、2D|3D柱状组合图、折线图、折现组合图、面积图、面积组合图、漏斗图、环状图、2D|3D折现柱状交叉图、交互图(JS调用、下钻、超链接)

(27). 完成页面布局组件标准范例开发。包括:Viewport自适应布局、Viewport嵌套复杂布局。

(28). 完成综合实例标准范例开发。包括:综合范例1、综合范例2、综合范例3、综合范例4、综合范例5、综合范例6。

(29). 完成对JasperReport-Applet打印功能的数字签名。

(30). 实现系统换肤功能。

22
6
评论 共 28 条 请登录后发表评论
8 楼 yin_bp 2011-05-04 10:22
7 楼 263623364 2011-05-04 10:19
赞一个 , 学习ing.
6 楼 chris_in 2011-05-04 10:15
 
5 楼 whacker 2011-05-04 09:49
4 楼 hellodota 2011-05-04 09:43
多谢春哥分享
3 楼 congjl2002 2011-05-04 09:40
支持作者,示例丰富,值得学习
2 楼 huasun 2011-05-04 09:40
G4平台不错,顶一个。支持春哥
1 楼 真liuyake 2011-05-04 09:38

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • AsyncTcpSession_Demo.rar

    使用SuperSocket.ClientEngine.AsyncTcpSession客户端连接、发送、接收测试

  • Socket传输文件示例(下)

    UINT ReceiveDataThread(LPVOID lpParam){         CTzg004Dlg *pDlg=(CTzg004Dlg *)lpParam;         //保存文件对话框         CFileDialog dlg(FALSE,NULL,NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,       

  • 使用Socket技术进行数据传输、传输文件;浏览器访问Socket服务器

    计算机网络基础 IP地址和端口 TCP和 UDP Socket技术 使用Socket进行数据传输 使用Socket传输文件 使用浏览器访问Socket服务器

  • TCP练习1:服务器端读取图片并发送给客户端,客户端保存图片到本地

    import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io

  • 用socket实现文件传输

    socket实现文件传输

  • 14.9 Socket 高效文件传输

    网络上的文件传输功能也是很有必要实现一下的,网络传输文件的过程通常分为客户端和服务器端两部分。客户端可以选择上传或下载文件,将文件分块并逐块发送到服务器,或者从服务器分块地接收文件。服务器端接收来自客户端的请求,根据请求类型执行对应的操作,并根据发送的文件名或其他标识来确定要传输的文件。

  • socket编程实现文件传输功能

    这节我们来完成socket文件传输程序,这是一个非常实用的例子。要实现的功能为:client 从 server 下载一个文件并保存到本地。 编写这个程序需要注意两个问题: 1) 文件大小不确定,有可能比缓冲区大很多,调用一次 write()/send() 函数不能完成文件内容的发送。接收数据时也会遇到同样的情况。 要解决这个问题,可以使用 while 循环,例如: //Server 代码 int nCount; while( (nCount = fread(buffer, 1, BUF_SIZE,..

  • 基于c语言实现socket文件传输

    c语言实现基于socket的文件传输,从server传输到client。

  • C语言基于socket的文件传输(可循环发送多个文件)

    基本简介:本次文件传输的实现主要是通过客户端向服务器发送下载请求,然后在服务器中找到对应的文件并打开文件,再继续向客户端传送文件,而客户端就在不停的接收。这是因为文件可能比较大,一个缓冲数组只能保存一部分文件内容,因此服务器得不断从文件中读取内容并发给客户端,而客户端得不停的循环接收。但是在事先,得将相应要发送的文件(照片,音频,视频等)保存在服务器相应的目录下。而这个是不符合实际要求的,通常来讲...

  • C/C++用socket实现简单的TCP文件传输

    本文主要用于总结学习到的关于socket网络编程的知识以及回顾项目原理等相关内容,进一步加深了对于TCP通信与实际项目之间联系的理解,也欢迎各位大佬对于文章中的错误理解进行批评指正以及对进一步完善所需要学习了解的知识原理给出重要建议

  • 使用Java完成Socket文件传输

    分别使用三个类(TCPFileUpload_Server服务器端、TCPFileUpload_Client客户端、StreamUtils工具类)完成图片的传输。 同样先运行服务器端文件,再运行客户端文件 import java.io.*; import java.net.ServerSocket; import java.net.Socket; /** * 服务器端 */ public class TCPFileUpload_Server { public static void mai

  • Socket中send()函数和recv()函数详解

    send()函数和recv()函数的理解 int send( SOCKET s, const char FAR *buf, int len, int flags ); 不论是客户还是服务器应用程序都用send函数来向TCP连接的另一端发送数据。 客户程序一般用send函数向服务器发送请求,而服务器则通常用send函数来向客户程序发送应答。 该函数的第一个参数指定发送端套接字描述符; 第二

  • Socket传输文件示例

    //1:显示文件进度 //2:可以随时终止传输过程 //发送数据线程 UINT SendDataThread(LPVOID lpParam); //接收数据线程 UINT ReceiveDataThread(LPVOID lpParam); //发送数据按钮消息响应函数 void CTzg004Dlg::OnButtonSend() {          // TODO: Add your co

  • python turtle代码示例-Python turtle.left方法代码示例

    本文整理汇总了Python中turtle.left方法的典型用法代码示例。如果您正苦于以下问题:Python turtle.left方法的具体用法?Python turtle.left怎么用?Python turtle.left使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在模块turtle的用法示例。在下文中一共展示了turtle.left方法的...

  • Socket层实现系列 — send()类发送函数的实现

    主要内容:socket发送函数的系统调用、Socket层实现。 内核版本:3.15.2 我的博客:http://blog.csdn.net/zhangskd 发送流程图 以下是send()、sendto()、sendmsg()和sendmmsg()的发送流程图,这四个函数除了在系统调用层面 上有些差别,在Socket层和TCP层的实现都是相同的。 ...

  • Window系统 Socket编程发送心跳排坑记录(socket.sendUrgentData)

    排坑背景 在工作中两个部门避免不了相互协作进行开发,开发过程中会遇到很多问题,当出现两遍代码都没问题的场景,有时会出现互相推诿的现象,那么我们如何去解决问题成为了关键。 场景描述 在socket编程中除了需要发送业务报文,有时还需要发送心跳进行检测,然后进行重连机制。在工作中我们的场景是A系统调用B系统,B系统返回的报文需要调用C系统进行签名,然后返回给A系统。B系统调用C系统使用的是Socket...

  • AsyncSocket实现 FTP的文件传输

    这一次说一下用AsyncSocket 来实现FTP的文件传输。     其实就是了解一下 AsyncSocket的使用方法,和 FTP中的一些常用命令。     AsyncSocket的下载地址是 https://github.com/robbiehanson/CocoaAsyncSocket     来说一下AsyncSocket的方法。    //链接服务器,port是服务器的

  • socket文件传输

    socket实现文件传输,很拉我就记录下

Global site tag (gtag.js) - Google Analytics