Primavera de aprendizaje cubo de la familia (3)

Prefacio:

Septiembre del año pasado, mis colegas y yo en los frikis tiempo ganado cubo de la familia Ding Xuefeng primavera de aprendizaje, el plan de estudios se divide en 16 capítulos en total, he aprendido la mayor parte, son registrados en un cuaderno antes, hoy quiero grabar en el blog, compartir más conocimiento a las personas que necesitan ayuda, voy a ser el número de capítulos como el contenido del artículo, el curso original hablar con más detalle, yo estoy aquí para hacer un resumen sobre algunos puntos específicos.

.Spring de una abstracción de transacciones

modelo de transacción consistente 

  • JDBC / Hibernate / mybatis
  • Dtsourche / Jria

 abstracción de transacción de interfaces principales

PlatformTransactionManager

  • DataSourceTransactionManager
  • HibernateTransactionManager
  • JtaTransactionManager

TransactionDefinition

  • Propagación
  • Islation
  • Se acabó el tiempo
  • Estado de sólo lectura

 características de propagación de Transacción

transmisible valor descripción
PROPAGATION_REQUIDED 0 Tenemos que usar la transacción actual, no sólo con el nuevo
PROPAGATION_SUPPORTS 1 opcional transacción, no se requiere
PROPAGATION_MANDATORY 2 actualidad deben ser, de lo contrario Lanza
PROPAGATION_REQUIRES_NEW 3 Si hay o no una transacción, todo ello desde una nueva transacción
PROPAGATION_NOT_SUPPORTED 4 No es compatible con las transacciones, a cargo de una manera no transaccional
PROPAGATION_NEVER 5 No es compatible con las transacciones, si la transacción es Lanza
PROPAGATION_NESTED 6 Hay actualmente Asuntos renovaron una transacción en la transacción actual

características de aislamiento de transacción

 

aislamiento valor lectura sucia lectura no repetible la magia de lectura
ISOLATION_READ_UNCOMMITTED 1 si si si
ISOLATION_READ_COMMITTED 2 No si si
ISOLATION_REPEATABLE_READ 3 No No si
ISOLATION_SERIALIZABLE 4 No No No

transacciones programáticas 

TransactionTemplate

  • TransactionCallback
  • TransactionCallbackWithoutResult

PlatformTransactionManager

  • Se puede definir TransactionDefinition entrante

 


transacción declarativa

https://www.cnblogs.com/ooo0/p/11029629.html 


configuración basada en anotación

 Notas asuntos de manera abierta:

  • @EnableTransactionManagement
  • <Tx: anotación impulsada />

algunos de configuración

  • clase de destino de proxy
  • modelo
  • orden

 

@Transactional

  • transactionManager
  • propagación
  • aislamiento
  • se acabó el tiempo
  • solo lectura
  • Cómo determinar la reversión

 

 

Dos. JDBC de primavera abstracción anormal

Primavera conversión anormal en un DataAccessException voluntad de manipulación de datos

O bien el uso de datos de acceso, se utilizará la misma excepción

La primavera es la comprensión de cómo los códigos de error?

  • Por código de error de análisis SQLErrotCodeSQLExceptionTranslator

ErrorCode definido

  • org / Spring Framework / JDBC / soporte / sql-error-codes.xml
  • sql-error-codes.xml bajo Classpath

 

código de error personalizado SpringBoot

comentario común tres. SpringBoot

Consulte: https://blog.csdn.net/tangthh123/article/details/104092510

 Cuatro. Actuador

Algunos buen punto final del actuador proporcionado
URL efecto
/ Actuador / salud Comprobar la salud
/ actuador / frijoles Ver todos recipiente de granos
/ Actuador / mapeo Ver mapeo Web URL
/ Actuador / env Ver Información Ambiental

Prohibir todo el punto final

 Application.properties parámetros de configuración o application.yml

management.endpoints.web.exposure.include=*

V. múltiples fuentes de datos. Subtabla Sub-biblioteca. Las relaciones separadas de lectura y escritura

1. Varios común

  • Las necesidades del sistema de acceso a varias bases de datos diferentes, esta vez se pueden configurar ambas fuentes de datos
  • El sistema requiere el acceso a la biblioteca principal y la biblioteca con una biblioteca de copia de seguridad, es decir, utilizar una lectura independiente y tiempo de escritura, una biblioteca principal, tanto en una base de datos en espera, la fuente de datos configurada de forma individual, la separación de escritura
  • El sistema requiere el acceso a una base de datos como un conjunto de sub-biblioteca subtabla (split vertical, división horizontal), trata de middleware base de datos de uso.

 

Naturaleza VI. Asuntos

La naturaleza declarativa de la transacción en la primavera de AOP es mejorar la funcionalidad de la clase.

La naturaleza de primavera AOP es un indicador de la clase haga

  • Llamada aparece en su propia manera, eh, es el uso real de la clase de proxy mejorada

Problema Solución:

  • El método de la clase de proxy después de la visita mejorado, en lugar de acceso directo a su propio método

 

VII. Configuración de registro Slow

Alibaba puso en marcha una serie de base de datos de agrupación de conexiones Descripción:

Propiedades de configuración del sistema

  • druid.stat.logSlowSql = true
  • druid.stat.slowSqlMillis = 3000

SpringBoot

  • spring.datasource.druid.filter.stat.enabled = true
  • spring.datasource.druid, filter.stat.log-lento-sql = true
  • spring.datasource.druid.filter.stat.slow-sql-millis = 3000

 

 

 

Publicado 66 artículos originales · ganado elogios 49 · Vistas a 20000 +

Supongo que te gusta

Origin blog.csdn.net/tangthh123/article/details/105064233
Recomendado
Clasificación