Java open source framework for blockchain
-
the underlying development of blockchain can't be realized with Java
-
as the upper development, you just need to dock according to the given open source interface, and then develop what you need with the language you are good at
-
now there are many blockchain system templates, you can see which development cases
< / OL >
Blockchain projects require high efficiency, so most of the core source code development is using C / C + +. However, if you are doing a blockchain project, unless you need to make a lot of adjustments to the source code, you may not choose to use Java. For general DAPP applications, java development should also be a good choice. For example, in the case of Ethereum blockchain, there is a web3j class library for Java, which is very convenient; bitcoin has bitcoin J class library, which is also easy to use. It still depends on the level of application, what to do, and the situation of the team
share two Java blockchain tutorials:
-
java bitcoin details
-
java Ethereum development
< / OL >
build / transfer / query functions of the mainstream blockchain currencies of digital currency (asset) are adapted / optimized
2. Be responsible for researching the characteristics and functions of bitcoin / Ethereum and other blockchain system wallets, and be familiar with the deployment and development of all node wallets and other related technologies
3. Use open source solutions to develop wallet software functions< Be responsible for R & D progress and project quality, and ensure the integrity of documents
5. Responsible for the development of financial application and basic framework based on blockchain
6. Responsible for other related development and testing of blockchain.
1. Spring framework is a powerful framework to solve many common problems in J2EE development. Spring provides a consistent way to manage business objects and encourages the injection of a good habit of programming interfaces rather than classes. Spring is based on the inversion of control container using JavaBean properties. However, this is only part of the picture: spring is unique in using the IOC container as a complete solution that focuses on all layers of architecture< Webwork [Java open source web development framework]
webwork is a pull-out MVC pattern J2EE Web framework developed by OpenSymphony and committed to component-based and code reuse< Struts [Java open source web development framework]
struts is a MVC framework based on Sun J2EE platform, which is mainly implemented by servlet and JSP technology. Because struts can fully meet the needs of application development, it is simple and easy to use, agile and rapid, so it has attracted much attention in the past year. Struts integrates servlets, JSPS, custom tags and message resources into a unified framework
4. Hibernate is an open source object relational mapping framework, which encapsulates JDBC with very lightweight objects, Java programmers can use object programming thinking to manipulate the database at will. Hibernate can be used in any situation where JDBC is used
5. Quartz is another open source project of OpenSymphony in the field of job scheling, which can be combined with J2EE and J2SE applications or used alone. Quartz can be used to create a simple or complex daily program table for running ten, hundreds, or even tens of thousands of jobs
6. Velocity is a Java based template engine. It allows anyone to simply use the template language to refer to objects defined by java code. When velocity is applied to web development, interface designers and Java developers can simultaneously develop a web site following MVC architecture. In other words, page designers can only focus on the display effect of the page, while Java developers can focus on business logic coding. Velocity separates java code from web pages, which provides convenience for long-term maintenance of Web sites, and also provides us with an alternative solution in addition to JSP and PHP
7. Ibatis [Java open source persistence layer framework]
using the ORM mechanism provided by ibatis, business logic implementers are faced with pure Java objects, which is basically consistent with the implementation of ORM through hibernate. For specific data operations, hibernate will automatically generate SQL statements, Ibatis requires developers to write specific SQL statements. Compared with hibernate and other "fully automatic" ORM mechanisms, ibatis provides more free space for system design with the compromise of SQL development workload and database portability. As a useful supplement to the implementation of "fully automatic" ORM, the emergence of ibatis is of special significance.
MVC framework: struts, spring MVC
core framework: Spring
ORM framework: Hibernate, spring JDBC, mybatis.
*. Do *. Do
create a table in the database to save the moles selected by each user. In this table, the user ID of the mole (menuitem2...) selected by the user is saved; Then, every time a user logs in, he looks up the table according to the user ID to find the mole that the user selected last time. Then, he finds the access path and other information of these moles from XML, and generates the access links of these moles on the page,
Simple, dynamic, lightweight and powerful AOP framework based on Java. It is powerful and easy to integrate AOP into new or existing projects< Main features of aspectwerkz:
1. Bytecode modification at run time and load time: you can easily modify any (old) application or external class library except rt.jar at run time or compile time
2. Support join point model
3. Support annotation: match Javadoc and jsr-175, Support user-defined annotation
4. Support deploying multiple aspect definition files to deployed applications (WEB-INF / AOP. XML, meta-inf / AOP. XML)
5. Introction / inner type declaration (also called mixin), That is, it has the ability to add interfaces and implement them into existing classes
6. Annotation definition: defines the runtime annotation used by aspect (prepared for jsr-175)
7. XML definition: defines the XML used by aspect; XML can be used to refine, rewrite and parse annotation definition
8. Plug in aspect manager can work with IOC framework (such as spring or PicoContainer)
9. Four different deployment models (scopes) of advice and introction: perjvm (single mode), perclass, perinstance and perthread
10. Advice and introction can be deployed dynamically Anti deployment or re deployment
11. High performance, JIT compilation
12. Use fine graded mode language to select join points
13. All advice can work with all join points and various mixed types of pointcuts
14. Offline transformation (can be used as post processor)
15. Aspect, advice and introction use POJO encoding
16. Target class can be regular POJO, That is, no interface is needed
17. It supports passing parameters to advice and defining reusable advice stack through definition
18. Metadata is added to class
19. Simple usage and configuration
aspectwerkz's assistant development plug-in under eclipse →
JBoss AOP
JBoss 4.0 brings an AOP framework. This framework is tightly integrated with JBoss application server, but you can also run it in your application alone
more JBoss AOP information
Nanning
a simple but open source AOP framework for Java. The name, spelled in Chinese Pinyin, is Nanning in Guangxi
more Nanning information
JAC
JAC (Java aspect components) is an application server. It provides Java 2 platform, enterprise development environment (J2EE) for java development, and Web-based distributed applications with another choice of open resources (released under GNU sub normal public license). The first mock exam is JAC, which includes UML (Unified Modeling Language) IDE. The UML IDE molarized the application of business logic and automatically generated and compiled pure commercial logic Java class. These classes, executed within the JAC container, can seamlessly benefit from a set of technical and / or commercial crosscutting concerns, such as data persistence, authentication, profile management, access rights detection, demonstration, and load balancing. The JAC based on AOP (aspect oriented programming) separates these concerns from the core business logic of the application
more JAC information
dynamic aspects
dynamic aspects enables you to use aspect oriented programming written in Java, which uses & quot; introced in sun JDK 1.5; instrumentation" And & quot; agent", Aspects can be installed and used in the run time according to the relationship between the software moles
more dynamic aspects information
dynaop
the dynaop framework uses a runtime based programming mechanism to insert AOP code into an object instead of returning an object with characteristic code. AOP will be a new field of object-oriented design (OO)
more dynaop information
Caesar
Caesar is a new AOP language compatible with Java. All Java programs can use Caesar
more Caesar information
prose
prose is a weaving tool that allows inserting or extracting aspects at runtime. Prose aspects are regular Java objects that can be sent to or received from computers on the network. Signatures can be used to guarantee their integrity. Once an aspect is inserted into the JVM, the occurrence of any event will affect the execution result of the corresponding aspect advice. If an aspect is withdrawn from the JVM, the aspect code will be discarded and the corresponding interception will not occur again. Prose aspects are regular Java objects that can be sent to or received from computers on the network. Signatures can be used to guarantee their integrity. Once an aspect is inserted into the JVM, the occurrence of any event will affect the execution result of the corresponding aspect advice. If an aspect is withdrawn from the JVM, the aspect code will be discarded and the corresponding interception will not occur again. The following figure shows the architecture of Prose:
more prose information
fastaop
fastaop is a high-performance AOP framework. The framework was initially developed to support performance analysis and monitoring of large J2EE applications. It takes almost no running time. Fastaop has been successfully tested on WebSphere and JBoss application servers
more fastaop information
Plastic
plastic is an AOP toolkit built on ASM 3.3. It supports basic loading and instantiation of classes. Introce new attributes. You can access private properties and methods without using reflection. Override property access. Injection properties. Method advice (execute some logic after / before calling the present method)& lt; DIV class=date> Time: May 25, 2011 15:25:03 & lt/ DIV>
more plastic information
spring is a powerful framework to solve many common problems in J2EE development. Spring provides a consistent way to manage business objects and encourages the injection of a good habit of programming interfaces rather than classes. Spring is based on the inversion of control container using JavaBean properties. However, this is only part of the picture: spring is unique in using the IOC container as a complete solution that focuses on all layers of architecture. Spring provides a unique data access abstraction, including a simple and efficient JDBC framework, which greatly improves efficiency and reces possible errors. Spring's data access architecture also integrates hibernate and other O / R mapping solutions. Spring also provides a unique transaction management abstraction, which can provide a consistent programming model in various underlying transaction management technologies, such as JTA or JDBC transactions. Spring provides an AOP framework written in the standard Java language, which provides POJOs with declarative transaction management and other enterprise transactions - if you need to - and implements your own aspects. This framework is powerful enough to enable applications to get rid of the complexity of EJB and enjoy the key services related to traditional EJB. Spring also provides a powerful and flexible MVC web framework that can be integrated with IOC container
webwork
webwork is a pull-out MVC pattern J2EE Web framework developed by OpenSymphony and committed to component-based and code reuse. The latest version of webwork is 2.1. The predecessor of webwork 2. X is webwork developed by Rickard Oberg, but now webwork has been divided into xwork1 and WebWork2 projects. Xwork is simple, flexible and powerful. It is a standard command mode implementation, and completely separated from the web layer. Xwork provides many core functions: front-end interceptor, runtime form attribute verification, type conversion, powerful expression language (ognl – the object graph notation language), IOC (inversion of control) container, etc. WebWork2 is built on xwork to process HTTP responses and requests. WebWork2 uses servlet dispatcher to change HTTP request into action (business layer action class), session (session) application (application) scope mapping, and request parameter mapping. WebWork2 supports multi view representation. The view part can use JSP, velocity, FreeMarker, Jasper reports, XML, etc. Ajax support is added to webwork2.2, which is based on DWR and dojo.
struts is a MVC framework based on Sun J2EE platform, which is mainly implemented by servlet and JSP technology. Because struts can fully meet the needs of application development, it is simple and easy to use, agile and rapid, so it has attracted much attention in the past year. Struts integrates servlets, JSPS, custom tags and message resources into a unified framework. When developers use it to develop, they no longer need to code themselves to implement a full set of MVC patterns, which greatly saves time. Therefore, struts is a very correct application framework
hibernate
hibernate is an open source object relational mapping framework, which encapsulates JDBC with very lightweight objects, so that Java programmers can manipulate the database with object programming thinking at will. Hibernate can be used in any situation where JDBC is used, not only in Java client program, but also in servlet / JSP Web application. The most revolutionary thing is that hibernate can replace CMP in the J2EE architecture of EJB application to complete the task of data persistence. Hibernate development tools based on Eclipse platform:
the role of the framework is to encapsulate a common and commonly used technology,
to help you deal with some basic things, so that you don't have to write those tedious things
take the struts you want to learn as an example: it is also written in Java in essence, which is no different from the class we write ourselves. We can also realize what he implements ourselves
for example, we use request. Getparameter() to receive data from the client, but if there are many parameters, we have to write many, which is very troublesome. Struts it helps us to achieve, do not need us to write, directly write a property, you can get. In fact, the essence is to use request. Getparameter()
so you don't care what frame is any more, you'll know when you touch it. You use it as a tool, and that's the framework
foreground framework: jQuery
MVC framework: struts, spring MVC
core framework: Spring
ORM framework: Hibernate, spring JDBC, mybatis.