CN111367898A - Data processing method, device, system, electronic equipment and storage medium - Google Patents
Data processing method, device, system, electronic equipment and storage medium Download PDFInfo
- Publication number
- CN111367898A CN111367898A CN202010105199.XA CN202010105199A CN111367898A CN 111367898 A CN111367898 A CN 111367898A CN 202010105199 A CN202010105199 A CN 202010105199A CN 111367898 A CN111367898 A CN 111367898A
- Authority
- CN
- China
- Prior art keywords
- data
- identification value
- determining
- user
- request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 36
- 238000003860 storage Methods 0.000 title claims abstract description 33
- 238000000034 method Methods 0.000 claims abstract description 41
- 230000004044 response Effects 0.000 claims abstract description 18
- 238000012545 processing Methods 0.000 claims description 54
- 238000004891 communication Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 8
- 238000001514 detection method Methods 0.000 claims description 3
- 238000012216 screening Methods 0.000 claims description 2
- 238000012795 verification Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 22
- 230000008859 change Effects 0.000 description 20
- 238000004364 calculation method Methods 0.000 description 17
- 230000006870 function Effects 0.000 description 14
- 230000005540 biological transmission Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003238 somatosensory effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
The invention discloses a data processing method, a device, a system, electronic equipment and a storage medium, wherein the method acquires first data from a database according to a data request from a client; determining a first identification value based on the first data, and writing the first identification value into a preset field of the first data; sending the first data written with the first identification value to the client; determining a second identification value according to the second data, wherein the second data is obtained by editing the first data by the client and contains the first identification value; determining whether the second data has changed from the first data based on the first identification value and the second identification value; and if the second data changes relative to the first data, sending the second data to the database for storage. The invention can improve the interface response speed and reduce the verification cost of the client request data.
Description
Technical Field
The present invention relates to the field of software technologies, and in particular, to a data processing method, apparatus, system, electronic device, and storage medium.
Background
When a user client requests data to a server for displaying, for example, accesses a webpage to request for displaying a personal information page, the server returns corresponding display data, for example, personal information data, to the client according to the request. If the user edits part or all of the displayed personal information data and submits an Http (HyperText Transfer Protocol) request to the server, the edited data is submitted to the server for storage.
In order to save the performance of the server, the existing method is generally that the server compares the currently stored data submitted by the user with the parameters initially requested by the user at the client one by one, and stores the currently stored data submitted by the user if the data is confirmed to be changed (the data is actually modified by the editing operation), and does not store the currently stored data if the data is not changed.
The above-mentioned server side has the following disadvantages to check the change of the parameter:
when the server side judges the parameter change, the server side needs to obtain the corresponding parameters sent when the user requests from the database again, namely the unedited request data sent to the client side user by the server side. And the response time of the interface is reduced by acquiring the data from the database again, the IO cost of database reading is higher, and the cost of data processing is improved. Data storage is a relatively frequent operation, and an excessively costly verification scheme should not be adopted.
Disclosure of Invention
The invention aims to provide a data processing method, a data processing device, an electronic device and a computer readable storage medium, so as to reduce data processing cost.
According to a first aspect of the present invention, there is provided a data processing method, the method comprising:
acquiring first data from a database according to a data request from a client;
determining a first identification value based on the first data, and writing the first identification value into a preset field of the first data;
sending the first data written with the first identification value to the client;
determining a second identification value according to the second data, wherein the second data is obtained by editing the first data by the client and contains the first identification value;
determining whether the second data has changed from the first data based on the first identification value and the second identification value;
and if the second data changes relative to the first data, sending the second data to the database for storage.
Optionally, determining a first identification value based on the first data, and writing the first identification value into a preset field of the first data, includes:
determining a user-editable field in the first data; and
determining a first identification value for a content value corresponding to a user-editable field of the first data;
and writing the determined first identification value into a preset field of the first data.
Optionally, determining the second identification value according to the second data includes:
determining a user-editable field in the second data; and
determining a second identification value for a content value corresponding to a user-editable field of the second data;
wherein the user-editable field in the first data is the same as the user-editable field in the second data.
Optionally, determining a first identification value based on the first data includes:
determining a user editable field in the first data according to a preset first attribute parameter;
determining whether the data request meets a request category indicated by a preset second attribute parameter;
determining the first identification value from a content value of the user editable field if the data request satisfies the request category indicated by the second attribute parameter.
Optionally, determining a first identification value based on the first data includes:
determining a user editable field in the first data according to a preset first attribute parameter and a preset third attribute parameter;
determining whether the data request meets a request category indicated by a preset second attribute parameter;
and if the data request is determined to meet the request category indicated by the second attribute parameter, determining the first identification value according to the content value corresponding to the user editable field determined from the first data.
Optionally, determining a user-editable field in the first data according to the preset first attribute parameter and the preset third attribute parameter includes:
screening the user non-editable fields from the first data according to the third attribute parameters;
and determining the user editable field from the first data with the screened user non-editable field according to the first attribute parameter.
Optionally, determining whether the second data changes from the first data based on the first identification value and the second identification value includes:
when the first identification value is consistent with the second identification value, determining that the second data is unchanged relative to the first data; or
And when the first identification value and the second identification value are not consistent, determining that the second data is changed relative to the first data.
Optionally, the method further includes:
before determining a first identification value based on the first data and writing the first identification value into a preset field of the first data, adding a field attribute to the first data to determine the preset field for storing the first identification value.
According to a second aspect of the present invention, there is provided a data processing method, the method comprising:
sending a data request to a server side so that the server side can acquire first data according to the data request;
receiving first data and a first identification value sent by a server end in response to a data request, wherein the first identification value is determined by the server end according to the first data;
detecting an operation instruction of a user to edit the first data to obtain second data; and
and sending the first identification value and the second data to the server.
According to a third aspect of the present invention, there is provided a data processing apparatus provided on a server side, the apparatus comprising:
the acquisition module is used for acquiring first data from a database according to a data request from a client;
the first determining module is used for determining a first identification value based on the first data and writing the first identification value into a preset field of the first data;
a first sending module, configured to send the first data written with the first identification value to the client;
a second determining module, configured to determine a second identification value according to the second data, where the second data is obtained by editing the first data by the client and includes the first identification value;
a third determining module, configured to determine whether the second data changes from the first data based on the first identification value and the second identification value;
and the second sending module is used for sending the second data to the database for storage if the second data changes relative to the first data.
According to a fourth aspect of the present invention, there is provided a data processing apparatus provided at a client, the apparatus comprising:
the first sending module is used for sending a data request to the server side so that the server side can obtain first data according to the data request;
a receiving module, configured to receive first data and a first identification value that are sent by a server end in response to the data request, where the first identification value is determined by the server end according to the first data;
the detection module is used for detecting an operation instruction of a user to edit the first data to obtain second data; and
and the second sending module is used for sending the first identification value and the second data to a server end so that the server end determines whether the second data changes relative to the first data according to the first identification value and the second identification value, wherein the second identification value is determined according to the first data.
According to a fifth aspect of the present invention, there is provided a data processing system, the system comprising:
a data processing apparatus according to the third aspect of the invention; and
a data processing apparatus according to a fourth aspect of the present invention;
wherein, the data processing device according to the third aspect of the invention and the data processing device according to the fourth aspect of the invention are connected in communication.
According to a sixth aspect of the present invention, there is provided an electronic apparatus comprising:
a data processing apparatus according to the third or fourth aspect of the present invention; or,
a processor and a memory for storing executable instructions for controlling the processor to perform the data processing method according to the first or second aspect of the invention.
According to a seventh aspect of the present invention, there is provided a computer readable storage medium having stored thereon a computer program which, when executed by a processor, implements the data processing method according to the first or second aspect of the present invention.
According to the embodiment of the invention, the server checks whether the data requested by the client changes or not, so that the problem that the processing performance of the client is reduced due to too many client processing parameters under the condition that the requested data of the client changes frequently is avoided, the processing performance of the server is stronger and better than that of the client, the operation of a user can be responded quickly, the server can respond quickly even under the condition that the requested data of the client changes frequently, the client is not depended on, the applicable range is expanded, and the tampering risk of the checking logic (code) in the checking process of the client can be avoided. In addition, the server checks whether the client request data changes or not through the identification value (tag) determined by the first data and the identification value (tag) of the second data, so that data re-reading and frequent operation from the database in a checking stage are avoided, IO cost of database reading is reduced, and the response speed of a request interface can be improved. And the data is not checked, but is checked through an identification value (tag), so that the system is separated from service, has low coupling and can be started and stopped simply and quickly.
Other features of the present invention and advantages thereof will become apparent from the following detailed description of exemplary embodiments thereof, which proceeds with reference to the accompanying drawings.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments of the invention and together with the description, serve to explain the principles of the invention.
Fig. 1 is a block diagram of a hardware configuration structure of an electronic device that can be used to implement an embodiment of the present invention.
FIG. 2 is a flowchart illustrating a data processing method according to a first embodiment of the present invention.
FIG. 3 is a flowchart illustrating a data processing method according to a second embodiment of the present invention.
FIG. 4 is a flowchart illustrating a data processing method according to a third embodiment of the present invention.
Fig. 5 is a diagram illustrating a scenario of a data processing method according to an embodiment of the present invention.
Fig. 6 is a block diagram showing a configuration of a data processing apparatus according to a first embodiment of the present invention.
Fig. 7 is a block diagram showing a configuration of a data processing apparatus according to a second embodiment of the present invention.
FIG. 8 is a block diagram of a data processing system according to an embodiment of the present invention.
Fig. 9 is a block diagram of an electronic device according to an embodiment of the present invention.
Detailed Description
Various exemplary embodiments of the present invention will now be described in detail with reference to the accompanying drawings. It should be noted that: the relative arrangement of the components and steps, the numerical expressions and numerical values set forth in these embodiments do not limit the scope of the present invention unless specifically stated otherwise.
The following description of at least one exemplary embodiment is merely illustrative in nature and is in no way intended to limit the invention, its application, or uses.
Techniques, methods, and apparatus known to those of ordinary skill in the relevant art may not be discussed in detail but are intended to be part of the specification where appropriate.
In all examples shown and discussed herein, any particular value should be construed as merely illustrative, and not limiting. Thus, other examples of the exemplary embodiments may have different values.
It should be noted that: like reference numbers and letters refer to like items in the following figures, and thus, once an item is defined in one figure, further discussion thereof is not required in subsequent figures.
Fig. 1 is a block diagram showing a configuration of hardware of an electronic apparatus 1000 that can implement an embodiment of the present invention.
The electronic device 1000 may be a laptop, desktop, cell phone, tablet, server, etc.
The servers can be unitary servers or distributed servers across multiple computers or computer data centers. The server may be of various types, such as, but not limited to, a node device of a content distribution network, a storage server of a distributed storage system, a cloud database server, a cloud computing server, a cloud management server, a web server, a news server, a mail server, a message server, an advertisement server, a file server, an application server, an interaction server, a storage server, a database server, a proxy server, or the like. In some embodiments, each server may include hardware, software, or embedded logic components or a combination of two or more such components for performing the appropriate functions supported or implemented by the server. For example, a server, such as a blade server, a cloud server, etc., or may be a server group consisting of a plurality of servers, which may include one or more of the above types of servers, etc.
As shown in fig. 1, the electronic device 1000 may include a processor 1100, a memory 1200, an interface device 1300, a communication device 1400, a display device 1500, an input device 1600, a speaker 1700, a microphone 1800, and the like. The processor 1100 may be a central processing unit CPU, a microprocessor MCU, or the like. The memory 1200 includes, for example, a ROM (read only memory), a RAM (random access memory), a nonvolatile memory such as a hard disk, and the like. The interface device 1300 includes, for example, a USB interface, a headphone interface, and the like. The communication device 1400 is capable of wired or wireless communication, for example, and may specifically include WiFi communication, bluetooth communication, 2G/3G/4G/5G communication, and the like. The display device 1500 is, for example, a liquid crystal display panel, a touch panel, or the like. The input device 1600 may include, for example, a touch screen, a keyboard, a somatosensory input, and the like. A user can input/output voice information through the speaker 1700 and the microphone 1800.
The electronic device shown in fig. 1 is merely illustrative and is in no way meant to limit the invention, its application, or uses. In an embodiment of the present invention, the memory 1200 of the electronic device 1000 is configured to store instructions for controlling the processor 1100 to operate so as to execute any data processing method provided by the embodiment of the present invention. It will be appreciated by those skilled in the art that although a plurality of means are shown for the electronic device 1000 in fig. 1, the present invention may relate to only some of the means therein, e.g. the electronic device 1000 may relate to only the processor 1100 and the storage means 1200. The skilled person can design the instructions according to the disclosed solution. How the instructions control the operation of the processor is well known in the art and will not be described in detail herein.
Referring now to FIG. 2, FIG. 2 is a flowchart illustrating steps of a data processing method according to a first embodiment of the present invention. The data processing method of the present embodiment may be implemented by an electronic device, which may be, for example, the electronic device 1000 shown in fig. 1.
As shown in fig. 2, the data processing method according to the embodiment of the present invention includes the following steps:
and 112, if the second data changes relative to the first data, sending the second data to the database for storage.
In step 102, the first data is corresponding data provided according to a data request sent by a client user, for example, when the user requests to browse a certain page, the server needs to be requested to provide the corresponding data for display. At this time, the server acquires corresponding display data from the database according to the data request of the user and sends the display data to the client, so that the user can see the page to be displayed.
In step 104, when determining the first identification value based on the first data, a user-editable field in the first data is first determined. The first data is a series of character strings, and is expressed in key: the value form places the corresponding data content into a string.
The first data includes data usable by a user and interactively used data such as public data and hidden data, and the user-editable field (corresponding key) in the first data refers to a field in which a client user can edit data of webpage display content during data display, for example, client information includes three fields, namely name, gender and address. Of course, there are only two of the three fields of customer information that may be edited, and the fields used by the present invention to determine the identification (tag) value are only for those fields that are editable by the user.
After determining the user-editable field in the first data, determining a first identification value for a content value (corresponding value) corresponding to the user-editable field of the first data. The identification (tag) value is a unique value calculated according to the content value of the corresponding field, and can be used for uniquely identifying the values of the fields, and if the value of any one of the fields is changed, the tag value calculated correspondingly is also changed necessarily.
In one example, the tag value calculated from the content value corresponding to the user-editable field may be obtained by calculating a Hash value using a Hash (Hash) algorithm, or may be obtained by using another calculation method, for example, calculating the md5 value as the tag value.
And calculating a tag value corresponding to the first data is finished at the server side, writing the tag value into a preset field of the first data after the tag value is obtained, and sending the tag value to the client side along with the first data. For example, by creating a change identification (ChangeTag) class, which contains a tag attribute as the preset field, the change identification class is used to record the unique identification of the object (first data), i.e. the first tag value.
In one example, prior to determining the first tag value based on the first data and writing the first tag value into a preset field of the first data, a field attribute is added to the first data to determine the preset field for storing the first tag value of the first data.
In step 108, similarly, the corresponding second identification value is determined according to the second data returned by the client, and it is also necessary to first determine the user-editable field in the second data, and determine the second identification (tag) value for the content value corresponding to the user-editable field of the second data. The second data is obtained by editing the first data by a user of the client and comprises the first tag value, and the user editable field corresponding to the second data is the same as the user editable field in the first data.
Then, a second tag value is determined by using the same calculation algorithm as that for determining the first tag value, and a value corresponding to the user-editable field key in the second data is calculated to obtain a second tag value, a hash value or an md5 value. The second tag value is also a unique value calculated from the content value of the corresponding field of the second data. The second tag value is also executed at the server side, so that the server side can determine the tag value corresponding to the first data and the tag value corresponding to the second data.
In step 110, it is determined whether the second data is changed from the first data by further comparing the first tag value with the second tag value. That is, whether the client user actually modified the requested data, such as the content of the presented data page.
Specifically, when the first tag value and the second tag value are consistent, it is determined that the second data is unchanged relative to the first data; and when the first tag value and the second tag value are not consistent, determining that the second data is changed relative to the first data.
In step 112, if the second data changes from the first data, i.e., it is determined that the client user actually modified the requested data, the modified second data is sent to the database for storage. Otherwise, if the client user is determined not to actually modify the data, the storage operation is not executed to the database.
The embodiment of the invention checks whether the data requested by the client is changed or not by the server, avoids the problem that the processing performance of the client is reduced due to too many client processing parameters under the condition that the requested data of the client is changed more, has stronger and better processing performance than the client, can quickly respond to the operation of a user, can quickly respond even under the condition that the data requested by the client is changed more, does not depend on the client, expands the applicable range, and can avoid the tampering risk of the check logic (code) in the checking process of the client.
In addition, the server checks whether the client request data changes or not through the identification value (tag) determined by the first data and the identification value (tag) of the second data, so that data re-reading and frequent operation from the database in a checking stage are avoided, IO cost of database reading is reduced, and the response speed of a request interface can be improved. And the data is not checked, but is checked through an identification value (tag), so that the system is separated from service, has low coupling and can be started and stopped simply and quickly.
In another embodiment of the present invention, a data processing method is further provided, as shown in fig. 3, and fig. 3 is a flowchart of steps of the data processing method according to the second embodiment of the present invention. The data processing method of the present embodiment may be implemented by an electronic device, which may be, for example, the electronic device 1000 shown in fig. 1.
Different from the embodiment of fig. 2, in the data processing method of this embodiment, when determining the first identification value based on the first data, when determining the tag value of the first data and the tag value of the second data, by introducing annotation and AOP (Aspect organized Programming), automatic calculation of the tag value of the first data sent by the response client may be implemented, and further, automatic parameter change checking of the tag value of the second data edited by the client may be implemented.
As shown in fig. 3, the data processing method according to the second embodiment of the present invention, in which the determination of the first identification value based on the first data includes the steps of:
In step 202, the preset attributes corresponding to the first attribute parameter and the second attribute parameter may be obtained by creating a computation identifier (CalTag) annotation, where the CalTag annotation is placed in a data storage object storing the first data.
In one example, the Caltag annotation contains a first attribute includeFields and a second attribute calcular, for example, the includeFields attribute describes a field in the corresponding data that needs to participate in tag computation, the calcular attribute describes whether tag computation is enabled, the first attribute is assigned as a first attribute parameter for determining a user-editable field in the first data, and the second attribute is assigned as a second attribute parameter for determining that tag computation is enabled. In the calculation, for example, there are 10 fields in the first data, where 2 fields are fields that the corresponding user can edit, and the field that needs to participate in tag calculation described by the include fields attribute parameter may be these 2 fields.
In one example, the Caltag annotation further includes a third attribute, such as an excludFields attribute, that describes a field in the corresponding data that is not required to participate in the tag computation, the third attribute being assigned a third attribute parameter for determining a user non-editable field in the first data. Similarly, if there are 10 fields in the first data, 8 fields are fields that correspond to user editable fields, then the fields that need not participate in tag computation may be 2 fields that correspond to non-user editable fields, which may be described by the excludwields attribute parameters.
At this time, in step 202, the user-editable field in the first data is determined according to the preset first attribute parameter and the preset third attribute parameter. Specifically, the user non-editable fields are screened out from the first data according to a third attribute parameter; and determining the fields which can be edited by the user from the first data of which the fields which can not be edited by the user are screened out according to the first attribute parameter.
If neither the includeFields attribute nor the excludwields attribute has a parameter assignment, the default corresponding first data is all for fields that are editable by the user, and at this time, the default all fields need to participate in the calculation.
In one example, an enableautocalltag annotation may also be created, which is placed on a function (or method) that performs sending the first data to the client.
The created enableautocalltag annotation is used to identify the methods that need to automatically compute the tag value, which is enabled on the method that returns the first data to the front end (client).
The automatic calculation of the tag value may be achieved by intercepting a calltag annotation and an enableautocalltag annotation of the first data sent to the client, and the interception annotation may be achieved by creating an AOP interception class autocalagterase. Intercepting all functions (methods) which enable the Enable AutoCalTag annotation by using the AOP interception class AutoCalTagAssict.
And calculating the user editable field in the first data according to the intercepted Caltag annotation and the Enable AutoCaltag annotation and the attribute parameters in the Caltag annotation to obtain a first tag value.
After the AOP interception class AutoCalTagAssect intercepts all methods enabling the Enable AutoCalTag annotation, the object (namely, first data) in the returned value of the method is subjected to calculation of the tag value according to the configuration of the CalTag annotation, and the calculation method adopts a hash value, for example, and the calculation result is stored in the tag attribute of the base class change identification (ChangeTag) class of the returned value object, namely the preset field of the first data. The ChangeTag class may also contain a parameter changed attribute for identifying whether the first data has changed.
Intercepting a Caltag annotation and an automatic check parameter change (EnableAutoCheckChanged) annotation when receiving second request data and a first tag sent by a client, wherein the second request data are stored in a data storage object, the Caltag annotation describes a user editable field in the second request data, and the user editable field in the Caltag annotation described second request data is the same as the user editable field in the first response data; and the Enable AutoCheckChanged annotation is arranged on the function executing the second request data sent by the receiving client and is used for identifying the function needing to automatically check the parameter change.
All objects returned to and accepting parameters (data) from the client are inherited to a ChangeTag class and the calltag annotation is enabled, with its properties, to configure which properties of the parameter class will be referenced into the data processing.
Here, intercepting the CalTag annotation and the enableautochekchanged annotation are also performed by the AOP interception class autocalctagevaluate, and the created enableautochekchanged annotation is used for identifying the method (function) that needs to automatically check the parameter change. I.e. the annotation is enabled on the method that needs to check for parameter changes, i.e. the method that receives the client second request data. The method for automatically checking the parameter variation includes calculating a tag value of the second request data and comparing the tag value with a tag value corresponding to the first response data.
The AOP interception class autocagAssict intercepts all methods that enable EnableAutoCheckChanged annotation. The Enable AutoCheckChanged annotation method is that a tag value is calculated for a parameter object of the method according to the configuration of Caltag annotation, a hash value is adopted in the calculation method, the calculated value is compared with the existing tag value of the object (tag attribute of base class ChangTag class of the object), and the value of the changed attribute is determined according to the comparison result.
And step 208, after the AOP interception class AutoCalTagAssect intercepts the CalTag annotation and the Enable AutoCheckChanged annotation, calculating the user editable field in the second request data according to the intercepted CalTag annotation and the Enable AutoCheckChanged annotation to obtain a second tag value.
Step 210, comparing the first tag value with the second tag value.
Step 212, determining a parameter change (changed) attribute of the change identification class (i.e. the ChangeTag class) according to the comparison result, wherein the parameter change attribute of the change identification class is used for identifying whether the object is changed. If the values are the same, the value of the changed attribute is set to false, otherwise, the value is set to true.
Step 214, determining whether the parameter corresponding to the first response data changes according to the parameter change attribute of the change identification class. By the method, when the client requests the server for data display, the tag of the first response data can be automatically calculated by the first response data returned by the server through the processing of the autocal tag access interception class, and the tag value (the first identification value) and the first response data are transmitted to the client together.
The client re-submits the second request data to the server after editing the first response data, and submits the previous tag value (first identification value) to the server together.
After the server receives the request parameter (second request data) of the client, the second request data is processed by the autocalagaspectintercept class to automatically check whether the received data is changed, and whether the change occurs can be known only by reading whether the changed attribute of the parameter object is true.
According to the data processing method, annotation and AOP are introduced, so that tag value calculation and tag value change comparison are automatically achieved, use cost is reduced, and convenience is improved. By introducing annotations and AOP interceptors, a global automated process is achieved without having to write code separately for each interface to handle the logic. The business program can be simply and quickly introduced into the module, and the function can be used through configuration annotation. Therefore, the method has the advantages of service disconnection, low coupling and simple and quick start and stop.
The invention can realize the requirement of parameter change verification under the condition of effectively ensuring the performance of the interface, and can be simply and quickly applied to the existing program.
In another embodiment of the present invention, a data processing method is further provided, as shown in fig. 4, and fig. 4 is a flowchart of steps of a data processing method according to a third embodiment of the present invention. The data processing method of the present embodiment may be implemented by an electronic device, which may be, for example, the electronic device 1000 shown in fig. 1.
Different from the embodiments of fig. 2 and 3, the data processing method of the present embodiment is executed at the client, and executed in correspondence with the data processing method of the embodiments of fig. 2 and 3.
As shown in the figure, the data processing method of the present embodiment includes the following steps:
And the client receives the first identification value sent by the server and identifies the first data and second data obtained after editing the first data based on the operation instruction of the user. When the second data is returned, the server side can know that the correspondingly received second data corresponds to the first data from the first identification value returned by the client side. In this way, after the server calculates the second tag value for the second data, the first tag value stored by the server may be correspondingly obtained and compared with the second tag value, so as to confirm whether the client actually modifies the initial request data.
Next, an example description will be given of the data processing methods according to the above two embodiments of the present invention with reference to the application scenario of fig. 5, where fig. 5 is an exemplary diagram of a data processing method scenario according to an embodiment of the present invention.
Step 302, a client requests data from a server;
step 304, the server side reads data from a database according to the request of the client side;
step 306, the database returns corresponding data to the server;
step 308, the server determines a first tag value for the received database data, i.e. the first data (in the case of annotation introduction and AOP interception, it is determined that the first tag value is an automatic calculation performed by automatically intercepting the annotation at this time);
step 310, the server returns first data and a first tag value responding to the client request, wherein the first tag value is written into a preset field of the first data;
step 312, the client detects that the operation instruction of the user edits the first data returned by the server to obtain second data;
step 314, the client submits the storage operation of the editing data to the server, namely, the first identification value and the second data are sent to the server;
step 316, the server receives the second data sent by the client, and recalculates the corresponding tag value for the second data to obtain a second tag value, and compares the second tag value with the existing tag value written in the predetermined field of the first data in step 208 to check whether the second data changes relative to the first data (under the condition of introducing annotation and AOP interception, the second tag value is calculated at this time, and the change of the first tag value and the second tag value is compared, so as to automatically check parameter change executed for automatically intercepting the annotation).
In another embodiment of the present invention, a data processing apparatus 2000 is further provided, as shown in fig. 6, and fig. 6 is a block diagram illustrating a structure of the data processing apparatus according to the first embodiment of the present invention.
The data processing apparatus 2000 of this embodiment is disposed on a server side, and includes an obtaining module 2100, a first determining module 2200, a first sending module 2400, a second determining module 2600, a third determining module 2700, and a second sending module 2800.
An obtaining module 2100, configured to obtain first data from a database according to a data request from a client;
a first determining module 2200, configured to determine a first identification value based on the first data, and write the first identification value into a preset field of the first data;
a first sending module 2400, configured to send the first data written with the first identification value to the client;
a second determining module 2600, configured to determine a second identification value according to the second data, where the second data is obtained by editing the first data by the client and includes the first identification value;
a third determining module 2700, configured to determine whether the second data changes from the first data based on the first identification value and the second identification value;
a second sending module 2800, configured to send the second data to the database for storage if the second data changes from the first data.
In one example, the first determination module 2200 determines a user-editable field in the first data; determining the first identification value for a content value corresponding to a user-editable field of the first data; and writing the determined first identification value into a preset field of the first data.
In one example, the second determination module 2600 determines a user-editable field in the second data; and determining the second identification value for a content value corresponding to a user-editable field of the second data. Wherein the user-editable field in the first data is the same as the user-editable field in the second data.
In one example, the first determining module 2200 determines the user-editable field in the first data according to a preset first attribute parameter (i.e., a parameter describing which fields need to participate in tag calculation); determining whether the data request meets a request category indicated by a preset second attribute parameter (i.e., a parameter describing data request enabling tag calculation); determining the first identification value from a content value of the user editable field if the data request satisfies the request category indicated by the second attribute parameter.
In one example, the first determining module 2200 determines the user-editable field in the first data according to a preset first attribute parameter (i.e., which fields need to participate in the tag calculation) and a preset third attribute parameter (i.e., which parameters describe which fields need not participate in the tag calculation); determining whether the data request meets a request category indicated by a preset second attribute parameter (i.e., a parameter describing data request enabling tag calculation); and if the data request is determined to meet the request category indicated by the second attribute parameter, determining the first identification value according to the content value corresponding to the user editable field determined from the first data.
Further, in an example, the first determining module 2200 screens the non-editable field of the user from the first data according to the third attribute parameter, and determines the editable field of the user from the first data with the non-editable field of the user screened according to the first attribute parameter.
In one example, the third determining module 2700 is configured to determine that the second data is unchanged from the first data when the first identification value and the second identification value are consistent; and when the first identification value and the second identification value are not consistent, determining that the second data is changed relative to the first data.
In one example, the data processing apparatus 2000 further includes an adding module (not shown in the figure) for adding a field attribute to the first data to determine a preset field for storing the first identification value before the first determining module 2200 determines the first identification value based on the first data and writes the first identification value into the preset field of the first data.
Referring now to fig. 7, fig. 7 is a block diagram illustrating a data processing apparatus according to a second embodiment of the present invention. The data processing apparatus 4000 of this embodiment is provided at a client, and includes, as shown in fig. 7:
a first sending module 4200, configured to send a data request to a server, so that the server obtains first data according to the data request;
a receiving module 4400, configured to receive first data and a first identifier value sent by the server end in response to the data request, where the first identifier value is determined by the server end according to the first data;
a detection module 4500, configured to detect an operation instruction of a user to edit the first data to obtain second data; and
a second sending module 4600, configured to send the first identification value and the second data to the server, so that the server determines whether the second data changes with respect to the first data according to the first identification value and the second identification value, where the second identification value is determined according to the first data.
In addition, in a further embodiment of the present invention, a data processing system 5000 is further provided, and fig. 8 is a block diagram of a data processing system according to an embodiment of the present invention.
As shown in fig. 8, the data processing system 5000 includes the aforementioned data processing apparatus 4000 provided at the client and the data processing apparatus 2000 provided at the client, and the data processing 4000 and the data processing system 2000 are communicatively connected.
According to still another embodiment of the present invention, there is also provided an electronic apparatus, and the electronic apparatus 6000 may be the electronic apparatus 1000 shown in fig. 1. Fig. 9 is a block diagram of an electronic device according to an embodiment of the present invention.
In one aspect, the electronic device 6000 may include any of the data processing apparatuses 2000 and 4000 described above, for implementing the data processing method according to any of the embodiments of the present invention.
On the other hand, as shown in fig. 9, the electronic device 6000 may include a memory 6200 and a processor 6400, the memory 6200 being for storing executable instructions; the instructions are for controlling the processor 6400 to perform the aforementioned data processing method.
In this embodiment, the electronic device 6000 can be any electronic product having a memory 6200 and a processor 6400, such as a mobile phone, a tablet computer, a palmtop computer, a desktop computer, a notebook computer, a workstation, a game console, a server, and the like.
Finally, according to yet another embodiment of the present invention, there is also provided a computer-readable storage medium having stored thereon a computer program which, when executed by a processor, implements a data processing method according to any of the embodiments of the present invention.
The present invention may be a system, method and/or computer program product. The computer program product may include a computer-readable storage medium having computer-readable program instructions embodied therewith for causing a processor to implement various aspects of the present invention.
The computer readable storage medium may be a tangible device that can hold and store the instructions for use by the instruction execution device. The computer readable storage medium may be, for example, but not limited to, an electronic memory device, a magnetic memory device, an optical memory device, an electromagnetic memory device, a semiconductor memory device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a Static Random Access Memory (SRAM), a portable compact disc read-only memory (CD-ROM), a Digital Versatile Disc (DVD), a memory stick, a floppy disk, a mechanical coding device, such as punch cards or in-groove projection structures having instructions stored thereon, and any suitable combination of the foregoing. Computer-readable storage media as used herein is not to be construed as transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission medium (e.g., optical pulses through a fiber optic cable), or electrical signals transmitted through electrical wires.
The computer-readable program instructions described herein may be downloaded from a computer-readable storage medium to a respective computing/processing device, or to an external computer or external storage device via a network, such as the internet, a local area network, a wide area network, and/or a wireless network. The network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers and/or edge servers. The network adapter card or network interface in each computing/processing device receives computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in a computer-readable storage medium in the respective computing/processing device.
The computer program instructions for carrying out operations of the present invention may be assembler instructions, Instruction Set Architecture (ISA) instructions, machine-related instructions, microcode, firmware instructions, state setting data, or source or object code written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, C + + or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The computer-readable program instructions may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider). In some embodiments, aspects of the present invention are implemented by personalizing an electronic circuit, such as a programmable logic circuit, a Field Programmable Gate Array (FPGA), or a Programmable Logic Array (PLA), with state information of computer-readable program instructions, which can execute the computer-readable program instructions.
Aspects of the present invention are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer-readable program instructions.
These computer-readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. These computer-readable program instructions may also be stored in a computer-readable storage medium that can direct a computer, programmable data processing apparatus, and/or other devices to function in a particular manner, such that the computer-readable medium storing the instructions comprises an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer, other programmable apparatus or other devices implement the functions/acts specified in the flowchart and/or block diagram block or blocks.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions. It is well known to those skilled in the art that implementation by hardware, implementation by software, and implementation by a combination of software and hardware are equivalent.
Having described embodiments of the present invention, the foregoing description is intended to be exemplary, not exhaustive, and not limited to the embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The terminology used herein is chosen in order to best explain the principles of the embodiments, the practical application, or improvements made to the technology in the marketplace, or to enable others of ordinary skill in the art to understand the embodiments disclosed herein. The scope of the invention is defined by the appended claims.
Claims (14)
1. A method of data processing, the method comprising:
acquiring first data from a database according to a data request from a client;
determining a first identification value based on the first data, and writing the first identification value into a preset field of the first data;
sending the first data written with the first identification value to the client;
determining a second identification value according to the second data, wherein the second data is obtained by editing the first data by the client and contains the first identification value;
determining whether the second data has changed from the first data based on the first identification value and the second identification value;
and if the second data changes relative to the first data, sending the second data to the database for storage.
2. The method of claim 1, wherein determining a first identification value based on the first data and writing the first identification value into a preset field of the first data comprises:
determining a user-editable field in the first data; and
determining the first identification value for a content value corresponding to a user-editable field of the first data;
and writing the determined first identification value into a preset field of the first data.
3. The method of claim 1, wherein said determining a second identification value from said second data comprises:
determining a user-editable field in the second data; and
determining the second identification value for the content value corresponding to the user-editable field of the second data;
wherein the user-editable field in the first data is the same as the user-editable field in the second data.
4. The method of claim 1, wherein the determining a first identification value based on the first data comprises:
determining a user editable field in the first data according to a preset first attribute parameter;
determining whether the data request meets a request category indicated by a preset second attribute parameter;
determining the first identification value from a content value of the user editable field if the data request satisfies the request category indicated by the second attribute parameter.
5. The method of claim 1, wherein the determining a first identification value based on the first data comprises:
determining a user editable field in the first data according to a preset first attribute parameter and a preset third attribute parameter;
determining whether the data request meets a request category indicated by a preset second attribute parameter;
and if the data request is determined to meet the request category indicated by the second attribute parameter, determining the first identification value according to the content value corresponding to the user editable field determined from the first data.
6. The method of claim 5, wherein the determining the user-editable field in the first data according to the preset first attribute parameter and the preset third attribute parameter comprises:
screening the user non-editable fields from the first data according to the third attribute parameters;
and determining the user editable field from the first data with the screened user non-editable field according to the first attribute parameter.
7. The method of claim 1, wherein said determining whether the second data has changed from the first data based on the first identification value and the second identification value comprises:
when the first identification value is consistent with the second identification value, determining that the second data is unchanged relative to the first data; or
And when the first identification value and the second identification value are not consistent, determining that the second data is changed relative to the first data.
8. The method of claim 1, wherein the method further comprises:
before determining a first identification value based on the first data and writing the first identification value into a preset field of the first data, adding a field attribute to the first data to determine the preset field for storing the first identification value.
9. A method of data processing, the method comprising:
sending a data request to a server side so that the server can acquire first data according to the data request;
receiving first data and a first identification value sent by a server end in response to the data request, wherein the first identification value is determined by the server end according to the first data;
detecting an operation instruction of a user to edit the first data to obtain second data; and
and sending the first identification value and the second data to a server side so that the server side determines whether the second data changes relative to the first data according to the first identification value and the second identification value, wherein the second identification value is determined according to the first data.
10. A data processing apparatus, provided on a server side, the apparatus comprising:
the acquisition module is used for acquiring first data from a database according to a data request from a client;
the first determining module is used for determining a first identification value based on the first data and writing the first identification value into a preset field of the first data;
a first sending module, configured to send the first data written with the first identification value to the client;
a second determining module, configured to determine a second identification value according to the second data, where the second data is obtained by editing the first data by the client and includes the first identification value;
a third determining module, configured to determine whether the second data changes from the first data based on the first identification value and the second identification value;
and the second sending module is used for sending the second data to the database for storage if the second data changes relative to the first data.
11. A data processing apparatus, provided at a client, the apparatus comprising:
the first sending module is used for sending a data request to the server side so that the server side can obtain first data according to the data request;
a receiving module, configured to receive first data and a first identification value that are sent by a server end in response to the data request, where the first identification value is determined by the server end according to the first data;
the detection module is used for detecting an operation instruction of a user to edit the first data to obtain second data; and
and the second sending module is used for sending the first identification value and the second data to a server end so that the server end determines whether the second data changes relative to the first data according to the first identification value and the second identification value, wherein the second identification value is determined according to the first data.
12. A data processing system, characterized in that the system comprises:
the data processing apparatus of claim 10; and
the data processing apparatus of claim 11;
wherein a communication connection is provided between a data processing device according to claim 10 and a data processing device according to claim 11.
13. An electronic device, comprising:
the data processing apparatus according to claim 10 or 11; or,
a processor and a memory for storing executable instructions for controlling the processor to perform the data processing method of any of claims 1 to 9.
14. A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the data processing method according to any one of claims 1 to 9.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010105199.XA CN111367898B (en) | 2020-02-20 | 2020-02-20 | Data processing method, device, system, electronic equipment and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010105199.XA CN111367898B (en) | 2020-02-20 | 2020-02-20 | Data processing method, device, system, electronic equipment and storage medium |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111367898A true CN111367898A (en) | 2020-07-03 |
CN111367898B CN111367898B (en) | 2023-09-22 |
Family
ID=71208175
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010105199.XA Active CN111367898B (en) | 2020-02-20 | 2020-02-20 | Data processing method, device, system, electronic equipment and storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111367898B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113239001A (en) * | 2021-05-21 | 2021-08-10 | 珠海金山网络游戏科技有限公司 | Data storage method and device |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030105812A1 (en) * | 2001-08-09 | 2003-06-05 | Gigamedia Access Corporation | Hybrid system architecture for secure peer-to-peer-communications |
CN1746880A (en) * | 2004-09-07 | 2006-03-15 | 乐金电子(中国)研究开发中心有限公司 | Mobile communication terminal, system and method for personal data managemnt |
US20130218845A1 (en) * | 2009-05-26 | 2013-08-22 | Adobe Systems Incorporated | Web-based collaboration for editing electronic documents |
US8751568B1 (en) * | 2012-02-13 | 2014-06-10 | Symantec Corporation | Systems and methods for data loss prevention |
US20160098469A1 (en) * | 2014-10-07 | 2016-04-07 | Yahoo! Inc. | Method and system for providing a synchronization service |
CN105740418A (en) * | 2016-01-29 | 2016-07-06 | 杭州亿方云网络科技有限公司 | File monitoring and message pushing based real-time synchronization system |
CN108540459A (en) * | 2018-03-22 | 2018-09-14 | 北京京东尚科信息技术有限公司 | Data storage method, device, system, electronic equipment and computer-readable medium |
CN109101812A (en) * | 2018-08-28 | 2018-12-28 | 北京神州绿盟信息安全科技股份有限公司 | A kind of parameter verification method, apparatus, computing device and storage medium |
CN109408522A (en) * | 2018-09-28 | 2019-03-01 | 阿里巴巴集团控股有限公司 | A kind of update method and device of user characteristic data |
CN110008153A (en) * | 2019-04-11 | 2019-07-12 | 苏州浪潮智能科技有限公司 | A kind of method of data synchronization, device, equipment and readable storage medium storing program for executing |
CN110110301A (en) * | 2019-05-09 | 2019-08-09 | 成都终身成长科技有限公司 | File editing method, device, system, client, server and storage medium |
-
2020
- 2020-02-20 CN CN202010105199.XA patent/CN111367898B/en active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030105812A1 (en) * | 2001-08-09 | 2003-06-05 | Gigamedia Access Corporation | Hybrid system architecture for secure peer-to-peer-communications |
CN1746880A (en) * | 2004-09-07 | 2006-03-15 | 乐金电子(中国)研究开发中心有限公司 | Mobile communication terminal, system and method for personal data managemnt |
US20130218845A1 (en) * | 2009-05-26 | 2013-08-22 | Adobe Systems Incorporated | Web-based collaboration for editing electronic documents |
US8751568B1 (en) * | 2012-02-13 | 2014-06-10 | Symantec Corporation | Systems and methods for data loss prevention |
US20160098469A1 (en) * | 2014-10-07 | 2016-04-07 | Yahoo! Inc. | Method and system for providing a synchronization service |
CN105740418A (en) * | 2016-01-29 | 2016-07-06 | 杭州亿方云网络科技有限公司 | File monitoring and message pushing based real-time synchronization system |
CN108540459A (en) * | 2018-03-22 | 2018-09-14 | 北京京东尚科信息技术有限公司 | Data storage method, device, system, electronic equipment and computer-readable medium |
CN109101812A (en) * | 2018-08-28 | 2018-12-28 | 北京神州绿盟信息安全科技股份有限公司 | A kind of parameter verification method, apparatus, computing device and storage medium |
CN109408522A (en) * | 2018-09-28 | 2019-03-01 | 阿里巴巴集团控股有限公司 | A kind of update method and device of user characteristic data |
CN110008153A (en) * | 2019-04-11 | 2019-07-12 | 苏州浪潮智能科技有限公司 | A kind of method of data synchronization, device, equipment and readable storage medium storing program for executing |
CN110110301A (en) * | 2019-05-09 | 2019-08-09 | 成都终身成长科技有限公司 | File editing method, device, system, client, server and storage medium |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113239001A (en) * | 2021-05-21 | 2021-08-10 | 珠海金山网络游戏科技有限公司 | Data storage method and device |
Also Published As
Publication number | Publication date |
---|---|
CN111367898B (en) | 2023-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10409901B2 (en) | Providing collaboration communication tools within document editor | |
US10223698B2 (en) | Integrating a web-based CRM system with a PIM client application | |
US10783128B2 (en) | Rule based data processing | |
KR20130126610A (en) | Identifiers for style sheets | |
US10650085B2 (en) | Providing interactive preview of content within communication | |
CN107729768B (en) | Page display method and device, intelligent panel and storage medium | |
US20100257413A1 (en) | Verification service for dynamic content update | |
US9934291B2 (en) | Dynamic presentation of a results set by a form-based software application | |
CN111367898B (en) | Data processing method, device, system, electronic equipment and storage medium | |
CN110674426B (en) | Webpage behavior reporting method and device | |
US20160179317A1 (en) | Personalization of a web application | |
US10289432B2 (en) | Adaptively linking data between independent systems based on a uniform resource locator | |
CN113282285B (en) | Code writing method, device, electronic equipment and storage medium | |
KR20200111736A (en) | Dynamic User Interface Blueprint | |
CN115934151A (en) | Method and device for building multi-terminal small program | |
US20170330236A1 (en) | Enhancing contact card based on knowledge graph | |
CN114218191A (en) | System function migration method and device, computer equipment and storage medium | |
CN111460273B (en) | Information pushing method and device | |
EP3289544A1 (en) | Insertion of unsaved content via content channel | |
US20160364090A1 (en) | Transitioning command user interface between toolbar user interface and full menu user interface based on use context | |
US20140280006A1 (en) | Managing text in documents based on a log of research corresponding to the text | |
US12093288B2 (en) | Method, device and program product for generating configuration information of storage system | |
US20220229846A1 (en) | Implementing field-level comments and presence detection | |
CN112380821B (en) | Graphic display method and device and electronic equipment | |
US11663193B2 (en) | Identifying incorrect links |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |