Why do you know about the JEECG BOOT project?

In June 2021, the company assigned me a report module task. Since I had never made a professional report before, I went to GitHub or Gitee to search for projects with high star ranking. However, I also compared other reports, including the UReport report currently used by the company. Company leaders decided to use JEECG BOOT program blocks of statements, we can realize the function of company reports and data kanban, most likely will use block statements, to arrange for me to be familiar with the block statements, in addition to the above reasons, I simply look at the project’s technical architecture and related technology, that is the value of learning, covering technical is very wide, worth learning.

The project to understand

As far as I know, and combining with the online introduction to the project, the project is the separation of structure before and after the end, in line with the current IT industry development mode, the function is perfect, is a low code development platform based on the code generator, especially suitable for small and medium-sized enterprises (smes) as a rapid development project’s first choice, for more information please go to website, address: JEECG BOOT. Then I will briefly introduce the project from the following aspects:

technical

The project covers a wide range of technologies, not only the most mainstream technologies at the front and back end, but also CI/ CD-related operation technologies such as Docker, single sign-on, and distributed, as well as some coding specifications, which are worth learning as a programmer

Design idea

As officially stated, it is a low-code, zero-code development platform based on code generators. With this goal in mind, JEECG has officially divided its technical architecture into front and back end separation, with the front end using Ant-Design-Vue + Vue + Webpack and the back end using Ant-Design-Vue + Webpack

RELEASE + Mybatis-plus_3.1.2 + Shiro_1.4.0 + JwT_3.7.0 + Swagger- UI + RedisCopy the code

As an introduction point, it is easier to expand into a distributed architecture, which has been implemented at present

The front-end project directory structure is as follows:

The directory structure is very clear, as evidenced by the support for multi-environment deployment

The back-end project structure is shown in the screenshot below:

As can be seen from the screenshot, the back-end directory structure is very clear, and the responsibilities are clearly divided, which conforms to the idea of microservices. It adopts maven multi-module management, such as jeECG-boot-base, which is mainly composed of some core classes, tool classes and public factory interfaces

Suitable for the project

  • SAAS project
  • Enterprise Information Management System (MIS)
  • Internal Office System (OA)
  • Enterprise Resource Planning System (ERP)
  • Customer Relationship Management System (CRM)

Benefits of a front – and back-end separation architecture

  • Interest development, reduce coupling degree, the front end students can focus on the front end, the back end students can focus on the back end

  • It is easy to maintain, deploy and improve development efficiency

  • In the case that the back end is not completed, the front end students can do the page in advance according to the design of the product manager, which is the first point

  • At development time, you can do hot replacement, you can use Babel, you can use CSS preprocessors, and so on

  • Improve application performance and so on

As for the disadvantages of the front and back end separation architecture, you can find them by yourself

So the architecture of the JEECG BOOT project is very much in line with the development patterns of today’s IT industry

To sum up, what is the model for developing business scenarios

The document

The technical documentation of the project is very complete. In addition to the official online documents, you can also find information summarized by others in major media (such as Baidu and Jianshu), which is mainly reflected in the following aspects:

  • Development of the document
  • Q&A
  • The problem of feedback

Architectural patterns

Flexible switching between single and distributed modes

Is it worth learning

The answer is: yes

  • Front – end separation architecture
  • Mainstream technology
  • A large project
  • The community is active
  • Making thousands of

, etc.

Use notes

At the beginning, git Clone always reported an error after downloading the code, and the console showed an error about creating beans and undefined fields. However, by solving the problem, I will become more familiar with the project and improve myself. It is recommended that students who want to learn the project first read the documentation and then run it locally. Because when you look at the documentation and you have a problem, you know where the configuration is wrong or how to fix it, don’t panic, try all kinds of ways to fix it. The most attractive part of this project is the report designer, online forms and interaction with third-party platforms. Nacos is good. At present, our company uses Ali datAV to make large-screen kanban, and uses UReport to make report design, which is embedded in the business system, summarized as follows:

  • Front – end separation architecture
  • Micro service
  • Online form
  • Third-party platform connection (such as enterprise wechat, etc.)
  • Big screen designer
  • monitoring

, etc.

Suggestions for improvement

  • [Recommendation] The interface definition is inconsistentRestfulstyle
  • [Strong] Report Designer improves the ability to hide or move columns
  • [Recommendation] Do not use the prompt box when Token expires, but use a small prompt, which will automatically close after 3 seconds and jump to the login page. In our company’s current system, only when Token expires, click to jump to the login page
  • [Strong] The initial SQL script in the source code of the building blocks report suggests that all the SQL related to the definition should be written in the same file, if not, it can be in order and annotated
  • [Strong] Report design open a new window. It is recommended to open it in this IFrame. Our company uses uReport to open it in iframe
  • [Recommendation] Develop a set of JeECG-Go project based on Golang language. Golang is very young and developing at present. Although the ecology is not very perfect, I believe it will be more and more perfect in the future. For example: go – zero

conclusion

The JEECG BOOT project is very suitable for management projects such as ERP systems, technology stack is one of the mainstream technologies and so on, mainly has the following points:

  • The community is active
  • The document is rich
  • New technology
  • Low code development
  • Rich learning materials

The link address

doc.jeecg.com/2043868

Finally, I hope the JEECG BOOT project can cover all enterprise-related businesses, come on together!!