[sincronización de la base de datos de Java] Java: una herramienta de sincronización de configuración potente y flexible basada en el desarrollo de Java

Reimpresión, indique la fuente: https://blog.csdn.net/l1028386804/article/details/80341251

Hace algún tiempo, las herramientas de sincronización de configuración potentes y flexibles basadas en Java entre bases de datos y generadores de datos se deben a que el proyecto necesita escribir dispositivos, en escenarios de aplicaciones reales, a menudo necesitamos almacenar regularmente datos de una base de datos Para sincronizar con otra base de datos, un método común es volcar los datos de la base de datos de origen en un archivo SQL y luego ejecutar el archivo SQL en la base de datos de destino para completar la importación de la base de datos, pero este método tiene al menos los siguientes problemas:

Se requiere operación manual, y la eficiencia es baja. Cuando hay muchas tablas de datos, es fácil pasar por alto o cometer errores. Si desea sincronizar regularmente, el operador olvidará fácilmente que es difícil hacer frente a los cambios frecuentes en las tablas o campos de datos

En vista de los problemas anteriores, libere mano de obra preciosa de este trabajo repetitivo y sin sentido, especialmente desarrollado esta pequeña herramienta, la configuración principal se realiza principalmente en jobs.xml.

La estructura general del proyecto es la siguiente:

MySQL ——> MySQLSQLServer ——> SQLServerMySQL ——> SQLServerSQLServer ——> MySQL

Nota: ——> la base de datos de origen a la izquierda, ——> la base de datos de destino a la derecha, la explicación específica es la siguiente:

Admite MySQL a MySQL para sincronizar datos Admite SQLServer a SQLServer para sincronizar datos Admite MySQL a SQLServer para sincronizar datos Admite SQLServer a MySQL para sincronizar datos

1. Cree una clase de información de base de datos DBInfo

Esta clase almacena principalmente información relacionada con la base de datos, como el controlador de la base de datos, la conexión de la base de datos, el nombre de usuario y la contraseña, etc. Consulte el siguiente código para obtener más detalles:

2. Cree una clase de información de sincronización de trabajos JobInfo

Esta clase almacena principalmente información básica relacionada con tareas programadas, como se muestra en el siguiente código:

3. Cree una clase de utilidad de cadena SpringUtils

Esta clase es principalmente para proporcionar soporte de herramientas unificadas para operaciones de cadenas. En este gadget, la función principal de esta clase es determinar si una cadena dada está vacía. Consulte el siguiente código para obtener más detalles:

4. Crear herramienta

La función principal de esta clase es generar aleatoriamente una cadena de una longitud dada, como se muestra en el siguiente código:

5. Definir constantes Constantes

Esta clase proporciona principalmente información constante para este proyecto e identifica el tipo de base de datos. El código específico es el siguiente:

Las cinco categorías anteriores son nuestras clases de soporte básicas para la sincronización de datos de bases de datos. Después de crear las cuatro categorías anteriores, comenzaremos a escribir servicios de sincronización específicos.

6. Cree la interfaz abstracta DBSync de la base de datos de sincronización

Esta interfaz define principalmente el método de sincronización de la base de datos, el código específico es el siguiente:

7, cree una clase abstracta de sincronización de base de datos AbstractDBSync

Esta clase es principalmente un servicio de sincronización abstracta. Los principales métodos proporcionados actualmente son: eliminar los espacios en los datos leídos del archivo job.xml. El código específico es el siguiente:

8, cree una clase de sincronización de base de datos MySQL MySQLSync

La implementación principal de esta clase es la operación de sincronización antes de la base de datos MySQL. Para el negocio específico, consulte el siguiente código:

9, cree una clase de sincronización de base de datos SQLServer SQLServerSync

Esta clase implementa principalmente la operación de sincronización de datos antes de la base de datos SQLServer. Para el negocio específico, consulte el siguiente código:

10. Cree una clase de fábrica de objetos de sincronización DBSyncFactory

Aquí, creamos la clase MySQLSync o la clase SQLServerSync en forma de fábrica. La clase a crear depende del tipo de base de datos que se pasa, como se muestra en el siguiente código:

11. Cree la clase de implementación concreta JobTask de la tarea de base de datos síncrona

Esta clase implementa la interfaz org.quartz.Job, que implementa principalmente la base de datos de sincronización de tareas programadas. Para más detalles, consulte el siguiente código:

12. Cree un DBSyncBuilder integrado que sincronice los recursos de la base de datos.

El papel principal de esta clase es integrar todos los recursos del proyecto, tales como: leer los archivos de configuración relacionados, crear instancias de objetos de sincronización específicos a través de la clase de fábrica DBSyncFactory, iniciar tareas programadas, sincronizar datos de la base de datos, etc. Consulte el siguiente código para más detalles:

13. Crear la clase de entrada Principal del proyecto

Esta clase es la clase de entrada para iniciar el proyecto, como se muestra en el siguiente código:

Después de escribir el código comercial específico, tenemos que mejorar la información relevante del archivo de configuración.

1. Cree un archivo de configuración jobs.xml

Este archivo es el archivo de configuración central de todo nuestro proyecto. En este archivo, se define la información de la base de datos de origen y destino para la sincronización, tareas de sincronización, etc. Al mismo tiempo, se definen las tablas de datos y los campos de datos para los datos de sincronización. Para obtener más información, consulte lo siguiente Configuracion

2. Crear log4j.properties

No hay mucho que decir sobre esto, como sigue:

3. Crear pom.xml

Este archivo define nuestra estructura y dependencias del proyecto, de la siguiente manera:

Hasta ahora, hemos implementado una poderosa herramienta de sincronización basada en el desarrollo de Java y la configuración flexible de la base de datos. Puede modificar la información de configuración relevante en job.xml según las necesidades específicas para lograr la sincronización antes de la base de datos.

Puede ir al enlace https://download.csdn.net/download/l1028386804/10418915 para descargar el código fuente completo de la herramienta de sincronización entre bases de datos de configuración potentes y flexibles basadas en el desarrollo de Java

Supongo que te gusta

Origin www.cnblogs.com/sqlserver-mysql/p/12723021.html
Recomendado
Clasificación