基于MyBatis的简单使用(推荐)
程序员文章站
2024-04-01 18:32:58
mybatis
mybatis 是一款优秀的持久层框架,它支持定制化 sql、存储过程以及高级映射。mybatis 避免了几乎所有的 jdbc 代码和手动设置参数以及获取...
mybatis
mybatis 是一款优秀的持久层框架,它支持定制化 sql、存储过程以及高级映射。mybatis 避免了几乎所有的 jdbc 代码和手动设置参数以及获取结果集。mybatis 可以使用简单的 xml 或注解来配置和映射原生信息,将接口和 java 的 pojos(plain old java objects,普通的 java对象)映射成数据库中的记录。
搭建mybatis
第一步:先创建一个项目,平常的java project就行,项目结构先看看
第二步:导入相关的jar包(可以上官网下,开源的):
•mybatis-3.4.4.jar mybatis的jar包
•mysql-connector-java-5.1.13-bin.jar mysql的jar包
第三步:编写一个配置文件。是一个xml文件mybatis-config.xml,位置放在src下
<?xml version="1.0" encoding="utf-8" ?> <!doctype configuration public "-//mybatis.org//dtd config 3.0//en" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <environments default="development"> <environment id="development"> <transactionmanager type="jdbc"/> <datasource type="pooled"> <property name="driver" value="com.mysql.jdbc.driver"/> <property name="url" value="jdbc:mysql://localhost:3306/mobile"/> <property name="username" value="zhou"/> <property name="password" value="123456"/> </datasource> </environment> </environments> <mappers> <mapper resource="com/entity/usermapper.xml"/> </mappers> </configuration>
有关mybatis中xml文件的属性说明:
<!-- 配置文件的根元素 --> <configuration> <!-- 属性:定义配置外在化 --> <properties></properties> <!-- 设置:定义mybatis的一些全局性设置 --> <settings> <!-- 具体的参数名和参数值 --> <setting name="" value=""/> </settings> <!-- 类型名称:为一些类定义别名 --> <typealiases></typealiases> <!-- 类型处理器:定义java类型与数据库中的数据类型之间的转换关系 --> <typehandlers></typehandlers> <!-- 对象工厂 --> <objectfactory type=""></objectfactory> <!-- 插件:mybatis的插件,插件可以修改mybatis的内部运行规则 --> <plugins> <plugin interceptor=""></plugin> </plugins> <!-- 环境:配置mybatis的环境 --> <environments default=""> <!-- 环境变量:可以配置多个环境变量,比如使用多数据源时,就需要配置多个环境变量 --> <environment id=""> <!-- 事务管理器 --> <transactionmanager type=""></transactionmanager> <!-- 数据源 --> <datasource type=""></datasource> </environment> </environments> <!-- 数据库厂商标识 --> <databaseidprovider type=""></databaseidprovider> <!-- 映射器:指定映射文件或者映射类 --> <mappers></mappers> </configuration>
第四步:创建实体类,这个不用多说了,正常创建就ok
第五步:创建实体类的mapper映射xml文件,位置跟实体类同级,是对实体类的一些操作,在我认为就是配置了sql语句的赶脚,再去方法里调一下
<?xml version="1.0" encoding="utf-8" ?> <!doctype mapper public "-//mybatis.org//dtd mapper 3.0//en" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!-- namespace可以不加xml后缀 --> <mapper namespace="com.entity.usermapper"> <!-- 单个对象查询 --> <select id="selectuser" parametertype="int" resulttype="com.entity.user"> select * from user where id = #{id} </select> <!--查询列表 --> <resultmap id="userlist" type="com.entity.user"> <result property="id" column="id" /> <result property="username" column="username"/> <result property="password" column="password"/> </resultmap> <select id="selectall" resultmap="userlist"> select * from user </select> <!--插入数据 --> <insert id="insert" > insert into user (username,password) values(#{username},#{password}) </insert> <!--更新数据 --> <update id="update"> update user set username = #{username},password = #{password} where id = #{id} </update> <!--删除数据 --> <delete id="delete"> delete from user where id = #{id} </delete> </mapper>
实体类映射的属性说明:先看前几个后面的遇到再说,百度就可以
第六步:编写一下测试类,测试一下你搭建的是否有用
package com.test; import java.io.ioexception; import java.io.inputstream; import java.util.list; import org.apache.ibatis.io.resources; import org.apache.ibatis.session.sqlsession; import org.apache.ibatis.session.sqlsessionfactory; import org.apache.ibatis.session.sqlsessionfactorybuilder; import com.entity.user; /** * * @author 坚持到你gl * */ public class test { private static sqlsession session=null; public static sqlsession mysession() { //你的mybatis的配置文件地址 string resource = "mybatis-config.xml"; inputstream inputstream=null; try { //io解析xml文件 inputstream = resources.getresourceasstream(resource); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } //创建一个sqlsessionfactorybuilder对象,获得sqlsessionfactory 的实例 sqlsessionfactory sqlsessionfactory = new sqlsessionfactorybuilder().build(inputstream); //开启sqlsession session=sqlsessionfactory.opensession(); return session; } private static void select(){ //selectuser是实体类映射文件的中设置的id user user=mysession().selectone("selectuser",2); system.out.println(user); } private static void selectall() { list<user> list=mysession().selectlist("selectall"); for (user user : list) { system.out.println(user); } } private static void insert() { user insertuser=new user("zhou","123456"); mysession().insert("insert",insertuser); session.commit(); } private static void update() { user updateuser =new user(9,"admin","admin"); mysession().update("update", updateuser); session.commit(); } private static void delect() { mysession().delete("delete", 10); session.commit(); } public static void main(string[] args) { selectall(); } }
小项目微服务简单的开发,运用mybatis是非常不错的选择
以上这篇基于mybatis的简单使用(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。