开源进展 | WeBASE v3.1.0发布,新增多个实用特性

WeBASE是一个友好、功能丰富的区块链中间件平台,通过一系列通用功能组件和实用工具,助力社区开发者更快捷地与区块链进行交互。

目前WeBASE已更新迭代至v3.1.0版本,本次更新中,WeBASE带来了最新的合约Java脚手架导出功能,完成达梦数据库适配,新增WeBASE CRUD预编译接口代码,并在技术文档中归类呈现了数十篇由社区开发者贡献的区块链教程,以便用户可以按需查阅。

一起来看看WeBASE v3.1.0的新功能吧,欢迎大家star并积极体验。

  Java项目导出更友好

本次更新中,我们引入了微众区块链开源的WeBankBlockchain SmartDev-Scaffold合约中最新的v3.3.0版本Java脚手架组件,适配了合约IDE 中Java项目导出功能。

WeBASE v3.1.0导出的Java项目会自动配置节点的IP端口、SDK证书、私钥,使用方法与WeBASE v1.5.5版本所导出的Java项目使用方法一致。同时,基于WeBankBlockchain SmartDev-Scaffold组件,WeBASE优化了导出Java项目的代码逻辑,代码更简洁,可读性更好,更方便开源社区的开发者基于SmartDev-Scaffold或WeBASE的导出接口进行二次开发。

与此同时,WeBASE v3.1.0支持使用 Solidity v0.8.11版本的合约进行Java项目导出,同时也优化了对struct等复杂参数的适配。

0e6756f4b9a6bc2d8e2e04441f8a13b3.png

图1-导出Java项目

  适配达梦数据库

达梦数据库是具有完全自主知识产权的高性能数据库管理系统。来自数字广东网络建设有限公司的开发者梁锦辉(github ID:JHL)基于WeBASE v3.0.2 tag的代码进行二次开发,将私钥托管与签名服务WeBASE-Sign和节点管理服务WeBASE-Node-Manager适配了达梦数据库,并将代码贡献至WeBASE-Sign和WeBASE-Node-Manager的lab-xc分支。

值得关注的是,适配达梦数据库的代码可以通过修改数据库的JDBC驱动和修改Mybatis的配置,实现同一套代码在MySql和达梦数据库之间进行切换使用。

梁锦辉将如何改造WeBASE代码适配达梦数据库的经验整理为技术教程,帮助社区开发者理解其改造思路,方便使用WeBASE其他版本的社区开发者们可以参考其教程对WeBASE进行二次开发。

59edf4650aa0a0ad1ae7570a97be786e.png

图2-达梦数据库适配教程

适配达梦数据库的WeBASE-Sign代码仓库:

https://github.com/WeBankBlockchain/WeBASE-Sign/tree/lab-xc

适配达梦数据库的WeBASE-Node-Manager代码仓库:

https://github.com/WeBankBlockchain/WeBASE-Node-Manager/tree/lab-xc

《使用达梦数据库对WeBASE进行适配》技术教程:https://webasedoc.readthedocs.io/zh_CN/latest/docs/WeBASE-Console-Suit/articles/dameng_db_fit_in.html

  新增WeBASE CRUD预编译接口代码

社区开发者李铁乔(github ID:Litieqiao)基于FISCO BCOS console控制台与WeBASE-Front v1.5.5版本的CRUD预编译合约接口,完成了节点前置服务WeBASE-Front中适配FISCO BCOS v3.x CRUD接口的开发,开发者可以直接调用节点前置的接口来发起CRUD预编译合约的调用。

该部分代码已合入到了WeBASE-Front master-3.0分支中,欢迎社区的伙伴们部署最新的WeBASE-Front v3.1.0进行体验。

开发者在体验时留意一下,此处更新的CRUD接口需要直接通过HTTP接口调用,具体方法为:使用WeBASE-Front的swagger进行调用,url为:/WeBASE-Front/swagger-ui.html#/precntauth_precompiled_controller/descTableUsingPOST

afe56c1d0d5febcd6667d0fb870c89a3.png

图3-节点前置中的CRUD接口列表

  集合数十篇社区贡献的区块链教程

作为备受发者关注的区块链中间件,WeBASE一直秉承开放共享、多元包容的精神链接开源爱好者。在过往社区Task挑战赛中,众多开发者或是踊跃将自身在不同场景应用WeBASE的经验以技术教程形式贡献给社区,或者提交PR修复或优化WeBASE功能特性。本次更新,我们在WeBASE技术文档中新增“WeBASE社区文章”模块,将开发者贡献的数十篇教程归类呈现,以便社区用户可以按需查阅。

我们期待区块链技术爱好者和开源社区的伙伴们,一同参与共建,协力推动WeBASE向更完善、更友好的生态上发展。

d00780bbb0b49cff7e693a87585932a6.png

图4-社区文章一览

“WeBASE技术文档社区文章”模块链接:https://webasedoc.readthedocs.io/zh_CN/latest/docs/WeBASE-Console-Suit/articles/index.html

  优化和修复

  • WeBASE应用管理SDK WeBASE-APP-SDK更新至 v1.5.6版本,同时支持WeBASE v1.x和v3.x版本的应用接入。

  • 修复WeBASE v3.x版本应用管理接入时报错无法通过鉴权的问题, 开发者应用管理接入时需要对应使用webase-app-sdk v1.5.6及以上版本,更多详情可参考最新的WeBASE应用接入管理文档。

  • 修复合约IDE使用solidity v0.6.10-gm时的版本判断为0.6.9版本的问题。

  • 修复合约IDE中的地址参数长度判断。

  即刻使用

上述优化及功能所涉及的最新代码和技术文档已同步更新,欢迎体验和star支持。如需咨询技术问题,欢迎本公众号对话框回复【小助手】进技术交流群。

WeBASE代码仓库:https://github.com/WeBankBlockchain/WeBASE/tree/master-3.0

WeBASE代码仓库国内镜像:https://gitee.com/WeBank/WeBASE/tree/master-3.0

WeBASE 技术文档:

https://webasedoc.readthedocs.io/zh_CN/lab

WeBASE 技术文档国内镜像:

https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/WeBASE/doc/lab/index.html

首次体验WeBASE,可参考一键部署文档:https://webasedoc.readthedocs.io/zh_CN/lab/docs/WeBASE/install.html

向我们报告问题,欢迎提交issue:

https://github.com/WeBankBlockchain/WeBASE/issues

8dec71096dbfc844de85ac6c69f70ee8.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/62029.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

数字电路的重要概念——静态功耗和动态功耗

静态功耗和动态功耗: CMOS电路功耗是由静态功耗和动态功耗组成的,动态功耗远大于静态功耗 1:静态功耗: 我们从一个简单的反相器角度来理解和说明静态功耗的概念,众所周知,反相器是由PMOS和NMOS互补组成的…

当服务器域名出现解析错误的问题该怎么办?

​  域名解析是互联网用户接收他们正在寻找的域的地址的过程。更准确地说,域名解析是人们在浏览器中输入时使用的域名与网站IP地址之间的转换过程。您需要站点的 IP 地址才能知道它所在的位置并加载它。但,在这个过程中,可能会出现多种因素…

关于游戏的笔记

关于搭建秦时明月2一键端,并且开启秘境神秘商人东海寻仙幻化 1.该游戏下主要的目录 gm端 服务框架 服务端 2.修改对应的文件 C:\qs\Q2Server\server\conf_common\ManagerAddress.xmlC:\qs\Q2Server\server\conf_manager\GateServer.xml修改ip 3.启动gm startup…

HTML 是什么?它的全称是什么?

聚沙成塔每天进步一点点 专栏简介HTML是什么?HTML的全称是什么?写在最后 专栏简介 前端入门之旅:探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅!这个专栏是为那些对We…

【项目管理】PMP备考宝典-第一章《引论》

文章目录 第一节:项目管理的意义1.什么是项目2.项目管理的前世今生3.项目管理与战略的关系4.组织管理模式的转型升级5.推动项目管理普及的力量 第二节:项目管理的逻辑1.项目管理目标的演变2.项目与运营的关系3."人-过程-环境"三个领域的关系4.…

Sencha Ext.NET Crack 快速应用程序的正确工具集

Sencha Ext.NET Crack 快速应用程序的正确工具集 Sencha Ext.NET是一个高级的ASP.NET核心组件框架,它包含了强大的跨浏览器Sencha Ext JS库。通过140多个预构建和专业测试的UI组件实现企业级性能和生产效率。Sencha Ext.NET使用尖端的Web技术创建功能强大的Web应用程…

反弹shell的N种姿势

预备知识1. 关于反弹shell 就是控制端监听在某TCP/UDP端口,被控端发起请求到该端口,并将其命令行的输入输出转到控制端。reverse shell与telnet,ssh等标准shell对应,本质上是网络概念的客户端与服务端的角色反转。2. 反弹shel…

JavaScript学习(3)

Web API 是开发人员的梦想。 它可以扩展浏览器的功能它可以极大简化复杂的功能它可以为复杂的代码提供简单的语法 什么是 Web API? API 指的是应用程序编程接口(Application Programming Interface)。 Web API 是 Web 的应用程序编程接口…

YOLOv5基础知识入门(2)— YOLOv5核心基础知识讲解

前言:Hello大家好,我是小哥谈。YOLOV4出现之后不久,YOLOv5横空出世。YOLOv5在YOLOv4算法的基础上做了进一步的改进,使检测性能得到更进一步的提升。YOLOv5算法作为目前工业界使用的最普遍的检测算法,存在着很多可以学习…

西瓜书读书笔记整理(五)—— 第四章 决策树

第四章 决策树 4.1 基本流程4.1.1 什么是决策树算法4.1.2 决策树学习的目的4.1.3 决策树学习基本过程4.1.4 决策树学习基本算法4.1.5 递归结束的三种情况 4.2 划分选择4.2.1 信息增益(information gain)—— ID3 决策树学习算法属性划分准则4.2.2 信息增…

JUC之线程中断与LockSupport

什么是中断 首先一个线程不应该由其他线程来强制中断或停止,而是应该由线程自己自行停止。其次在Java中没有办法立即停止一条线程,然而停止线程却显得尤为重要,如取消一个耗时操作。因此,Java提供了一种用于停止线程的机制——中…

力扣 -- 467. 环绕字符串中唯一的子字符串

一、题目 二、解题步骤 下面是用动态规划的思想解决这道题的过程&#xff0c;相信各位小伙伴都能看懂并且掌握这道经典的动规题目滴。 三、参考代码 class Solution { public:int findSubstringInWraproundString(string s) {int ns.size();vector<int> dp(n,1);int re…

Godot 4 源码分析 - 增加格式化字符串功能

Godot 4的主要字符串类型为String&#xff0c;已经设计得比较完善了&#xff0c;但有一个问题&#xff0c;格式化这块没怎么考虑。 String中有一个format函数&#xff0c;但这个函数只有两个参数&#xff0c;这咋用&#xff1f; String String::format(const Variant &va…

vue 新学习 06 js的prototype ,export暴露,vue组件,一个重要的内置关系

部分内容参考的这篇文章 原文链接&#xff1a;https://blog.csdn.net/harry5508/article/details/84025146 写的很好。 01 在js中&#xff1a; 原型链 注意&#xff1a;构造函数.prototype实例化对象.__proto__&#xff0c;都是指向函数的原型。 export&#xff1a; -export用…

Popover气泡卡片(antd-design组件库)简单使用

1.Popover气泡卡片 点击/鼠标移入元素&#xff0c;弹出气泡式的卡片浮层。 2.何时使用 当目标元素有进一步的描述和相关操作时&#xff0c;可以收纳到卡片中&#xff0c;根据用户的操作行为进行展现。 和 Tooltip 的区别是&#xff0c;用户可以对浮层上的元素进行操作&#xff…

项目实战 — 消息队列(5){统一硬盘操作}

前面已经使用数据库管理了交换机、绑定、队列&#xff0c;然后又使用了数据文件管理了消息。 那么&#xff0c;这里就创建一个类&#xff0c;讲之前的两个部分整合起来&#xff0c;对上层提供统一的一套接口&#xff0c;表示硬盘上存储的所有的类的信息。 /* * 用这个类来管理…

【Linux】Linux下git的使用

文章目录 一、什么是git二、git发展史三、Gitee仓库的创建1.新建仓库2.复制仓库链接3.在命令行克隆仓库3.1仓库里的.gitignore是什么3.2仓库里的git是什么 三、git的基本使用1.将克隆仓库的新增文件添加到暂存区(本地仓库)2.将暂存区的文件添加到.git仓库中3.将.git仓库中的变化…

Flink正常消费一段时间后,大量反压,看着像卡住了,但又没有报错。

文章目录 前言一、原因分析二、解决方案 前言 前面我也有提到&#xff0c;发现flink运行一段时间后&#xff0c;不再继续消费的问题。这个问题困扰了我非常久&#xff0c;一开始也很迷茫。又因为比较忙&#xff0c;所以一直没有时间能够去寻找答案&#xff0c;只是通过每天重启…

如何设计一个自动化测试框架

在进行自动化框架设计之前我们先来看两个问题&#xff0c;什么是自动化框架&#xff0c;设计的时候应该注意什么原则&#xff0c;然后该怎么做&#xff1f;本文会以一个web端的UI自动化测试框架设计为例 Python自动化测试&#xff1a;2023最新合集Python自动化测试开发框架【全…

部署Tomcat和jpress应用

静态页面&#xff1a;静态页面是指在服务器上提前生成好的HTML文件&#xff0c;每次用户请求时直接返回给用户。静态页面的内容是固定的&#xff0c;不会根据用户的请求或其他条件进行变化。静态页面的优点是加载速度快&#xff0c;对服务器资源要求较低&#xff0c;但缺点是无…