Para facilitar el análisis del código fuente, primero veamos una demostración de MyBatis
mybatis-mysql-config.xml
<? xml version = "1.0" encoding = "UTF-8" ?> <! DOCTYPE configuration PUBLIC "- // mybatis.org//DTD Config 3.0 // ES" "http://mybatis.org/dtd/mybatis-3-config.dtd" > < configuración > < propiedades > < nombre de propiedad = " driver " value =" com.mysql.cj.jdbc.Driver " /> < nombre de propiedad =" url " value =" jdbc: mysql: //127.0.0.1: 3306 / gys? serverTimezone = UTC " /> </ properties > < configuración > = "defaultExecutorType" value = "SIMPLE" /> </ settings > <! - Configuración del entorno, base de datos conectada, aquí está MySQL- > < entornos default = "dev" > < environment id = "dev" > <! - Especifique el tipo de gestión de transacciones, aquí simplemente use la configuración de envío y reversión JDBC de Java- > < transactionManager type = "JDBC" /> <! - DataSource se refiere a la configuración de la fuente de conexión, POOLED es el objeto de conexión JDBC Implementación del conjunto de conexiones de origen de datos- > < dataSource type = "POOLED" > <nombre de propiedad = valor "controlador"= "$ {driver}" > </ property > < property name = "url" value = "$ {url}" > </ property > < property name = "username" value = "root" > </ property > < nombre de propiedad = "contraseña" valor = "gys" > </ propiedad > </ dataSource > </ environment > </ entornos > <mapeadores > < recurso mapeador = "mapper / user.xml" > </ mapper > </ mappers > </ configuration >
mapper.xml
<? xml version = "1.0" encoding = "UTF-8" ?> <! DOCTYPE mapper PUBLIC "- // mybatis.org//DTD Mapper 3.0 // ES" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" > < mapper namespace = "dao.IUserMapper" > < insert id = "insertUser" parameterType = "model.User" > inserta en los valores del usuario (nombre, edad) (# {name}, # {age}) </ insert > </ mapper >
Método de entrada principal:
1 public static void main (String [] args) lanza Exception { 2 SqlSessionFactory sqlSessionFactory1 = new SqlSessionFactoryBuilder (). Build (Resources.getResourceAsStream ("mybatis-mysql-config.xml"), "dev" ); 3 SqlSession sqlSession1 = sqlSessionFactory1.openSession ( verdadero ); 4 IUserMapper userMapper = sqlSession1.getMapper (IUserMapper. Class ); 5 Usuario usuario = nuevo Usuario (); 6 user.setAge (28 ); 7 user.setName ("a" ); 8 int i = userMapper.insertUser (usuario); 9 System.out.println ("Número de filas afectadas" + i); 10 sqlSession1.close (); 11 }
El código de Ejecutor sigue estando lejos del código de ejecución de demostración anterior. Si analiza el Ejecutor, debe analizar y analizar este código de paquete muy largo;
¿Cómo puede este código fuente comenzar a hacer que la gente se sienta natural y dejarlo ir?
Olvídalo, hagámoslo paso a paso;