MyBatis, como un marco de peso ligero de Orm, atrajo la atención de innumerables personas tan pronto como apareció. Es más simple y más fácil comenzar que Hibernate. Comencemos mi primer programa mybatis.
1. Descargue el paquete mybatis
Sabemos que cualquier marco tendrá su paquete. Descargamos su paquete desde su sitio web oficial. La dirección oficial del sitio web es: http://www.mybatis.org/mybatis-3/, y la versión que uso aquí es 3.3.0. Después de completar la descarga, puede ver la siguiente estructura del directorio:
MyBatis-3.3.0.Jar es su paquete, y en el directorio lib es su paquete de dependencia. Ponemos estos paquetes en nuestro proyecto. Lo que creé aquí es un proyecto Javaweb, que es conveniente para las pruebas web en el futuro. El programa que escribí es un programa de Java ordinario.
2. Entorno de configuración
Después de poner el paquete MyBatis en el directorio LIB del proyecto, configure el entorno MyBatis a continuación. Sabemos que MyBatis, como marco de ORM, pertenece a la capa DAO en el desarrollo y se ocupa de la base de datos, por lo que debemos tener datos. Aquí, tome los datos de MySQL como ejemplo, y la construcción de la base de datos específica y la construcción de la tabla no se explicarán aquí.
Crear archivo de configuración de MyBatis En el directorio SRC, el nombre del archivo es: configuratin.xml, y el contenido del archivo es el siguiente:
<? xml versión = "1.0" encoding = "utf-8"?> < type = "com.cn.imooc.entity.message"/> </typealiases> <entornos default = "desarrollo"> <entorno id = "desarrollo"> <transaccionManager type = "jdbc"/> <dataSource type = "agrupado"> <name de propiedad = "controlador" valor = "com.mysql.jdbc.driver"/> <propiedad = "url" url " valor = "jdbc: mysql: //127.0.0.1: 3306/weixin? useUnicode = true y caracterSencoding = utf-8"/> <propiedad name = "username" value = "root"/> <Property Name = "Password" Value = "123456"/> </cataSource> </entorno> </entornos>! <Mappers> <Mapper Resource = "COM/CN/Mappers/Message.xml"/> </ Mappers> </Configuration>
Todavía hay muchos elementos de configuración en el archivo de configuración de MyBatis.
<Pyypealiases> Configuración de alias, es decir, la clase de entidad está alias. El propósito es no usar los nombres de clase completa al usar clases de entidad en el archivo de mapeo, pero usar alias, que juega un papel simple
<bostens> Configurar algunos entornos, como la configuración de datos, aquí configuramos la fuente de datos
<Mappers> Configurar el archivo de asignación, aquí está el archivo de asignación Message.xml en el paquete com.cn.mappers configurado.
La siguiente es una explicación de la clase de entidad del mensaje. Esta clase de entidad contiene algunas propiedades, como sigue:
paquete com.cn.imooc.entity; mensaje de clase pública {ID de cadena privada de cadena; comando de cadena privada; privada string description; private string comment; public string getId () {return id;} public void setid (string id) {this.id = id;} public string getCommand () {return command;} public void setCommand (string command) {this.command = command;} command;} string getDes descripción;} public void setDescription (string description) {this.description = description;} public String getComment () {return comment;} public void setComment (string comment) {this.comment = comment;}@overRidePublic string toString () {return "Mensaje [id =" + id + ", comando =" comando + ", Descripción =" + Descripción + ", Comentario, comentario ="Se proporcionan los métodos GetXXX y SetXXX, y el método SETXXX es muy crítico. Las propiedades aquí son las mismas que los nombres de campo de la base de datos. Se pueden reflejar fácilmente en la clase de entidad usando mybatis para consultar los resultados. Por supuesto, también pueden ser inconsistentes con los nombres de campo de las tablas de la base de datos. Se explicarán más tarde.
El archivo de asignación de mensajes.xml es el siguiente,
<mappper namespace = "com.cn.inter.imessageOperation"> <select id = "selectUserById" parametType = "int" resultType = "com.cn.imooc.entity.message"> select * de `Mensaje 'donde id = #{id} </select> <seling id =" selectMessage "dentTypeS Mensaje; </elect> </mapper>Este es mi archivo de mapeo de mapper, hay dos métodos dentro, uno es: SelectUserById Consuly basada en ID y la otra es la consulta SelectMessages todo
De acuerdo, hasta ahora, nuestro entorno mybatis se ha construido, y podemos probarlo a continuación.
3. Prueba
A continuación se muestra el código de prueba,
paquete com.cn.test; import java.io.ioException; import java.io.reader; importar org.apache.ibatis.io.resources; import org.apache.ibatis.session.sqlsession; importar org.apache.ibatis.session.sqlsession; import org.apache.ibatis.session.session.sqlay org.apache.ibatis.session.sqlsessionFactoryBuilder; import com.cn.imooc.entity.message; public class mytest {public static void main (string [] args) {// todo método generado por el lector de stubReader; sqlSession sqlSession = null; intent Obtenga SQLSessionFactoryReader = Resources.getResourCeaseReader ("Configuration.xml"); SqlSessionFactory SQLSessionFactory = new SqlSessionFactoryBuilder (). Build (Reader); // 2. Obtener sqlSessionsqlSession = sqlSessionFactory.opensession (); // 3. Mensaje de consulta mensaje = sqlsession.selectone ("com.cn.inter.imessageoperation.selectuserByid", 1); system.out.println (mensaje);} catch (ioException e) {// tODO Generated Catch BloCke.PrintStActace ();}Como se puede ver en lo anterior, primero se necesita una SQLSessionFactory, y luego se obtiene una Factory SQLSession. El SQLSession es ejecutado por SQLSession, y se utiliza el método SelectOne. El primer parámetro es el espacio de nombres+"." Nombre del método en el archivo de asignación, y el segundo parámetro es el parámetro de consulta.
Lo anterior es la descripción completa de cómo mybatis es utilizada (i) le presenta el editor. Espero que te sea útil. Otras versiones se introducirán en el futuro. ¡Preste atención a Wulin.com para obtener más contenido!