Data transmission method for integrated management platform and integrated management platform

By introducing a data transmission method that connects the data access object layer to multiple databases in the comprehensive management platform, the problem of data cannot be shared between different electronic service channels in the traditional management system is solved, and cross-channel sharing and business processing efficiency of data are realized Improvement.

CN119441331AActive Publication Date: 2025-02-14WUHAN JIEWEI XINCHUANG SOFTWARE TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202411491106.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-24
Publication Date
2025-02-14
Estimated Expiration
2044-10-24

AI Technical Summary

Technical Problem

Traditional management systems act independently, resulting in the inability to share and integrate data between different electronic service channels, seriously reducing the service efficiency of the business processing center.

Method used

By providing a data transmission method for an integrated management platform, data interoperability between multiple electronic service channels is realized. The method includes deploying a comprehensive management platform on the server, which consists of a control layer, a business layer and a data access object layer, which is connected to at least two databases, and implements data query and operation across databases through a unified DAO layer.

Benefits of technology

It realizes data sharing and integration between different electronic service channels, improves the efficiency of cross-channel business processing, solves the data island problem of traditional management systems, and reduces the time for duplicate data input and manual coordination.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119441331A_ABST
    Figure CN119441331A_ABST
Patent Text Reader

Abstract

The invention discloses a data transmission method for an integrated management platform and the integrated management platform, and relates to the field of data transmission, and the method comprises the steps: receiving a user request sent by a user through a Bootstrap front-end interface, and routing the user request to a corresponding control layer; the control layer analyzes the user request, determines to-be-executed business logic, calls a corresponding business layer method, and determines a data operation process of the data access object layer through the business layer; the service layer calls a corresponding DAO method according to the data operation process; the data access object layer determines a target database in the at least two databases through the database query instruction, and executes a query operation in the target database according to the database query instruction to obtain a query result; and the data access object layer packages the query result to obtain a data package, and returns the data package to the Bootstrap front-end interface step by step through the business layer and the control layer to be displayed.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the field of data transmission, and in particular, to a data transmission method and an integrated management platform for an integrated management platform. Background Art

[0002] In the current rapidly developing digital age, enterprises and organizations are facing increasingly complex management challenges. With the expansion and diversification of business scale, for business processing centers involving different electronic service channels, traditional management systems are usually designed and implemented to solve the service activities of a certain electronic service channel. The management system of each electronic service channel is often independently developed and deployed, lacking unified standards and interfaces. For example, the management systems of mobile APP electronic service channels, online business hall electronic service channels, self-service terminal electronic service channels, and hotline electronic service channels operate independently, and each management system has an independent database, and the data is stored in their respective databases, which will cause the data between the management systems of different electronic service channels to be unable to be shared. For business processes that require cross-channel processing, since the management systems of various electronic service channels operate independently, the data between the various electronic service channels cannot be effectively shared and integrated, which will seriously reduce the service efficiency of the business processing center. Summary of the invention

[0003] The embodiments of the present application provide a data transmission method and an integrated management platform for an integrated management platform, which are used to achieve data intercommunication between multiple electronic service channels and effectively improve the service efficiency of a business processing center.

[0004] To achieve the above objectives, the embodiments of the present application adopt the following technical solutions: In a first aspect, a data transmission method for an integrated management platform is provided, which is applied to a server, wherein the server is deployed with an integrated management platform, wherein the integrated management platform includes a control layer, a business layer, and a data access object layer, wherein the business layer includes at least one service class, each of the service classes includes a plurality of business layer methods, the data access object layer is connected to at least two databases, the data access object layer includes at least one DAO implementation class, each of the DAO implementation classes includes at least two DAO methods, and the method includes: In response to receiving a user request sent by a user through the Bootstrap front-end interface, routing the user request to a corresponding control layer; The control layer analyzes the user request, determines the business logic to be executed, and calls the corresponding business layer method to process the business logic through the business layer method, and determines the data operation process of the data access object layer through the business layer; The business layer calls the corresponding DAO method according to the data operation process, and the DAO method includes a database query instruction; The data access object layer determines a target database in at least two of the databases through the database query instruction, and performs a query operation in the target database according to the database query instruction to obtain a query result; The data access object layer packages the query result to obtain a data encapsulation package, and returns the data encapsulation package to the Bootstrap front-end interface step by step through the business layer and the control layer for display.

[0005] In a possible implementation manner of the first aspect, in response to receiving a user request sent by a user through a Bootstrap front-end interface, routing the user request to a corresponding control layer includes: In response to receiving a user request sent by a user through the Bootstrap front-end interface, identifying and obtaining a user session text file; Verifying the identity of the user according to the user session text file, and after the user identity verification is passed, determining the control authority of the user according to the user session text file; A corresponding control layer is determined based on the control authority, and the user request is routed to the control layer.

[0006] In another possible implementation manner of the first aspect, determining the control authority of the user according to the user session text file includes: Parsing the user session text file to obtain a session ID; According to the session ID, retrieving user information associated with the session ID in a preset session storage; According to the user information, a permission mapping list is loaded in a preset configuration file to obtain a permission list corresponding to the user information; Loading an access control list, wherein the access control list includes a mapping relationship between control layers and permission requirements; The permission list is compared with the access control list to obtain the user's control permission.

[0007] In another possible implementation manner of the first aspect, determining the corresponding control layer based on the control authority and routing the user request to the control layer includes: Determining whether the control permission matches the permission requirement of the access control list; In a case where the control authority matches the authority requirement of the access control list, the user request is routed to the control layer.

[0008] In another possible implementation of the first aspect, the user request includes a business processing request, the control layer parses the user request, determines the business logic to be executed, and calls the corresponding business layer method to process the business logic through the business layer method, and determines the data operation process of the data access object layer through the business layer, including: The control layer parses the business processing request and extracts the business logic to be executed, wherein the business logic includes the transaction type and the interaction channel; According to the transaction type, call the corresponding business layer method; In the case where there are at least two interaction channels, the business layer initializes a global transaction manager, and the global transaction manager is used to manage operations of all the interaction channels; The business layer method of the business layer obtains the interface data of each of the interaction channels, and determines the operation sequence of all the interaction channels according to the interface data of each of the interaction channels; The business layer sequentially calls the service of each interaction channel according to the operation sequence, wherein the business layer records the current operation and operation status of the interaction channel before calling the service of the interaction channel each time, and registers the current operation in the global transaction manager; After all the services of the interaction channels are called, the business layer checks the operation results of all the interaction channels through the global transaction manager, and submits the operations of all the interaction channels if all the operation results are successful, and determines the data operation process of the data access object layer through the business layer.

[0009] In another possible implementation manner of the first aspect, the business layer method of the business layer obtains interface data of each of the interaction channels, and determines the operation order of all the interaction channels according to the interface data of each of the interaction channels, including: The business layer method uses HTTP request to obtain interface data of each of the interaction channels, wherein the interface data includes operation parameters, dependency relationships and operation constraints of the interaction channels; Constructing a dependency graph of all the interaction channels according to the operation parameters, the dependency relationship and the operation constraints of each interaction channel; A preset topological sorting algorithm is used to determine the operation sequence of all the interaction channels according to the dependency graph.

[0010] In another possible implementation manner of the first aspect, after the business layer method uses an HTTP request to obtain the interface data of each of the interaction channels, the method further includes: The business layer method determines the concurrent operations of each of the interaction channels within a future preset time period according to the operation parameters and the dependency relationship; The business layer counts the number of requests of each of the interaction channels, and calculates the concurrency volume according to the number of requests and the concurrent operations in a future preset time period; The business layer calls the data access object layer to store the concurrency in the Redis cache through the data access object layer, and the data access object layer interacts with the Redis cache through a first preset interface; In response to the AJAX request of the Bootstrap front end, the server extracts the target concurrency after filtering using a preset filter from the Redis cache, and displays the target concurrency through the Bootstrap front end interface using an ECharts dashboard component.

[0011] In another possible implementation manner of the first aspect, the data access object layer determines a target database in at least two of the databases through the database query instruction, and performs a query operation in the target database according to the database query instruction to obtain a query result, including: The data access object layer parses the database query instruction to determine the type of data to be queried and the query condition, the type of data to be queried includes structured data types and unstructured data types, and the query condition includes a time range, a query physical address, and an identifier; In the case where the data type to be queried is the structured data type, the data access object layer determines that the target database is a relational database, and determines a target database instance in the relational database according to the query condition; The data access object layer performs a query operation in the database instance in the relational database to obtain a query result; In the case where the data type to be queried is the unstructured data type, the data access object layer determines that the target database is a non-relational database, and determines a target database instance in the non-relational database according to the query condition; The data access object layer executes a query operation in the database instance in the non-relational database to obtain a query result.

[0012] In another possible implementation of the first aspect, the data access object layer packages the query result to obtain a data encapsulation package, including: The DAO method of the data access object layer creates a target data transmission object according to the query result to encapsulate the query result to obtain a data encapsulation package.

[0013] In a second aspect, the present application provides a comprehensive management platform, including: The control layer is used to parse the user request, determine the business logic to be executed, and call the corresponding business layer method to process the business logic through the business layer method, and determine the data operation process of the data access object layer through the business layer, wherein the user request is obtained by the server routing the user request sent by the user through the Bootstrap front-end interface; A business layer, used to call the corresponding DAO method according to the data operation process, wherein the DAO method includes a database query instruction, wherein the business layer includes at least one service class, and each service class includes a plurality of business layer methods; The data access object layer is used to determine the target database in at least two of the databases through the database query instruction, and perform a query operation in the target database according to the database query instruction to obtain a query result, package the query result, obtain a data encapsulation package, and return the data encapsulation package to the Bootstrap front-end interface step by step through the business layer and the control layer for display, wherein the data access object layer is connected to at least two databases, and the data access object layer includes at least one DAO implementation class, and each of the DAO implementation classes includes at least two DAO methods.

[0014] Through the above technical solution, data query and operation across multiple databases are realized by connecting with at least two databases through the data access object layer (DAO layer), so that data of different electronic service channels can be accessed and managed through a unified DAO layer, thereby realizing data sharing and integration. In addition, by processing user requests through unified business layer methods and DAO methods, it can be ensured that the operations of different electronic service channels can be managed in a consistent manner. By parsing user requests through the control layer and calling corresponding business layer methods, the business logic processing of different channels can be coordinated. The business layer method can integrate the data operation requirements of multiple channels, and realize cross-database data query and operation through the DAO layer, thereby improving the efficiency of cross-channel business processing. In summary, through a unified comprehensive management platform, cross-channel data sharing and business processing are realized, solving the problems of traditional management systems being independent and data islands, so that data between different electronic service channels can be interoperable, thereby reducing the time of repeated data input and manual coordination, and effectively improving the service efficiency of the business processing center.

[0015] Other features and advantages of the embodiments of the present application will be described in detail in the subsequent specific implementation section. BRIEF DESCRIPTION OF THE DRAWINGS

[0016] Figure 1A flow chart of a data transmission method for an integrated management platform provided in an embodiment of the present application; Figure 2 A schematic diagram of the architecture of an integrated management platform provided in an embodiment of the present application; Figure 3 Another flowchart of a data transmission method for an integrated management platform provided in an embodiment of the present application. DETAILED DESCRIPTION

[0017] In order to make the purpose, technical scheme and advantages of the embodiments of the present application clearer, the technical scheme in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. It should be understood that the specific implementation methods described herein are only used to illustrate and explain the embodiments of the present application, and are not used to limit the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of this application.

[0018] It should be noted that if the embodiments of the present application involve directional indications (such as up, down, left, right, front, back...), such directional indications are only used to explain the relative position relationship, movement status, etc. between the components under a certain specific posture (as shown in the accompanying drawings). If the specific posture changes, the directional indication will also change accordingly.

[0019] In addition, if there are descriptions involving "first", "second", etc. in the embodiments of the present application, the descriptions of "first", "second", etc. are only used for descriptive purposes and cannot be understood as indicating or suggesting their relative importance or implicitly indicating the number of technical features indicated. Therefore, the features defined as "first" and "second" may explicitly or implicitly include at least one of the features. In addition, the technical solutions between the various embodiments can be combined with each other, but they must be based on the ability of ordinary technicians in the field to implement them. When the combination of technical solutions is contradictory or cannot be implemented, it should be deemed that such combination of technical solutions does not exist and is not within the scope of protection required by this application.

[0020] Figure 1 The following schematically shows a flow chart of a data transmission method for an integrated management platform according to an embodiment of the present application. Figure 1As shown, an embodiment of the present application provides a data transmission method for an integrated management platform, which is applied to a server. The server is deployed with an integrated management platform. The integrated management platform includes a control layer, a business layer and a data access object layer. The business layer includes at least one service class, each service class includes multiple business layer methods, the data access object layer is connected to at least two databases, the data access object layer includes at least one DAO implementation class, each DAO implementation class includes at least two DAO methods, and the method may include the following steps.

[0021] S110, in response to receiving a user request sent by a user through the Bootstrap front-end interface, routing the user request to a corresponding control layer; S120, the control layer analyzes the user request, determines the business logic to be executed, and calls the corresponding business layer method to process the business logic through the business layer method, and determines the data operation process of the data access object layer through the business layer; S130, the business layer calls the corresponding DAO method according to the data operation process, and the DAO method includes a database query instruction; S140, the data access object layer determines a target database from at least two databases through a database query instruction, and performs a query operation in the target database according to the database query instruction to obtain a query result; S150, the data access object layer packages the query results to obtain a data encapsulation package, and returns the data encapsulation package to the Bootstrap front-end interface through the business layer and the control layer step by step for display.

[0022] When a user sends a user request through the Bootstrap front-end interface, the server immediately responds and processes the user request. Bootstrap is a front-end framework that can provide UI components and responsive design, which can make the front-end interface more beautiful and easy to use. Users can trigger requests by clicking buttons, submitting forms, or other interactive methods. The request contains a specific URL path and parameters to identify the action the user wants to perform.

[0023] Specifically, the user request is an Ajax request, where Ajax (Asynchronous JavaScript and XML) request is a technology that sends requests to the server asynchronously and receives responses through JavaScript without refreshing the entire page. Ajax requests can be seamlessly integrated into the Bootstrap front-end interface and allow users to interact with the server without refreshing the page. When sending an Ajax request, the browser automatically attaches a user session text file (cookie) associated with the domain. In addition, Ajax requests allow asynchronous authentication and permission checks during user interaction, and can verify the user's identity immediately after the user input is completed without waiting for the form to be submitted.

[0024] The specific process of using Ajax requests in the Bootstrap front-end interface is as follows: 1. The user performs operations on the Bootstrap interface, such as clicking a button, submitting a form, etc. The operation is usually bound to a JavaScript event handling function. 2. The JavaScript code creates an XMLHttpRequest object. 3. Set the request URL, method (GET, POST, etc.), headers and other parameters. 4. Call the send method of the XMLHttpRequest object to send the request to the server. At this time, the page will not refresh or jump. 5. After receiving the request, the server executes the corresponding processing logic and then returns a response. 6. When the server response returns, the XMLHttpRequest object triggers the corresponding events (such as onreadystatechange), and JavaScript can process the returned data in these events. 7. Based on the returned data, the JavaScript code can dynamically update the page content without refreshing the entire page.

[0025] After receiving the user request, the server directs the request to the corresponding control layer according to the pre-configured routing rules. The routing process is usually handled by the routing module of the web server or application server. The routing rules can determine which controller to send the request to based on the URL pattern, HTTP method (GET, POST, etc.) or other request characteristics.

[0026] After the control layer (Controller layer) receives the user request from the router, it first parses the request. The request parsing process includes extracting various information in the request, such as URL parameters, form data, request headers, etc. After the parsing is completed, the control layer can determine the specific business logic to be executed based on the parsed information. Business logic can include various operations such as querying the database, processing user input, and performing calculations.

[0027] After determining the business logic, the Controller layer calls the corresponding business layer method. Business layer methods are usually encapsulated in service classes, and each service class can include multiple related business methods. The control layer obtains an instance of the service class through dependency injection, and then calls the required business layer method. Business layer methods are used to process specific business logic, such as data processing, rule validation, transaction management, etc. During the processing, the business layer (Service layer) determines the data operation process that needs to be executed, including which data needs to be accessed and how to access it (such as query, insert, update or delete). The data operation process is used to guide how the subsequent data access object layer interacts with the database. Through layered design, the control layer focuses on request processing and response generation, and entrusts the specific business logic to the business layer for processing, which achieves separation of concerns and improves the maintainability and scalability of the code.

[0028] After determining the data operation process, the business layer (Service layer) calls the corresponding DAO method according to the data operation process. DAO is a design pattern used to separate data persistence logic from business logic. Each DAO method corresponds to a specific database operation, such as query, insert, update, or delete. The business layer interacts with the database by calling DAO methods without directly processing the underlying database connection and SQL statements. The DAO method contains specific database query instructions, which can be native SQL statements, query languages ​​of ORM (object-relational mapping) frameworks, or other database access technologies. The query instructions define the specific database operations that need to be performed, including the tables, fields, conditions, etc. to be queried. By using the DAO layer, the business layer can focus on the implementation of business logic without having to worry about the specific database operation details. It not only improves the maintainability of the code, but also makes it easier to replace the underlying database or data access technology, because only the implementation of the DAO layer needs to be modified without changing the code of the business layer. In addition, the DAO layer can also implement some common data access functions, such as connection pool management, transaction control, etc., which further simplifies the implementation of the business layer.

[0029] After receiving the call from the business layer, the data access object layer (DAO layer) executes the corresponding DAO method. First, according to the database query instruction, the data access object layer determines the target database from at least two connected databases. The target database can be determined based on factors such as the query content and storage location. After determining the target database, the data access object layer establishes a connection with the database. After that, the data access object layer converts the database query instruction in the DAO method into actual SQL statements or other database-specific query languages. Next, the data access object layer executes the query operation on the target database. After the query is executed, the target database returns the query result. The data access object layer receives the query result.

[0030] After obtaining the query results, the data access object layer packages the query results and generates a data package. The packaging process can be to convert the original results returned by the database into objects or data structures used in the application. For example, the query results may be mapped to Java objects, JSON structures, or other custom data formats. The generated data package contains all relevant information about the query results for subsequent processing and display. Then, the data package is returned step by step. First, it is passed back to the business layer, which can further process or combine the data, such as merging multiple query results, applying business rules, etc. Then, the processed data is passed to the control layer. The control layer is used to convert the data into a format suitable for front-end display. Finally, the control layer sends the processed data back to the Bootstrap front-end interface. After receiving the data, the front end uses Bootstrap components and JavaScript to parse and display the data.

[0031] In summary, Figure 3 Another flow chart of a data transmission method for an integrated management platform provided in an embodiment of the present application is shown. Figure 3 As shown in the figure, the Bootstrap front-end interface provides users with an intuitive and responsive interactive environment. When users perform operations on the Bootstrap front-end interface, such as clicking a button or submitting a form, a pre-defined JavaScript event handling function is triggered, which creates and sends an Ajax request to communicate with the server asynchronously without refreshing the entire page. The Ajax request carries relevant data of the user operation, such as query parameters or form content, and is sent to the server via the HTTP protocol. After the server receives the request, it is first processed by the Web server and then forwarded to the Controller layer of the integrated management system. The Controller layer is used to parse request parameters, verify user identity and permissions. And determine the business logic to be executed based on the URL and method of the request. After determining the business logic, the Controller layer calls the corresponding Service layer method. The Service layer encapsulates the core business logic and is responsible for coordinating and organizing various business operations.

[0032] When executing business logic, the Service layer calls the DAO layer to perform specific data operations. The DAO layer focuses on data persistence operations, encapsulates the direct interaction logic with the database, and is used to convert business objects into query statements or commands that the database can understand and perform query operations.

[0033] The DAO layer establishes a connection with the database through the database connection pool and executes SQL queries or update operations. Depending on the type of operation, it can be to retrieve data from the database or write new data records to the database. After execution, the DAO layer converts the results returned by the database into business objects (data encapsulation packages) and returns them upward along the call chain.

[0034] Finally, the processing result will be packaged into an HTTP response through the Controller layer and sent back to the client. After the Ajax request receives the response, the JavaScript code will parse the returned data and update the corresponding part of the page accordingly, completing the entire request-response cycle. Specifically, the architecture diagram of the integrated management platform is as follows Figure 2 shown.

[0035] This embodiment connects to at least two databases through the data access object layer (DAO layer), realizes data query and operation across multiple databases, so that data of different electronic service channels can be accessed and managed through a unified DAO layer, thereby realizing data sharing and integration. In addition, by processing user requests through unified business layer methods and DAO methods, it can be ensured that the operations of different electronic service channels can be managed in a consistent manner. By parsing user requests through the control layer and calling corresponding business layer methods, the business logic processing of different channels can be coordinated. The business layer method can integrate the data operation requirements of multiple channels, and realize cross-database data query and operation through the DAO layer, thereby improving the efficiency of cross-channel business processing. In summary, through a unified comprehensive management platform, cross-channel data sharing and business processing are realized, solving the problems of traditional management systems being independent and data islands, so that data between different electronic service channels can be interoperable, thereby reducing the time for repeated data input and manual coordination, and effectively improving the service efficiency of the business processing center.

[0036] In one implementation of this embodiment, in response to receiving a user request sent by a user through a Bootstrap front-end interface, routing the user request to a corresponding control layer includes the following steps: S210, in response to receiving a user request sent by a user through the Bootstrap front-end interface, identifying and obtaining a user session text file; S220, verifying the user identity according to the user session text file, and after the user identity verification is passed, determining the user's control authority according to the user session text file; S230: Determine a corresponding control layer based on the control authority, and route the user request to the control layer.

[0037] When a user sends a request through the Bootstrap front-end interface, the server first needs to identify and obtain the user's session text file, that is, the cookie. Specifically, when the user's browser sends an HTTP request, all cookies related to the website are automatically attached to the request header. After receiving the request, the server parses the HTTP header and extracts the Cookie field. The Cookie field usually contains multiple key-value pairs, each of which represents a specific cookie information. The server needs to traverse all key-value pairs to find the specific cookie related to the user session. This specific session cookie usually contains a unique session identifier, which can be a randomly generated string or encrypted user information.

[0038] In actual implementation, you can use the functions provided by the middleware or framework of the web server to automate the process. For example, in a Java Servlet container, you can use the getCookies() method of HttpServletRequest to get all cookies. After getting the cookie, you need to parse and verify it. First, check the integrity of the cookie to make sure it has not been tampered with. Then, verify the validity period of the cookie to make sure it has not expired. If the cookie has expired or does not exist, you may need to create a new session cookie.

[0039] After obtaining the user's session text file (cookie), the user's identity is verified and the user's control permissions are determined based on the cookie. This process is usually divided into two main stages: identity authentication and permission determination. First, for identity authentication, the identity information contained in the cookie is parsed. The identity information can be an encrypted user ID, a session token, or other forms of identity identifiers. After that, the identifier is compared with the user's session data stored in the backend database or cache. The verification process can include checking whether the session has expired, verifying the validity of the session token, confirming the user's account status, etc.

[0040] In actual implementation, a variety of authentication mechanisms can be used. For example, if JWT is used, the server will parse the token, verify its signature, and check the claims contained in it (such as expiration time, issuer, etc.). If the verification fails, the server can ask the user to log in again or return an error message. If the verification is successful, the server will extract user information from the token, such as user ID, role, etc.

[0041] After the identity authentication is passed, the server determines the user's control permissions based on the user information. The server queries the user's role, organization, department and other user information, which is stored in the cookie. The server then matches the user information with the predefined permission rules to determine the resources the user can access and the operations that can be performed. During implementation, you can use permission management frameworks such as Spring Security (Java) or Casbin (Go) to define and manage these permission rules. Permissions can include page access permissions, data operation permissions, function usage permissions, etc. To improve efficiency, the server can use cache to store user permission information to avoid recalculating permissions for each request.

[0042] After determining the user's control permissions, the server determines the corresponding control layer based on the control permissions and routes the user request to the corresponding control layer. Specifically, the server compares the user's control permissions with the requested resources and operations, and checks whether the user has the permission to access the requested resources and perform the corresponding operations. If the user does not have sufficient permissions, the server can reject the request, return a 403 Forbidden error, or redirect to an error page.

[0043] In this embodiment, multiple control layers are provided, each of which is responsible for processing a specific type of request or business logic in a specific field. The server can select a corresponding control layer according to the user's authority level. For example, for a user with administrator authority, the server can route to an administrator control layer with more functions; while for an ordinary user, it may be routed to a standard control layer with limited functions.

[0044] This implementation method performs permission control at the routing level, so that the server can intercept unauthorized access before the request reaches the business logic layer, thereby improving the efficiency and security of the server.

[0045] In one implementation of this embodiment, determining the control authority of a user according to a user session text file includes the following steps: S310, parsing the user session text file to obtain a session ID; S320, according to the session ID, retrieving user information associated with the session ID in a preset session storage; S330, according to the user information, loading the permission mapping list in the preset configuration file to obtain the permission list corresponding to the user information; S340, loading an access control list, wherein the access control list includes a mapping relationship between control layers and permission requirements; S350: Compare the permission list with the access control list to obtain the user's control permission.

[0046] In web applications, cookies are usually stored in the "Cookie" field of the request header in the form of key-value pairs. The process of parsing the user session text file requires traversing the key-value pairs to find the specific cookie representing the session ID. The session ID is a unique string that may be a randomly generated UUID (Universally Unique Identifier) ​​or encrypted user-related information.

[0047] According to the parsed session ID, the user information associated with the ID is retrieved from the preset session storage. The session storage can be an in-memory database (such as Redis), a relational database (such as MySQL), or a distributed cache system. In actual implementation, it is first necessary to establish a connection to the session storage. During the query process, the session ID is used as the key to retrieve the corresponding user information. The user information can include key data such as user ID, user name, role, and last login time.

[0048] To improve performance, you can use a cache strategy. For example, you can maintain a cache of session information in the local memory of the application server to reduce the frequency of access to external storage. At the same time, you need to implement a cache invalidation mechanism to ensure that the data in the cache is synchronized with the data in the storage.

[0049] According to the retrieved user information, the permission mapping list is loaded in the preset configuration file to obtain the permission list corresponding to the user information. Specifically, the permission mapping list defines the correspondence between user roles or specific attributes and system permissions. The configuration file can be a file in the format of XML, JSON, YAML, etc., or structured data stored in a database.

[0050] In actual implementation, you first need to read and parse the configuration file. If you use file storage, you can use the file I / O and parsing library of the corresponding programming language to read the file content. For example, for a configuration file in JSON format, you can use JSON.parse() (JavaScript) or the jackson library (Java) to parse it. If the configuration is stored in a database, you need to perform a database query to obtain the permission mapping information.

[0051] After the parsing is completed, the corresponding permission list is searched in the permission map according to the user's role or attribute. In the specific implementation, a permission cache mechanism can be used to cache frequently accessed permission information in memory to reduce the number of times the configuration file is read.

[0052] Access control lists (ACLs) define the mapping between various control layers in the system (such as specific API endpoints, pages, or functional modules) and the required permissions. Access control lists contain detailed permission rules that specify the permission level or specific permissions required to access specific resources or perform specific operations.

[0053] In actual implementation, ACL can be stored in a variety of forms, including configuration files (such as XML, JSON, YAML), database tables, or directly defined in the code through annotations or specific data structures.

[0054] Compare the user's permission list with the access control list (ACL) to determine the user's actual control permissions. Specifically, this can be achieved by comparing each item in the user's permission list with the permission requirements defined in the ACL. In the actual comparison process, when there is a conflict between the permissions obtained by the user from different sources, the conflict resolution strategy can be the "least permission principle" (taking the intersection) or the "maximum permission principle" (taking the union).

[0055] This implementation method can maintain the user's session status on the basis of the stateless HTTP protocol by accurately parsing the session ID, and realizes the persistence of user identity and cross-request data transmission. It not only improves the user experience and eliminates the need for users to log in again for each request, but also provides a basis for implementing more complex user authentication and authorization mechanisms. In addition, by efficiently and securely retrieving user information, the user identity can be quickly identified while protecting the security of user data. It allows users to remain logged in between multiple requests, improving the user experience. Through the permission list, the user's permissions can be dynamically adjusted according to the user's identity and attributes, which can effectively prevent unauthorized access and provide a flexible permission management mechanism.

[0056] In one implementation of this embodiment, determining a corresponding control layer based on the control authority and routing the user request to the control layer includes the following steps: S410, determining whether the control authority matches the authority requirement of the access control list; S420: When the control authority matches the authority requirement of the access control list, the user request is routed to the control layer.

[0057] In this embodiment, the user's control authority is first compared in detail with the authority requirements of the access control list to determine whether the user has the right to perform a specific operation or access a specific resource. In actual operation, each resource or operation involved in the user request can be checked one by one and matched with the authority requirements defined in the access control list. The user's authority and the resource's authority requirements can be encoded into bitmaps respectively, and then bit operations are used to quickly determine whether the requirements are met.

[0058] After confirming that the user's control permissions match the permission requirements of the access control list, the user request is routed to the corresponding control layer. A routing table or routing configuration can be maintained to map different request modes to the corresponding control layers. This mapping may be statically defined or dynamically generated.

[0059] This implementation ensures that each request is processed by the corresponding component by accurately directing the user request to the control layer with permission to process it, which not only ensures the strict implementation of access control but also improves the efficiency of request processing. It can not only prevent unauthorized access and unauthorized operations, but also improve scalability and flexibility.

[0060] In one implementation of this embodiment, the user request includes a business processing request, the control layer parses the user request, determines the business logic to be executed, and calls the corresponding business layer method to process the business logic through the business layer method, and determines the data operation process of the data access object layer through the business layer, including the following steps: S510: The control layer parses the business processing request and extracts the business logic to be executed, where the business logic includes the transaction type and the interaction channel. S520. Call the corresponding business layer method according to the transaction type; S530: When there are at least two interactive channels, the business layer initializes a global transaction manager, which is used to manage operations of all interactive channels. S540, the business layer method of the business layer obtains the interface data of each interaction channel, and determines the operation sequence of all interaction channels according to the interface data of each interaction channel; S550, the business layer calls the service of each interactive channel in sequence according to the operation order, wherein the business layer records the current operation and operation status of the interactive channel before calling the service of the interactive channel each time, and registers the current operation in the global transaction manager; S560. After all the services of the interaction channels are called, the business layer checks the operation results of all the interaction channels through the global transaction manager, and submits the operations of all the interaction channels if all the operation results are successful, and determines the data operation process of the data access object layer through the business layer.

[0061] In this embodiment, first, the control layer receives a service request sent by a user, and the service request arrives in the form of an HTTP request or other network protocol packet. The parsing process includes analyzing the request header and the request body. The request header may include metadata such as content type, request method, user agent, etc., and the request body includes specific service data.

[0062] The parsing process uses a specific parser to select the target parsing strategy based on the content type of the request (such as JSON, XML, Form Data, etc.). For example, for a request in JSON format, a JSON parsing library can be used to convert a string into a structured object; for XML, a DOM or SAX parser can be used. When extracting business logic, the system identifies and extracts key information from the parsed data based on a predefined data model or protocol specification. This includes the transaction type (which can be an enumeration value or a string identifier), user ID (unique identifier), transaction amount, and interaction channel (which can be one or more identifiers).

[0063] After that, the corresponding business layer method is called according to the transaction type. In the actual calling process, the corresponding business layer method is first found in the mapping table according to the extracted transaction type. Fast algorithms such as hash search or index search can be used. After the corresponding business layer method is determined, the method is called dynamically. The method object can be dynamically obtained according to the method name, and the necessary parameters can be passed in for calling.

[0064] When there are at least two interaction channels, the business layer initializes the global transaction manager, which is used to coordinate and manage operations across multiple interaction channels to ensure that all operations succeed or fail, thereby maintaining data consistency.

[0065] The initialization process first involves creating an instance of the global transaction manager. The instance of the global transaction manager is a singleton object that is responsible for managing the life cycle of the entire transaction. The implementation of the global transaction manager can be based on a distributed transaction protocol, such as the two-phase commit protocol (2PC) or the three-phase commit protocol (3PC). During initialization, the global transaction manager needs to establish connections with various interaction channels.

[0066] The global transaction manager is used to maintain a transaction context that tracks the state and participants (i.e., the various interaction channels) of the current transaction. The context can contain information such as the transaction ID, start time, list of participants, current state, etc. The manager is also used to implement transaction boundary control, including the ability to start, commit, and rollback transactions.

[0067] In a multi-channel scenario, the manager can use distributed locks or other concurrency control mechanisms to ensure that operations between multiple channels do not interfere with each other.

[0068] After that, the business layer method obtains the interface data of each interaction channel and determines the operation order. First, the business layer method traverses all the interaction channels involved and obtains the corresponding interface data for each channel. The interface data can include information such as the channel's processing capacity, current load, response time, and operation complexity.

[0069] To improve efficiency, you can use parallel requests or asynchronous calls to obtain data from multiple channels at the same time. After obtaining the interface data of all channels, you can determine the order of operations based on predefined rules or algorithms.

[0070] The business layer calls the services of each interactive channel in sequence according to the operation order, and records the operation status and registers the current operation before each call, which can ensure the reliability and traceability of multi-channel operations. First, the business layer calls the services of each interactive channel one by one according to the operation order. Before each call, a series of preparations need to be performed. This includes recording the details of the current operation, such as the operation type, target channel, input parameters, etc. A state machine can be maintained to track the life cycle of each operation. Common states can include "preparing", "executing", "completed", "failed", etc. The change of state needs to be recorded in a timely manner, and the corresponding events or notifications can be triggered.

[0071] Registering the current operation in the global transaction manager is the key to implementing distributed transactions. The registration process includes adding the operation information to the transaction context, acquiring transaction locks or setting transaction boundaries, ensuring that the operation can be correctly included in the management scope of the global transaction and preparing for subsequent commit or rollback.

[0072] After all the services of the interaction channels are called, the business layer checks all the operation results through the global transaction manager and decides whether to commit the operation. First, the business layer needs to obtain the execution results of all registered operations from the global transaction manager. After obtaining all the operation results, a consistency check is required. This includes verifying the execution status of each operation, checking whether the operation results meet expectations, and evaluating the integrity of the overall business logic. If all the operation results are successful and pass the consistency check, the entire transaction is committed. The commit process usually follows a two-phase commit protocol: first, a ready-to-commit instruction is sent to all participants, and after receiving the ready response from all participants, the final commit instruction is sent. When committing an operation, the relevant business status and data need to be updated. This includes updating database records, sending confirmation messages, triggering subsequent business processes, etc. All of the above operations need to be performed under the protection of transactions to ensure data consistency.

[0073] If any abnormality or failure is found during the inspection, a rollback process needs to be initiated. The rollback process requires undoing the operations that have been performed.

[0074] This implementation method can maintain the correctness of business logic in a complex multi-channel environment through comprehensive result checking and strict submission control. At the same time, it also provides strong support for fault recovery and exception handling, enhancing the reliability and stability of the system.

[0075] In one implementation of this embodiment, a business layer method of the business layer obtains interface data of each interaction channel, and determines the operation sequence of all interaction channels according to the interface data of each interaction channel, including the following steps: S610, the business layer method uses HTTP request to obtain interface data of each interaction channel, wherein the interface data includes operation parameters, dependency relationships and operation constraints of the interaction channel; S620, constructing a dependency graph of all interaction channels according to the operation parameters, dependency relationships, and operation constraints of each interaction channel; S630: Using a preset topological sorting algorithm, determine the operation order of all interaction channels according to the dependency graph.

[0076] The business layer method obtains the interface data of each interaction channel through HTTP requests. In specific implementation, it is necessary to first determine the interface addresses of all interaction channels. The interface addresses are usually stored in the configuration file or database in the form of URLs. Then, the business layer method sends HTTP GET requests to these addresses one by one. After the request is sent, the server returns a response containing the interface data. The response data is usually in JSON or XML format, which contains key information such as the operation parameters, dependencies, and operation constraints of the interaction channel.

[0077] Operation parameters can include the identifier, name, type, processing capability and other attributes of the interaction channel. Dependencies represent the prerequisites of the interaction channel in the operation sequence, that is, the channel that needs to complete the operation first. Operation constraints can include time limits, resource requirements and other conditions. After obtaining the above data, the business layer method will parse and structure it, converting the JSON or XML format into a data structure that can be directly used within the program, such as an object or dictionary.

[0078] After obtaining the interface data of each interactive channel, a dependency graph of all interactive channels is constructed. First, a suitable data structure is selected to represent the dependency graph. Generally, an adjacency list or an adjacency matrix can be used to represent the graph structure. In this embodiment, an adjacency list is used to represent the graph structure, which saves more space and is easier to traverse.

[0079] The process of building a dependency graph is as follows: First, create an empty graph structure, where each node in the graph represents an interaction channel. Then, traverse the interface data of each interaction channel. For each interaction channel, add the corresponding edge to the graph based on its dependency information. For example, if channel A depends on channel B, add a directed edge from B to A in the graph.

[0080] After the build is complete, the graph can be verified to check for circular dependencies. Circular dependencies prevent the generation of a valid sequence of operations. If a circular dependency is detected, a warning is issued and specific information about the circular dependency is provided so that the administrator can manually intervene and make adjustments.

[0081] After building the dependency graph, a preset topological sorting algorithm is used to determine the operation order of all interaction channels based on the dependency graph. Topological sorting is a sorting algorithm for directed acyclic graphs (DAGs) that can arrange the nodes in the graph into a linear sequence so that all directed edges point from the front to the back of the sequence. The process is as follows: 1. Initialize a queue Q and add all nodes with in-degree 0 (i.e., no dependent interaction channels) to the queue.

[0082] 2. Initialize a list L to store the final sorting results.

[0083] 3. When the queue Q is not empty, repeat the following steps: a. Take a node n from Q and add it to the list L. b. For each adjacent node m of node n: remove the edge (n, m) from the graph, and if the in-degree of m becomes 0, add m to the queue Q.

[0084] 4. If there are still edges in the graph, it means that there is a cycle in the graph and the topological sort cannot be completed. Otherwise, the order in L is the required operation order.

[0085] In practical applications, operational constraints also need to be considered. For example, if some interaction channels have time constraints, the node with the tightest time constraints can be prioritized when selecting the next node. If there are resource demand constraints, resource allocation checks can be performed during the sorting process to ensure that resource usage at each moment does not exceed the system capacity.

[0086] The effect of this step is to generate an interactive channel operation sequence that satisfies all dependencies and operation constraints. This sequence ensures that during execution, the operation of each interactive channel is performed after all its dependencies are completed, thus avoiding potential conflicts and errors. At the same time, by considering time and resource constraints, the generated sequence can also optimize the overall operation efficiency and maximize the utilization of system resources.

[0087] This implementation generates an interactive channel operation sequence that satisfies all dependencies and operation constraints, thereby ensuring that during the execution process, the operation of each interactive channel is performed after all its dependencies are completed, thereby avoiding potential conflicts and errors.

[0088] In one implementation of this embodiment, after the business layer method uses HTTP request to obtain the interface data of each interaction channel, the following steps are also included: S710, the business layer method determines the concurrent operations of each interactive channel within a future preset time period according to the operation parameters and the dependency relationship; S720, the business layer counts the number of requests for each interactive channel, and calculates the concurrency based on the number of requests and concurrent operations in a future preset time period; S730, the business layer calls the data access object layer to store the concurrency in the Redis cache through the data access object layer, and the data access object layer interacts with the Redis cache through a first preset interface; S740. In response to the AJAX request of the Bootstrap front end, the server extracts the target concurrency after filtering using the preset filter from the Redis cache, and displays the target concurrency through the Bootstrap front end interface using the ECharts dashboard component.

[0089] After obtaining the interface data of each interactive channel, the business layer method determines the concurrent operations of each interactive channel in the future preset time period based on the operation parameters and dependencies. Specifically, first, the obtained operation parameters are analyzed, and then a time series model is constructed based on the dependencies. The time series model is constructed based on historical data, seasonal factors, and the mutual influence between various interactive channels.

[0090] In specific implementation, time series analysis methods such as the ARIMA (Autoregressive Integrated Moving Average) model can be used to predict concurrent operations within a preset time period in the future by combining the trend and periodicity of historical data with current operating parameters and dependencies. The preset time period can be hours, days, or weeks.

[0091] During the prediction process, the impact of dependencies can be considered. For example, if channel A depends on channel B, then the prediction of concurrent operations of channel A needs to consider the prediction results of channel B. Dependencies can be handled graphically, using a directed acyclic graph (DAG) to represent dependencies, and then predicting in a topologically sorted order.

[0092] After determining the concurrent operation forecast for the future preset time period, the business layer starts to count the number of requests for each interaction channel and calculates the concurrency based on the number of requests and the predicted concurrent operations. The requests for each interaction channel can be captured and recorded through the preset real-time monitoring system. The real-time monitoring system can be implemented by setting a counter at the entry point of each interaction channel. Whenever a new request comes in, the corresponding counter will increase.

[0093] The concurrency is equal to the request arrival rate multiplied by the average processing time. The request arrival rate can be obtained from the statistical number of requests, while the average processing time can be estimated from historical data and predicted concurrent operations.

[0094] After calculating the concurrency, the business layer calls the data access object layer to store the concurrency in the Redis cache. First, the business layer calls the data access object layer through a predefined interface. As an abstract layer, the data access object layer encapsulates all operations related to data storage and provides a unified interface for the business layer to use. The interaction between the data access object layer and the Redis cache is carried out through the first preset interface. The first preset interface defines a series of operations, including setting key-value pairs, getting values, setting expiration times, etc. When storing concurrency, a hash structure can be used to organize data. For example, the identifier of the interaction channel can be used as the key, and information such as concurrency and timestamp can be stored in the hash as field-value pairs.

[0095] Finally, in response to the AJAX request of the Bootstrap front-end, the target concurrency after filtering by the preset filter is extracted from the Redis cache, and the data is displayed using the ECharts dashboard component through the Bootstrap front-end interface.

[0096] First, the Bootstrap frontend sends a request to the server via AJAX. AJAX allows you to update part of the web page content without refreshing the entire page, providing a better user experience. After receiving the request, the server reads the concurrency data from the Redis cache. During the reading process, the data is filtered and processed using preset filters. Filters can remove outliers, smooth data, select data within a specific time range, etc.

[0097] The filtered target concurrency data is returned to the front end through HTTP response. After receiving the data, the front end uses the ECharts library to create a visual dashboard component. ECharts is an open source visualization library that supports multiple chart types, including dashboards. In the implementation process, you can customize the appearance and behavior of the dashboard by configuring the ECharts option object. For example, you can set the scale, color range, pointer style, etc. of the dashboard.

[0098] In order to achieve real-time updates, you can set a timer on the front end to periodically send AJAX requests to obtain the latest data. At the same time, you can use ECharts' animation effects to smoothly update the dashboard display and provide a better visual experience.

[0099] In the Bootstrap front-end interface, you can use Bootstrap's grid system to layout multiple ECharts dashboards to simultaneously display the concurrent volume of multiple interactive channels. In addition, you can also add interactive features, including allowing users to select different time ranges or interactive channels for viewing.

[0100] This implementation can intuitively display the system's concurrency status on the user interface. Through the real-time updated dashboard, administrators can quickly grasp the operating status of the platform and discover potential problems in a timely manner.

[0101] In one implementation of this embodiment, the data access object layer determines a target database in at least two databases through a database query instruction, and performs a query operation in the target database according to the database query instruction to obtain a query result, including the following steps: S810, the data access object layer parses the database query instruction, determines the data type to be queried and the query condition, the data type to be queried includes structured data type and unstructured data type, and the query condition includes time range, query physical address and identifier; S820: When the data type to be queried is a structured data type, the data access object layer determines that the target database is a relational database, and determines a target database instance in the relational database according to the query condition; S830, the data access object layer performs a query operation in the database instance in the relational database to obtain a query result; S840: When the data type to be queried is a non-structured data type, the data access object layer determines that the target database is a non-relational database, and determines a target database instance in the non-relational database according to the query condition; S850. The data access object layer executes a query operation in a database instance in the non-relational database to obtain a query result.

[0102] The data access object layer first needs to parse the database query instructions. The purpose of parsing is to extract two key pieces of information from the query instructions: the type of data to be queried and the query conditions. The type of data to be queried is divided into structured data types and unstructured data types to determine the type of database to be used later. The query conditions include time range, query physical address, and identifiers (such as user ID).

[0103] You can use regular expressions or specialized SQL parsing libraries to process query instructions. For time ranges, you can look for patterns like "BETWEEN '2023-01-01' AND '2023-12-31'"; for physical addresses, you can look for fields containing address keywords; for identifiers, you can look for patterns like "user_id = '12345'".

[0104] When determining the data type, you can make a judgment by analyzing the target table or field of the query. For example, if the query involves a table with a predefined structure, it can be determined as a structured data type; if the query is a JSON field or full-text search, it can be determined as an unstructured data type.

[0105] When the data type to be queried is determined to be a structured data type, the data access object layer will determine the target database as a relational database. The above selection process is based on the characteristics of structured data, that is, the data has a predefined schema and is suitable for storage and query in a table form. Common relational databases include MySQL, PostgreSQL, Oracle, etc.

[0106] After the target database is determined, the specific database instance is determined based on the query conditions. The data is distributed across multiple database instances to improve performance and scalability.

[0107] In this embodiment, a preset algorithm may be used to determine the target database instance. The preset algorithm calculates a hash value based on a keyword (such as a user ID) in the query condition, and then maps the hash value to a database instance ring. This ensures that the same query condition is always routed to the same database instance, thereby improving cache efficiency and query performance.

[0108] After determining the target relational database instance, the data access object layer begins to perform specific query operations in the instance. First, the data access object layer needs to build SQL statements based on the parsed query conditions. Parameterized queries can be used to prevent SQL injection attacks. For example, use prepared statements and placeholders instead of directly concatenating SQL strings.

[0109] Next, you can use the database's execution plan tool to analyze the performance of SQL statements and make necessary optimizations. Common optimization techniques include adding appropriate indexes, avoiding LIKE statements that begin with wildcards, and using EXPLAIN statements to analyze query plans.

[0110] When executing queries, using a database connection pool can reduce the overhead of creating and destroying connections and improve query efficiency. You can set the minimum and maximum number of connections in the connection pool, as well as the connection lifetime and other parameters to adapt to different load conditions.

[0111] After the query is executed, the query results are returned. Specifically, the query results are objects that can be used by the application.

[0112] When it is determined that the data type to be queried is an unstructured data type, the data access object layer will determine the target database as a non-relational database (NoSQL database). That is, the data has no fixed pattern and may contain multiple formats such as text, images, and audio. After determining to use a non-relational database, the specific database instance is determined based on the query conditions. In specific implementation, a content-based routing strategy can be adopted. For example, for document databases such as MongoDB, the location of data storage can be determined based on a key field of the document. For key-value storage such as Redis, a consistent hashing algorithm can be used to distribute data. For column family storage such as Cassandra, the location of data can be determined based on the partition key.

[0113] After determining the target non-relational database instance, the data access object layer begins to perform specific query operations in the instance. Different from the query process of relational databases, corresponding query methods need to be adopted according to different types of non-relational databases.

[0114] Specifically, for document-based databases (such as MongoDB), queries usually use a query language similar to JSON. You can build a query object to specify the fields and values ​​to match. For example, you can use the form of {field: value} to find the value of a specific field, or use {field: {$gt: value}} for range queries. For key-value storage (such as Redis), query operations are relatively simple, and usually the value is obtained directly based on the key. For column family storage (such as Cassandra), queries need to consider the design of the data model. For search engines (such as Elasticsearch), queries can use DSL (DomainSpecific Language) to build complex search conditions, supporting advanced features such as full-text search, fuzzy matching, and geographic location search.

[0115] This implementation method greatly improves the efficiency and flexibility of data access by intelligently parsing query instructions, dynamically selecting appropriate database types and instances, and adopting targeted query optimization strategies. It can not only cope with diverse data needs, but also ensure the high performance and scalability of the system.

[0116] In one implementation of this embodiment, the data access object layer packages the query results to obtain a data encapsulation package, including the following steps: S910. The DAO method of the data access object layer creates a target data transmission object according to the query result to encapsulate the query result to obtain a data encapsulation package.

[0117] In this embodiment, the DAO method of the data access object layer creates a target data transfer object based on the query results to encapsulate the query results and obtain a data encapsulation package. First, the DAO method receives the original query results returned from the database. The query result can be a result set (ResultSet), a document collection (such as a cursor of MongoDB), or a list of key-value pairs (such as the return value of Redis). Next, the DAO method creates one or more data transfer objects (DTO). DTO is a design pattern for transferring data between different layers. Its main purpose is to reduce the number of method calls and improve efficiency by combining multiple related data items into one object. DTO is usually a simple POJO (Plain Old JavaObject) that only contains properties and corresponding getter / setter methods without business logic.

[0118] In the process of creating DTO, data mapping is required, that is, converting the field name in the database into the attribute name of the Java object. For example, the field name in the database may be snake_case (such as user_name), while the attribute name of the Java object is usually camelCase (such as userName).

[0119] During the encapsulation process, you need to consider the conversion of data types. For example, the date type in the database may need to be converted to a Java Date or LocalDateTime object. Numeric types may need precision conversion. Finally, encapsulate the created DTO object or DTO object collection into a unified data encapsulation package. The data encapsulation package can contain metadata (such as the total number of records, paging information), status information (such as whether the query is successful), and the actual data load. Using a unified encapsulation format can simplify the processing logic of the upper-level application and improve the maintainability of the code.

[0120] This implementation method realizes efficient conversion and encapsulation of query results to data transmission objects through the DAO method of the data access object layer. It not only solves the problem of inconsistent result formats returned by different databases, but also optimizes the organization and transmission of data by creating a suitable DTO structure. The use of DTO reduces unnecessary data transmission and reduces network load, while also providing clear interface definitions between different layers. The data access object layer can provide unified, efficient and secure data access services for upper-level applications, greatly simplifying the development and maintenance of applications.

[0121] Reference Figure 2 and Figure 3 The embodiment of the present application also provides a comprehensive management platform, including: The control layer is used to parse user requests, determine the business logic to be executed, and call the corresponding business layer method to process the business logic through the business layer method and determine the data operation process of the data access object layer. The user request is obtained by the server routing the user request sent by the user through the Bootstrap front-end interface; The business layer is used to call the corresponding DAO method according to the data operation process, and the DAO method includes a database query instruction, wherein the business layer includes at least one service class, and each service class includes multiple business layer methods; The data access object layer is used to determine the target database in at least two databases through database query instructions, and execute query operations in the target database according to the database query instructions, obtain query results, package the query results, obtain data encapsulation packages, and return the data encapsulation packages to the Bootstrap front-end interface through the business layer and the control layer step by step for display, wherein the data access object layer is connected to at least two databases, the data access object layer includes at least one DAO implementation class, and each DAO implementation class includes at least two DAO methods.

[0122] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems or computer program products. Therefore, the present application may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present application may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.

[0123] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of the processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0124] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0125] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0126] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0127] The memory may include non-permanent memory in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. The memory is an example of a computer-readable medium.

[0128] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.

[0129] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.

[0130] The above are only embodiments of the present application and are not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included within the scope of the claims of the present application.

Claims

1. A data transmission method for an integrated management platform, characterized in that: Applied to a server, the server is deployed with an integrated management platform, the integrated management platform includes a control layer, a business layer and a data access object layer, the business layer includes at least one service class, each of the service classes includes multiple business layer methods, the data access object layer is connected to at least two databases, the data access object layer includes at least one DAO implementation class, each of the DAO implementation class includes at least two DAO methods, and the method includes: In response to receiving a user request sent by a user through the Bootstrap front-end interface, routing the user request to a corresponding control layer; The control layer analyzes the user request, determines the business logic to be executed, and calls the corresponding business layer method to process the business logic through the business layer method, and determines the data operation process of the data access object layer through the business layer; The business layer calls the corresponding DAO method according to the data operation process, and the DAO method includes a database query instruction; The data access object layer determines a target database in at least two of the databases through the database query instruction, and performs a query operation in the target database according to the database query instruction to obtain a query result; The data access object layer packages the query result to obtain a data encapsulation package, and returns the data encapsulation package to the Bootstrap front-end interface step by step through the business layer and the control layer for display.

2. The method according to claim 1, characterized in that The step of responding to receiving a user request sent by a user through the Bootstrap front-end interface and routing the user request to a corresponding control layer includes: In response to receiving a user request sent by a user through the Bootstrap front-end interface, identifying and obtaining a user session text file; Verifying the identity of the user according to the user session text file, and after the user identity verification is passed, determining the control authority of the user according to the user session text file; A corresponding control layer is determined based on the control authority, and the user request is routed to the control layer.

3. The method according to claim 2, characterized in that The determining the user's control authority according to the user session text file includes: Parsing the user session text file to obtain a session ID; According to the session ID, retrieving user information associated with the session ID in a preset session storage; According to the user information, a permission mapping list is loaded in a preset configuration file to obtain a permission list corresponding to the user information; Loading an access control list, wherein the access control list includes a mapping relationship between control layers and permission requirements; The permission list is compared with the access control list to obtain the user's control permission.

4. The method according to claim 3, characterized in that The determining a corresponding control layer based on the control authority and routing the user request to the control layer includes: Determining whether the control permission matches the permission requirement of the access control list; In a case where the control authority matches the authority requirement of the access control list, the user request is routed to the control layer.

5. The method according to claim 1, characterized in that The user request includes a business processing request. The control layer parses the user request, determines the business logic to be executed, and calls the corresponding business layer method to process the business logic through the business layer method, and determines the data operation process of the data access object layer through the business layer, including: The control layer parses the business processing request and extracts the business logic to be executed, wherein the business logic includes the transaction type and the interaction channel; According to the transaction type, call the corresponding business layer method; In the case where there are at least two interaction channels, the business layer initializes a global transaction manager, and the global transaction manager is used to manage operations of all the interaction channels; The business layer method of the business layer obtains the interface data of each of the interaction channels, and determines the operation sequence of all the interaction channels according to the interface data of each of the interaction channels; The business layer sequentially calls the service of each interaction channel according to the operation sequence, wherein the business layer records the current operation and operation status of the interaction channel before calling the service of the interaction channel each time, and registers the current operation in the global transaction manager; After all the services of the interaction channels are called, the business layer checks the operation results of all the interaction channels through the global transaction manager, and submits the operations of all the interaction channels if all the operation results are successful, and determines the data operation process of the data access object layer through the business layer.

6. The method according to claim 5, characterized in that The business layer method of the business layer obtains the interface data of each of the interaction channels, and determines the operation sequence of all the interaction channels according to the interface data of each of the interaction channels, including: The business layer method uses HTTP request to obtain interface data of each of the interaction channels, wherein the interface data includes operation parameters, dependency relationships and operation constraints of the interaction channels; Constructing a dependency graph of all the interaction channels according to the operation parameters, the dependency relationship and the operation constraints of each interaction channel; A preset topological sorting algorithm is used to determine the operation sequence of all the interaction channels according to the dependency graph.

7. The method according to claim 6, characterized in that After the business layer method uses HTTP request to obtain the interface data of each interaction channel, the method further includes: The business layer method determines the concurrent operations of each of the interaction channels within a future preset time period according to the operation parameters and the dependency relationship; The business layer counts the number of requests of each of the interaction channels, and calculates the concurrency volume according to the number of requests and the concurrent operations in a future preset time period; The business layer calls the data access object layer to store the concurrency in the Redis cache through the data access object layer, and the data access object layer interacts with the Redis cache through a first preset interface; In response to the AJAX request of the Bootstrap front end, the server extracts the target concurrency after filtering using a preset filter from the Redis cache, and displays the target concurrency through the Bootstrap front end interface using an ECharts dashboard component.

8. The method according to claim 1, characterized in that The data access object layer determines a target database in at least two of the databases through the database query instruction, and performs a query operation in the target database according to the database query instruction to obtain a query result, including: The data access object layer parses the database query instruction to determine the type of data to be queried and the query condition, the type of data to be queried includes structured data types and unstructured data types, and the query condition includes a time range, a query physical address, and an identifier; In the case where the data type to be queried is the structured data type, the data access object layer determines that the target database is a relational database, and determines a target database instance in the relational database according to the query condition; The data access object layer performs a query operation in the database instance in the relational database to obtain a query result; In the case where the data type to be queried is the unstructured data type, the data access object layer determines that the target database is a non-relational database, and determines a target database instance in the non-relational database according to the query condition; The data access object layer executes a query operation in the database instance in the non-relational database to obtain a query result.

9. The method according to claim 1, characterized in that: The data access object layer packages the query result to obtain a data encapsulation package, including: The DAO method of the data access object layer creates a target data transmission object according to the query result to encapsulate the query result to obtain a data encapsulation package.

10. An integrated management platform, applied to the data transmission method for an integrated management platform according to any one of claims 1 to 9, characterized in that: include: The control layer is used to parse the user request, determine the business logic to be executed, and call the corresponding business layer method to process the business logic through the business layer method, and determine the data operation process of the data access object layer through the business layer, wherein the user request is obtained by the server routing the user request sent by the user through the Bootstrap front-end interface; A business layer, used to call the corresponding DAO method according to the data operation process, wherein the DAO method includes a database query instruction, wherein the business layer includes at least one service class, and each service class includes a plurality of business layer methods; The data access object layer is used to determine the target database in at least two of the databases through the database query instruction, and perform a query operation in the target database according to the database query instruction to obtain a query result, package the query result, obtain a data encapsulation package, and return the data encapsulation package to the Bootstrap front-end interface step by step through the business layer and the control layer for display, wherein the data access object layer is connected to at least two databases, and the data access object layer includes at least one DAO implementation class, and each of the DAO implementation classes includes at least two DAO methods.

Citation Information

Patent Citations

  • Global distributed transactions across microservices

    CN113272790A

  • Web background development framework

    CN115729540A

  • Database operation method and device, computer equipment and storage medium

    CN117112538A

  • Cross-library transaction synchronization method and device, electronic equipment and storage medium

    CN118656426A

  • Middleware system for integrating multiple databasesand method for integrating distributed heterogeneousdatabases using the same

    KR1020010025949A