当前位置: 首页 > news >正文

开源进展 | 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

相关文章:

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

WeBASE是一个友好、功能丰富的区块链中间件平台,通过一系列通用功能组件和实用工具,助力社区开发者更快捷地与区块链进行交互。 目前WeBASE已更新迭代至v3.1.0版本,本次更新中,WeBASE带来了最新的合约Java脚手架导出功能&#xff…...

C++动态加载 插件

动态加载(Dynamic Loading)是指在程序运行时,根据需要动态地加载和链接代码或资源。 动态加载的主要目的是实现程序的灵活性和可扩展性,以及减少内存消耗和启动时间。通过动态加载,程序可以根据运行时的需求加载特定的…...

redis的缓存更新策略

目录 三种缓存更新策略 业务场景: 主动更新的三种实现 操作缓存和数据库时有三个问题 1.删除缓存还是更新缓存? 2.如何保证缓存与数据库的操作的同时成功或失败? 3.先操作缓存还是先操作数据库? 缓存更新策略的最佳实践方案&am…...

Android应用开发(6)TextView进阶用法

Android应用开发学习笔记——目录索引 本章介绍文本视图(TextView)的显示,包括:设置文本内容、设置文本大小、设置文本显示颜色。 一、设置TextView显示内容 Layout XML文件中设置 如:res/layout/activity_main.xm…...

Matlab滤波、频谱分析

Matlab滤波、频谱分析 滤波: 某目标信号是由5、15、30Hz正弦波混合而成的混合信号,现需要设计一个滤波器滤掉5、30Hz两种频率。 分析:显然我们应该设计一个带通滤波器,通带频率落在15Hz附近。 % 滤波 % 某目标信号是由5、15、3…...

车载软件架构 —— 车载软件入侵检测系统

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 没有人关注你。也无需有人关注你。你必须承认自己的价值,你不能站在他人的角度来反对自己。人…...

“深入解析JVM内部机制:理解Java虚拟机的工作原理“

标题:深入解析JVM内部机制:理解Java虚拟机的工作原理 摘要:本文将深入探讨Java虚拟机(JVM)的内部机制,解释其工作原理。我们将讨论JVM的组成部分、类加载过程、运行时数据区域以及垃圾回收机制。此外&…...

FPGA初步学习之串口发送模块【单字节和字符串的发送】

串口相关简介 UART 在发送或接收过程中的一帧数据由4部分组成,起始位、数据位、奇偶校验位和停止位,如图所示。其中,起始位标志着一帧数据的开始,停止位标志着一帧数据的结束,数据位是一帧数据中的有效数据。 通常用…...

Kotlin重点理解安全性

目录 一 Kotlin安全性1.1 可空类型1.2 安全调用运算符1.3 Elvis 运算符1.4 非空断言运算符1.5 安全类型转换1.6 延迟初始化 一 Kotlin安全性 Kotlin 在设计时采用了一系列策略,旨在尽可能地减少空指针异常(NullPointerException)的出现。空指…...

基于Java+SpringBoot+SpringCloud+Vue的智慧养老平台设计与实现(源码+LW+部署文档等)

博主介绍: 大家好,我是一名在Java圈混迹十余年的程序员,精通Java编程语言,同时也熟练掌握微信小程序、Python和Android等技术,能够为大家提供全方位的技术支持和交流。 我擅长在JavaWeb、SSH、SSM、SpringBoot等框架…...

Spring中的全局异常处理

在项目中通常会定义各种异常,比如断言异常、业务异常,甚至调用外部接口报的异常需要转成自己系统中的异常类型,这时就需要将各种异常类型进行统一的处理,返回统一的数据结构。在spring中提供了这样全局统一处理异常的注解Controll…...

【安全测试】Web应用安全之XSS跨站脚本攻击漏洞

目录 前言 XSS概念及分类 反射型XSS(非持久性XSS) 存储型XSS(持久型XSS) 如何测试XSS漏洞 方法一: 方法二: XSS漏洞修复 原则:不相信客户输入的数据 处理建议 资料获取方法 前言 以前都只是在各类文档中见到过XSS,也进…...

LeNet卷积神经网络-笔记

LeNet卷积神经网络-笔记 手写分析LeNet网三卷积运算和两池化加两全连接层计算分析 修正上图中H,W的计算公式为下面格式 基于paddle飞桨框架构建测试代码 #输出结果为: #[validation] accuracy/loss: 0.9530/0.1516 #这里准确率为95.3% #通过运行结果可以看出&am…...

使用XMLHttpRequest实现文件异步下载

1、问题描述 我想通过异步的方式实现下载文化&#xff0c;请求为post请求。一开始我打算用ajax。 $.ajax({type:post,contentType:application/json,url:http://xxx/downloadExcel,data:{data:JSON.stringify(<%oJsonResponse.JSONoutput()%>)},}).success(function(dat…...

Lombok 的安装与使用

文章目录 一、什么是 Lombok1.1 Lombok 的概念1.2 为什么使用 Lombok1.3 Lombok 的相关注解 二、Lombok 的安装2.1 引入依赖2.2 安装插件 三、Lombok 的使用案例四、Lombok 的原理 一、什么是 Lombok 1.1 Lombok 的概念 Lombok&#xff08;“Project Lombok”&#xff09;是一…...

springBean生命周期解析

本文基于Spring5.3.7 参考&#xff1a; kykangyuky Spring中bean的生命周期 阿斌Java之路 SpringBean的生命周期&#xff0c; 杨开振 JavaEE互联网轻量级框架整合开发 黑马程序员 JavaEE企业级应用开发教程 马士兵 Spring源码讲解 一. SpringBean生命周期流程图 二. 示例代码 …...

人工智能轨道交通行业周刊-第54期(2023.7.31-8.6)

本期关键词&#xff1a;BIM智能运维、铁水联运、编组站美容、鸿蒙4.0、LK-99完全悬浮 1 整理涉及公众号名单 1.1 行业类 RT轨道交通人民铁道世界轨道交通资讯网铁路信号技术交流北京铁路轨道交通网上榜铁路视点ITS World轨道交通联盟VSTR铁路与城市轨道交通RailMetro轨道世界…...

Docker Compose 使用方法

目录 前言 安装 Docker Compose Ubuntu 安装与更新 Red Hat 安装与更新 验证是否安装 Docker Compose 创建 docker-compose.yml 文件 创建一个MySQL 与 tomcat 示例 使用Docker Compose启动服务 前言 Docker Compose 是一个工具&#xff0c;旨在帮助定义和 共享多容器…...

HTML 初

前言 HTML的基本骨架 HTML基本骨架是构建网页的最基本的结果。 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0">…...

IPv6地址分类,EUI-64转换规则

1、可聚合的单全球单播地址Global Unique Address&#xff1a; Aggregate global unicast address&#xff0c;前3位是001&#xff0c;即2000::/3&#xff0c;目前IANA已经将一部分可聚合全球单播进行了专门使用&#xff0c;如&#xff1a;2001::/16用于IPV6互联网&#xff0c;…...

日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻

在如今就业市场竞争日益激烈的背景下&#xff0c;越来越多的求职者将目光投向了日本及中日双语岗位。但是&#xff0c;一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧&#xff1f;面对生疏的日语交流环境&#xff0c;即便提前恶补了…...

反向工程与模型迁移:打造未来商品详情API的可持续创新体系

在电商行业蓬勃发展的当下&#xff0c;商品详情API作为连接电商平台与开发者、商家及用户的关键纽带&#xff0c;其重要性日益凸显。传统商品详情API主要聚焦于商品基本信息&#xff08;如名称、价格、库存等&#xff09;的获取与展示&#xff0c;已难以满足市场对个性化、智能…...

【JavaEE】-- HTTP

1. HTTP是什么&#xff1f; HTTP&#xff08;全称为"超文本传输协议"&#xff09;是一种应用非常广泛的应用层协议&#xff0c;HTTP是基于TCP协议的一种应用层协议。 应用层协议&#xff1a;是计算机网络协议栈中最高层的协议&#xff0c;它定义了运行在不同主机上…...

Java多线程实现之Callable接口深度解析

Java多线程实现之Callable接口深度解析 一、Callable接口概述1.1 接口定义1.2 与Runnable接口的对比1.3 Future接口与FutureTask类 二、Callable接口的基本使用方法2.1 传统方式实现Callable接口2.2 使用Lambda表达式简化Callable实现2.3 使用FutureTask类执行Callable任务 三、…...

DIY|Mac 搭建 ESP-IDF 开发环境及编译小智 AI

前一阵子在百度 AI 开发者大会上&#xff0c;看到基于小智 AI DIY 玩具的演示&#xff0c;感觉有点意思&#xff0c;想着自己也来试试。 如果只是想烧录现成的固件&#xff0c;乐鑫官方除了提供了 Windows 版本的 Flash 下载工具 之外&#xff0c;还提供了基于网页版的 ESP LA…...

UR 协作机器人「三剑客」:精密轻量担当(UR7e)、全能协作主力(UR12e)、重型任务专家(UR15)

UR协作机器人正以其卓越性能在现代制造业自动化中扮演重要角色。UR7e、UR12e和UR15通过创新技术和精准设计满足了不同行业的多样化需求。其中&#xff0c;UR15以其速度、精度及人工智能准备能力成为自动化领域的重要突破。UR7e和UR12e则在负载规格和市场定位上不断优化&#xf…...

iview框架主题色的应用

1.下载 less要使用3.0.0以下的版本 npm install less2.7.3 npm install less-loader4.0.52./src/config/theme.js文件 module.exports {yellow: {theme-color: #FDCE04},blue: {theme-color: #547CE7} }在sass中使用theme配置的颜色主题&#xff0c;无需引入&#xff0c;直接可…...

【 java 虚拟机知识 第一篇 】

目录 1.内存模型 1.1.JVM内存模型的介绍 1.2.堆和栈的区别 1.3.栈的存储细节 1.4.堆的部分 1.5.程序计数器的作用 1.6.方法区的内容 1.7.字符串池 1.8.引用类型 1.9.内存泄漏与内存溢出 1.10.会出现内存溢出的结构 1.内存模型 1.1.JVM内存模型的介绍 内存模型主要分…...

多元隐函数 偏导公式

我们来推导隐函数 z z ( x , y ) z z(x, y) zz(x,y) 的偏导公式&#xff0c;给定一个隐函数关系&#xff1a; F ( x , y , z ( x , y ) ) 0 F(x, y, z(x, y)) 0 F(x,y,z(x,y))0 &#x1f9e0; 目标&#xff1a; 求 ∂ z ∂ x \frac{\partial z}{\partial x} ∂x∂z​、 …...

GAN模式奔溃的探讨论文综述(一)

简介 简介:今天带来一篇关于GAN的,对于模式奔溃的一个探讨的一个问题,帮助大家更好的解决训练中遇到的一个难题。 论文题目:An in-depth review and analysis of mode collapse in GAN 期刊:Machine Learning 链接:...