Android and Java engineers use WEB3J for blockchain development tutorials

Source: Internet
Author: User
How to use web3j to increase Ethereum blockchain support for Java apps or Android apps, this tutorial covers the core concepts in Ethereum, such as account creation, wallet creation, transaction transfer, trading and status, smart contract development and interaction, filters and events, etc. It also explains how to use the API development interface provided by WEB3J to interact with Ethereum and is the choice for Java and Android (Android) engineers to learn about Ethereum application development (DAPP). Aether Square Overview Ethereum is a much-watched blockchain, it is based on cryptography and peer communication technology to build a de-centralized platform, all the transactions are stored in each node synchronously, through the block one-way cascade into a chain, Ethereum effective guarantee the transaction is not tamper-proof:! [Chain] (http://xc.hubwiz.com/class/5b2b6e82c02e6b6a59171de2/img/sketch_blockchain.png) * * Smart Contract Platform * * Ethereum is the first to implement a virtual machine blockchain, This provides a good support environment for the operation of smart contracts-smart contract. For this reason, Ethereum is known as the Blockchain 2.0, to differentiate it from the Blockchain 1.0, which is the core feature of the digital crypto currency represented by Bitcoin. Smart contracts can be understood as contractual agreements between machines, and automatically execute agreed logic when certain conditions are met, such as in the insurance claims process, where the compensation is automatically released to the Chuxian person if the claim conditions are met, and the process can be implemented using smart contracts. There are several languages that can develop ethereum smart contracts, but the most common is the solidity language similar to JavaScript. This course will use solidity to explain the development of smart contracts. # # # JSON RPC and WEB3J if we want to construct a de-centralized application (DAPP), in addition to the development of smart contracts, it is often necessary to use other development languages to provide users with the user interface for manipulating smart contracts, such as developing a Web page, a mobile app, or a desktop application. All of this code needs to interact with Ethereum. Ethereum Specifies the JSON RPC API application development interface that each node needs to implement, which is transport agnostic, and the application can operate the Ethereum node using the interface protocol through a variety of communication mechanisms such as HTTP, WebSocket, or IPC:! [WEB3J Network] (http://xc.hubwiz.com/class/5b2b6e82c02e6b6a59171de2/img/web3j_network.png) Theoretically you can use any language based on the JSON RPC interface to develop an EthereumDe-centralized applications, but to improve development efficiency, a better approach is to use a language-specific JSON RPC wrapper library that encapsulates the protocol details of the JSON RPC and helps developers focus on the implementation of the business logic. WEB3J is a lightweight Java development library for the integration of Ethereum functionality, which is the Java version of the Ethereum JSON RPC Interface protocol wrapper implementation, and if you need to access Ethereum for your Java application or Android app, use WEB3J. # # # WEB3J System Overview WEB3J's functionality is organized in different packages, showing the dependencies between the ' org.web3j ' main packages:! [WEB3J Packages] (http://xc.hubwiz.com/class/5b2b6e82c02e6b6a59171de2/img/web3j-packages.png) The encapsulation of the **core**:json RPC protocol is mainly by the package ' Org.web3j.core ' implementation, it relies on the ' Org.web3j.crypto ' package provides the key associated with the signature function, and the ' Org.web3j.abi ' package provides java/solidity type mapping support. **console**: The ' Org.web3j.console ' package implements a command-line program that can be run separately web3j, which we will use to generate the Java wrapper class for the solidity contract, where ' Org.web3j.codegen ' The package implements code generation from the ABI to the Java wrapper class. * * Node Related * *: ' Org.web3j.infura ' package encapsulates HTTP Access service interface to Infura public node, ' Org.web3j.geth ' and ' org.web3j.parity ' The management interfaces of the two commonly used Ethereum node software are encapsulated separately. The purpose of this course is to help Java engineers quickly master the skills of using WEB3J to develop ethereum applications, so the course content is primarily based on the WEB3J development interface, along with some of the basic concepts of ethereum, such as the development of accounts, transactions, and smart contracts. # # # Course Content Overview 1.HELLO,WEB3J will use the development of a simple Java application to explain the simplest process of using WEB3J for Ethereum application development, through which you can introduce Ethereum support in your Java application. 2. Account management will detail the account management interface provided by WEB3J. If you are interested in developing a wallet application (centralized/de-centralized), this section will be of great help. WEB3J Create an account, create a wallet, transfer money, especially token transfers and other rich functions for trading. 3. Status andThe transaction mainly explains the trading interface provided by WEB3J, and also introduces some important concepts, such as status, bare trade, gas, etc. This section will help you clarify most of the issues that Java applications interact with Ethereum. 4. The smart contract will explain how to use WEB3J to operate solitiy smart contracts through a complete process of development, compilation, code generation, deployment and interaction of a voting contract. 5. Filters and events are mainly about the notification mechanism of Ethereum and the WEB3J's responsive encapsulation interface. This tutorial provides the appropriate preset code for each knowledge point, which you can view in the ' ~/repo ' directory of the online lab environment. For more details click here to start learning: **[web3j Tutorial] (http://xc.hubwiz.com/course/5b2b6e82c02e6b6a59171de2?affid=studygolang622) * *, The main introduction to Java and Android apps is the blockchain development via WEB3J, which is ideal for Java and Android (Android) programmers. Translated from: http://blog.hubwiz.com/2018/06/22/web3j-course-recommend/152 Times click  
Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.