What are the common Java development frameworks?

Many Java programming beginners do not know the necessary basic knowledge to learn when they are new to Java language programs. This article summarizes several common development frameworks for learning the Java programming language from zero basis. I hope it will be helpful to Java novices who are just getting started.

Common frameworks:
integrated development tools (IDE): Eclipse, MyEclipse, Spring Tool Suite (STS), Intellij IDEA, NetBeans, JBuilder, JCreator

JAVA server: tomcat, jboss, websphere, weblogic, resin, jetty, apusic, apache

Load balancing: nginx, lvs

Web layer framework: Spring MVC, Struts2, Struts1, Google Web Toolkit (GWT), JQWEB

Service layer framework: Spring, EJB

Persistence layer framework: Hibernate, MyBatis, JPA, TopLink

Database: Oracle, MySql, MSSQL, Redis

Project construction: maven, ant

Continuous Integration: Jenkins

Version control: SVN, CVS, VSS, GIT

Private server: Nexus

Message components: IBM MQ, RabbitMQ, ActiveMQ, RocketMq

Logging framework: Commons Logging, log4j, slf4j, IOC

Cache framework: memcache, redis, ehcache, jboss cache

RPC framework: Hessian, Dubbo

Rule Engine: Drools

Workflow: Activiti

Batch processing: Spring Batch

General query framework: Query DSL

JAVA security framework: shiro, Spring Security

Static code inspection tools: FindBugs, PMD

Linux operating system: CentOS, Ubuntu, SUSE Linux,

Common tools: PLSQL Developer (Oracle), Navicat (MySql), FileZilla (FTP), Xshell (SSH), putty (SSH), SecureCRT (SSH), jd-gui (decompilation)

Although MicroProfile is not necessarily a framework, it is a specification. These projects are driven and used as the basis for previous projects. The important point is that because of the specification, the implementation can be changed directly, and we have multiple suppliers that are cooperating with implementations such as Wildfly, Payara, TomEE, etc.

Spring MVC
Spring MVC is a follow-up product of Spring FrameWork and has been integrated into Spring Web Flow. The Spring framework provides a full-featured MVC module for building web applications. Spring can be plugged into the MVC architecture, so when using Spring for web development, you can Choose to use Spring's Spring MVC framework or integrate other MVC development frameworks, such as Struts1, Struts2, etc.

Struts2 takes the excellent design ideas of WebWork as the core, absorbs some of the advantages of the Struts framework, and provides a more neat MVC design pattern implementation of the Web application framework.

Hibernate is an ORM framework that establishes a certain mapping between Java objects and relational databases to achieve direct access to Java objects (POJO). ORM framework is another kind of thinking framework different from MVC, and its scope of application is also completely different from MVC.

Using JDBC connections to read and write databases, the most common of us is to open database connections, use complex SQL statements to read and write, and close connections. The obtained data needs to be converted or encapsulated before being transmitted. This is a very cumbersome process. At this time, the Hibernate framework appeared. It requires you to create a series of persistent classes. The properties of each class can be simply regarded as one-to-one correspondence with the properties of a database table. Of course, various tables of relational databases can also be realized. Correspondence of file association. When we need related operations, we no longer need to pay attention to database tables. We don't need to query the database line by line, only the persistent class can complete the addition, deletion, modification, and query function. Make our software development truly object-oriented, rather than chaotic code oriented.

MyBatis was originally an open source project iBatis of apache. In 2010, this project was migrated from apache software foundation to google code and was renamed MyBatis.

The term iBATIS comes from the combination of "internet" and "abatis" and is a Java-based persistence layer framework. The persistence layer framework provided by iBATIS includes SQL Maps and Data Access Objects (DAOs).

JSF can be said to be the closest to Java among all Java frameworks, because it and Java are both Oracle's direct line forces.

JSF may not be the best Java framework, but due to Oracle's blessing, JSF's documentation is the most comprehensive and easiest to find. In addition, since JSF has been formatted as a part of JavaEE through JCP, you can use JSF without barriers as long as you install J2EE.

Complex functions can also be implemented with a large number of tools and libraries provided by JSF. With JSP (Java Server Pages), JSF can also support different Facelets and XUL technologies.

GWT (Google Web Toolki) is an AJAX framework that uses JavaScript on the front end and Java on the back end. It is open source under the Apache license version 2.0.

GWT compiles Java code into JavaScript through a compiler, allowing developers to quickly develop and maintain complex but high-performance JavaScript using only Java, thereby reducing the burden on developers.

In addition to some native libraries, you can use the integrated GWT Ant to build Java source code into JavaScript. GWT has achieved a large number of cross-platform reuse of code, including cross-browser portability, internationalization, UI abstraction, bookmarks, history management, remote program calls, and asynchronous code.

SpringBoot framework is called a one-stack solution. Relatively lightweight, it is also the current trend of microservices; SpringBoot itself is built on top of Spring. Needless to say, various ideas and features need not be said. It removes the cumbersome configuration of Spring, simplifies the original Spring development process, and provides a variety of Practical features such as metric, actuctor, etc.;

The most important thing is that SpringBoot comes with the entire SpringCloud ecosystem. The two frameworks are no problem for you to solve large, medium and small projects.

Free Java Competitor Interview Questions

Insert picture description here