Quick Development Framework jeesite and Development Framework jeesite

Source: Internet
Author: User

Quick Development Framework jeesite and Development Framework jeesite

Before giving a detailed introduction to jeesite, I would like to express my views on it. The official saying of jeesite is "efficient, high-performance, and strong security. It is completely open-source, and JavaEE quick development platform". However, I believe that, high performance is not very accurate. If we don't talk about other things, we can simply say that homepage access is slow, and the background response speed is not very fast. But as me
This kind of just-out learning is indeed more than enough, but I am a Taurus, and I am trying to improve the response speed. I will share it with you later. Well, don't brag about it. Let's talk about some of the main things jeesite uses. (I am still very suitable for learning. Please see me ).

JeeSite is a basic Java Development Platform built on the Spring Framework. It uses Spring MVC as the Model View Controller and MyBatis as the data access layer (also available in hibernate ), apache Shiro is the permission authorization layer, Ehcahe caches common data, and Activit is the workflow engine. An integrated open-source framework.

The following are official comments:
JeeSite is mainly positioned in the information field and has built-in basic functions of the information system and efficient code generation tools,
Including: system permission components, data permission components, data dictionary components, core tool components, view operation components,
Workflow Components and code generation. The front-end interface adopts the Twitter Bootstrap page display framework featuring simple structure, excellent performance, and beautiful pages.
Hierarchical Design, dual verification, data security code submission, password encryption, access verification, data permission verification. Maven is used for project management to improve project development and scalability.
JeeSite currently includes the following three modules: System Management (SYS) module, content management (CMS) module, online office (OA) module, and code generation (GEN) module.
System Management module, including organizational structure (user management, organization management, and Region management), menu management, role permission management, dictionary management, and other functions;
Content management module, including content management (articles, links), topic management, site management, public messages, file management, front-end website display, and other functions;
The online office module provides simple leave process instances. The code generation module completes repetitive work.
JeeSite provides common tools for encapsulation, including log tools, cache tools, server-side verification, data dictionary, current organization data (user, organization, region), and other commonly used tools.
In addition, a powerful online code generation tool is provided, which provides simple single-table, one-to-many, and tree-structure generation functions. If the appearance requirement is not high, the generated function can be used.
If you use the basic JeeSite framework, you can quickly develop an excellent information management system.
Built-in functions
User Management: the user is the system operator. This function is used to complete system user configuration.
Organization Management: the Organization (Company, department, and group) of the Configuration System is displayed in a tree structure, and the upper and lower levels can be adjusted at will.
Regional management: System city regional model, such as maintenance of the Country, province, city, and district/county.
Menu management: configures system menus, Operation permissions, and button permission identifiers.
Role management: Assign permissions to the role menu and set roles to be divided by Organization for data range permissions.
Dictionary management: maintenance of some of the more fixed data that is frequently used in the system, such as: whether, men and women, category, level, etc.
Operation logs: Record and query normal operation logs of the system, and record and query system exception logs.
Connection pool monitoring: monitors the status of the current system database connection pool and analyzes SQL statements to identify system performance bottlenecks.
Workflow Engine: implements business ticket flow and online flow designer.
Why choose JeeSite
The Apache License 2.0 protocol is used, and the source code is completely open-source without commercial restrictions.
The current mainstream Java EE development framework is easy to learn and has a low learning cost.
The database is unrestricted. Currently, MySql and Oracle are supported, and SQL Server, PostgreSQL, and H2 can be expanded.
Modular Design with clear hierarchy. Built-in basic functions of information management.
The operation permission control is precise and meticulous. Permission verification is performed on all management links and can be controlled to buttons.
Precise data permission control: filters permissions on specified datasets. Seven data permissions are available.
Provides online function code generation tools to improve development efficiency and quality.
Provides common tool encapsulation, logs, caches, verification, dictionaries, organizations, and other commonly used tags (taglib) to obtain data such as the current organization and dictionary.
Compatible with IE6, which is currently the most popular browser (IE7 +, Chrome, and Firefox), but has poor experience.
Technology Selection
1. backend
Core Framework: Spring Framework 4.1
Security Framework: Apache Shiro 1.2
View framework: Spring MVC 4.1
Server verification: Hibernate Validator 5.2
Deployment framework: SiteMesh 2.4
Workflow Engine: Activiti 5.21
Task Scheduling: Spring Task 4.1
Persistence Layer framework: MyBatis 3.2
Database Connection Pool: Alibaba Druid 1.0
Cache framework: Ehcache 2.6, Redis
Log Management: SLF4J 1.7, Log4j
Tools: Apache Commons, Jackson 2.2, Xstream 1.4, Dozer 5.3, POI 3.9
2. Front-end
JS framework: jQuery 1.9.
CSS framework: Twitter Bootstrap 2.3.1 (stability is the background, and UI should be upgraded as needed ).
Client verification: JQuery Validation Plugin 1.11.
Rich Text Online Editing: CKEditor
Online File Management: CKFinder
Dynamic tab: Jerichotab
Mobile phone framework: Jingle
Data Table: jqGrid
Dialog Box: jQuery jBox
Drop-down selection box: jQuery Select2
Tree Structure Control: jQuery zTree
Date control: My97DatePicker
3. Platform
Server middleware: developed under the Java EE 5 specification (Servlet 2.5 and JSP 2.1), the application server middleware supports Tomcat 6 +, Jboss 7 +, WebLogic 10 +, and WebSphere 8 +.
Database Support: currently, only MySql or Oracle databases are supported, but not limited to databases. The platform has other database support interfaces, and you can easily change them to other databases, such: sqlServer 2008, MySql 5.5, H2, etc.
Development Environment: Java, Eclipse Java EE 4.3, Maven 3.1, Git
Security considerations
Development language: The system is developed in Java, with excellent versatility, efficiency, platform portability and security.
Hierarchical Design: (database layer, data access layer, business logic layer, presentation layer) Clear layers, low coupling, each layer must pass through interfaces to access and perform parameter verification (for example: in the presentation layer, the database cannot be operated directly) to ensure the security of data operations.
Dual-verification: Dual-verification for user form submission, including server-side verification and client-side verification, to prevent malicious modification by the user through the browser (such as not writing text fields, hiding variable tampering, uploading illegal files, etc ), skip client verification to operate on the database.
Secure coding: all data submitted by user forms is securely encoded on the server side to prevent users from submitting illegal scripts and SQL Injection for sensitive data, so as to ensure data security.
Password Encryption: the logon user password is encrypted in The SHA1 hash. This encryption method is irreversible. Security issues after ciphertext leakage are ensured.
Forced access: the system authenticates user identity and permissions on all management links to Prevent Users
Quick experience
Running Environment: JDK1.6 +, Maven3.0 +, MySql5 +, or Oracle10g +. Modify the database settings parameters in the src \ main \ resources \ jeesite. properties file.
Create MySql or Oracle database users and parameters based on the modified parameters.
Run the bin \ init-db.bat script to import the table structure and demo data (linux: switch to the project root directory in the console, run the command: mvn antrun: run-Pinit-db)
Run bin \ run-tomcat7.bat or bin \ run-jetty.bat to start the Web server (first run, need to download dependent jar package, please be patient ).
Highest Administrator Account, Username: thinkgem password: admin

 


After talking about this, let's take two pictures first. The frame package and some specific operation details will be discussed in the blog later.
Front-end homepage, with the title Color changed by yourself



Background Homepage


There are still many features that can be circled in the background, such as workflows. I will introduce them later.

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.