web3j is a lightweight, reactive, type-safe Java and Android library for working with Smart Contracts and integrating with clients (nodes) on the Ethereum network. It allows you to work with the Ethereum blockchain, without the additional overhead of having to write your own integration code for the platform.

Features

Create, deploy, transact with and call smart contracts from native Java code

Create and manage Ethereum wallet files.

Transfer Ether, manage wallets, generate wrappers from the command line

Simple, fully asynchronous API supporting Futures or RxJava’s Observables