java 调用区块链 发布和调用智能合约

java连接区块链 很简单 ,调用智能合约要麻烦一些.

先说连接 区块链查询数据.

1 maven 项目导入 web3j 的依赖.

	<dependency>
		    <groupId>org.web3j</groupId>
		    <artifactId>core</artifactId>
		    <version>4.5.0</version>
		</dependency>

  

2 需要 链上开启 rpc 端口 . 不开启 本地可以通过 指定  geth.ipc 连接.

package com.cxygg.testweb3j;

import org.web3j.protocol.Web3j;
import org.web3j.protocol.core.DefaultBlockParameterName;
import org.web3j.protocol.core.methods.response.EthGetBalance;
import org.web3j.protocol.http.HttpService;
import org.web3j.utils.Convert;

public class Web3jDemo2 {

	private static final String RPC_URL = "http://192.168.1.199:9001";
	private static final Web3j web3j = Web3j.build(new HttpService(RPC_URL));

	public static void main(String[] args) throws Exception {

		getAge();

	}

	public static void getAge() throws Exception {
		// 这里要填写真实的钱包地址
		EthGetBalance ethGetBalance = web3j
				.ethGetBalance("0xbcbbd4e9bbf41a149652da55c42a4b28b6e39599", DefaultBlockParameterName.LATEST).send();

		if (ethGetBalance != null) {
			System.out.println("余额:" + Convert.fromWei(ethGetBalance.getBalance().toString(), Convert.Unit.ETHER));
		}

	}

}

  

发布和调用智能合约部分

调用智能合约通过 abi 文件  和  合约二进制文件生成 java的 代理类,然后调用. 下次在写.

原文地址:https://www.cnblogs.com/cxygg/p/11507354.html

时间: 2024-10-01 22:56:21

java 调用区块链 发布和调用智能合约的相关文章

Java开发区块链的三大sdk库

如果你想将区块链合并到一个Java项目中,现在我们来看看就是这个细分领域中三个最大的OSS玩家. 好的伙计们,我们都听说过比特币,以太坊或其他加密货币,其中有一些时髦的名字围绕着我们常见的新闻,但我们作为Java开发人员知道如何轻松地与这些区块链技术进行交互吗?以下是可用于利用区块链趋势的前三大Java项目.该列表基于GitHub存储库星级排序.非常感谢评论和意见. BitcoinJ 这个名字很具描述性,你不觉得吗?如果你想知道如何创建比特币钱包并管理节点之间的交易,那么你应该尝试使用Bitco

java中使用axis发布和调用webService

工作中需要调用webService服务,这里记录一下如何在java中发布和调用webService. 需要的jar包: 发布webService: package com.xzh.webservice; import javax.jws.WebMethod; import javax.jws.WebService; import javax.xml.ws.Endpoint; @WebService public class MyWebService { public String hello(S

Java 实现区块链中的区块,BLOCK的实现

1.区块是区块链的基础单元 区块链由若干个区块组成,区块是区块链的基础单元 2.区块链中区块的基本属性 区块6个属性的说明-Index 区块的索引值,区块链中的唯一键区块6个属性的说明-Timestamp 区块的时间戳,用于区分区块的产生时间区块6个属性的说明-Hash 区块的hash值是整个区块各个内容整体计算出的hash值区块6个属性的说明-Previous Hash 前一个区块的hash值区块6个属性的说明-Data 区块链的数据存储部分,例如比特币是用来存储交易数据区块6个属性的说明-N

区块链及智能合约简介&amp;安全相关介绍-1-区块链概念

rua,明天要讲课,贴一下第一次梳理的内容2333.区块链入门. blockchain 特点 分布式去中心化 无须信任系统 不可篡改和加密安全性 去中心化 没有中心节点 区块链 是一个只能查找和插入,没有管理员的非关系型分布式数据库. 主要作用是存储信息.每个人都可以假设服务器,加入区块链网络,成为节点,每个节点都是平等的,你可以向任何一个节点存储信息,因为他们是同步的. 智能合约 智能合约是区块数据业务逻辑的封装. 可以把智能合约理解成:存储过程+数据库结构. 访问一个智能合约就如同访问存储过

区块链开发中各个层面的核心技术,源中瑞小六发布

区块链技术----网络层:实现记账节点的去中心化核心技术1.P2P网络:P2P网络(对等网络),又称点对点技术,是没有中心服务器.依靠用户×××换信息的互联网体系.与有中心服务器的中央网络系统不同,对等网络的每个用户端既是一个节点,也有服务器的功能.国内的迅雷软件采用的就是P2P技术.P2P网络其具有去中心化与健壮性等特点. 区块链技术----共识层:调配记账节点的任务负载核心技术2.共识机制:共识机制,就是所有记账节点之间如何达成共识,去认定一个记录的有效性,这既是认定的手段,也是防止篡改的手

黑客专家深度分析区块链技术主要用途

区块链的缺陷及其面临的技术挑战,黑客教父郭盛华试图警示大家:该技术还处于非常早期的阶段,企业应做足信息安全措施,以防泄露信息. 区块链技术可以集成到多个领域.目前,区块链的主要用途是作为加密货币的分布式账本,最值得注意的是比特币.虽然在印度,中国,美国,瑞典,新加坡,南非和英国等国家的几个中央银行正在研究发行中央银行颁布的加密货币(CICC),但迄今为止没有这样做. 一般潜力 区块链技术在长期转变商业运营模式方面具有巨大潜力.区块链分布式分类账技术更像是一种基础技术 - 具有为全球经济和社会系统

2019.2.5 区块链论文翻译

SimBlock: A Blockchain Network Simulator Tokyo Institute of Technology 区块链是一种在多个节点上分布管理账本信息的技术,没有一个集中的系统,引起了越来越多的关注.在实际的区块链上进行实验是困难的,因为需要在广域内进行大量的节点.在本研究中,我们开发了一个用于此类实验的区块链网络模拟器Simblock.与现有的模拟器不同,Simblock可以很容易地改变节点的行为,从而研究节点行为对区块链的影响.我们将一些模拟结果与实际区块链中

2019.2.18 区块链论文翻译

Decentralized Privacy-preserving Timed Execution in Blockchain-based Smart Contract Platforms University of Pittsburgh & University of Pittsburgh 定时事务执行对于由基于区块链的智能合约平台提供支持的各种分散式隐私保护应用程序至关重要.这种保护隐私的智能合约应用程序需要能够安全地将用户的敏感输入从区块链中保存到指定的执行时间,然后自动使输入可用,以便在执

2019.4.14 区块链论文翻译

GDPR-Compliant Personal Data Management: ABlockchain-based SolutionImperial  College  Londo & Liverpool John MooresUniversity通用数据保护法规(GDPR)通过指定管理和处理个人数据的服务提供商(SP)的更高要求和义务,将个人数据控制权交还给所有者.由于监督机关处理的GDPR遵守情况的核查是定期进行的;认证anSP一直坚持GDPR是具有挑战性的.此外,超出数据所有者的能力,可