首页 > 其他分享 >搭建MyBatis

搭建MyBatis

时间:2022-10-18 10:35:48浏览次数:55  
标签:对象 创建 UserMapper sqlSession SqlSession MyBatis 搭建

一、引入依赖

<dependencies>
<!-- Mybatis核心 -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.7</version>
</dependency>
<!-- junit测试 -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<!-- MySQL驱动 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.3</version>
</dependency>
</dependencies>

二、创建MyBatis的核心配置文件

<?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/MyBatis"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
</dataSource>
</environment>
</environments>
<!--引入映射文件-->
<mappers>
<mapper resource="mappers/UserMapper.xml"/>
</mappers>
</configuration>

三、创建mapper接口

public interface UserMapper {
/**
* 添加用户信息
*/
int insertUser();
}

四、创建MyBatis的映射文件

<?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">
<mapper namespace="com.atguigu.mybatis.mapper.UserMapper">
<!--int insertUser();-->
<insert id="insertUser">
insert into t_user values(null,'张三','123',23,'女')
</insert>
</mapper>

五、测试

//读取MyBatis的核心配置文件
InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
//创建SqlSessionFactoryBuilder对象
SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new
SqlSessionFactoryBuilder();
//通过核心配置文件所对应的字节输入流创建工厂类SqlSessionFactory,生产SqlSession对象
SqlSessionFactory sqlSessionFactory = sqlSessionFactoryBuilder.build(is);
//创建SqlSession对象,此时通过SqlSession对象所操作的sql都必须手动提交或回滚事务
//SqlSession sqlSession = sqlSessionFactory.openSession();
//创建SqlSession对象,此时通过SqlSession对象所操作的sql都会自动提交
SqlSession sqlSession = sqlSessionFactory.openSession(true);
//通过代理模式创建UserMapper接口的代理实现类对象
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
//调用UserMapper接口中的方法,就可以根据UserMapper的全类名匹配元素文件,通过调用的方法名匹配
映射文件中的SQL标签,并执行标签中的SQL语句
int result = userMapper.insertUser();
//sqlSession.commit();
System.out.println("结果:"+result);

标签:对象,创建,UserMapper,sqlSession,SqlSession,MyBatis,搭建
From: https://www.cnblogs.com/ai377377/p/16801717.html

相关文章

  • Linux 下搭建 Hadoop 环境
    Linux下搭建Hadoop环境作者:Grey原文地址:博客园:Linux下搭建Hadoop环境CSDN:Linux下搭建Hadoop环境环境要求操作系统:CentOS7下载地址安装说明需要准备两个......
  • MybatisConfig
    MybatisConfigxml注解版/***SqlSessionFactory**@paramdataSource*@return*/@BeanpublicSqlSessionFactoryBeansqlSessi......
  • 高可用linux 服务器搭建
    最原始的服务部署,为单点部署,即直接把服务部署在一个服务器上。如果服务器出现故障,或者服务因为某个异常而挂掉,则服务就会发生中断。单点部署出现故障的概率最高。后来,出现......
  • LVS VS-TUN ipvsadm+heartbeat-ldirectord搭建linux集群
    ​测试环境一台调度机,两台真实机,使用ipvsadm+ldirectord搭建vs-tun的linux集群3台服务器都安装centos5.4调度机IP:eth0:192.168.11.10调度机VIP:eth0:0:192.168.11.20真实机1IP:e......
  • LVS VS-DR ipvsadm+heartbeat-ldirectord搭建linux集群
    ​测试环境一台调度机,两台真实机,使用ipvsadm+ldirectord搭建vs-tun的linux集群3台服务器都安装centos5.4调度机IP:eth0:192.168.1.210调度机VIP:eth0:0:192.168.1.219真实机1IP:e......
  • LVS 搭建集群的一些介绍(方案,优化)
    ​LVS集群介绍三种运作方式VS-NAT(VirtualServerviaNAT)VS-DR(VirtualServerviaDirectRouting)VS-TUN(VirtualServerviaIPTunneling)LVS运作方式的比较/VS-NATVS......
  • 11.0 Spring整合Mybatis原理
    一、整合核心思路由很多框架都需要和Spring进行整合,而整合的核心思想就是把其他框架所产生的对象放到Spring容器中,让其成为Bean,只要成为了Bean,在Spring项目中就能很方便的......
  • 图扑智慧城市 | 搭建政务民生可视化管理系统
    前言《“十四五”新型城镇化实施方案》提出围绕提升城市治理能力智慧化水平提高数字政府服务能力。推行城市数据一网通用、城市运行一网统管、政务服务一网通办、公共服务......
  • Selenium4Web自动化1-自动化入门与环境搭建
    一、自动化测试基础1分层自动化测试  分层的自动化测试:从黑盒(UI)单层到黑盒和白盒多层的自动化测试,即从全面黑盒自动化测试到对系统的不同层次进行的自动化测试。1......
  • go-zero docker-compose 搭建课件服务(七):prometheus+grafana服务监控
    0、转载go-zerodocker-compose搭建课件服务(七):prometheus+grafana服务监控0.1源码地址https://github.com/liuyuede123/go-zero-courseware1、什么是prometheusPromet......