使用maven搭建项目,pom文件导包如下:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.zs</groupId><artifactId>mybatis</artifactId><version>1.0-SNAPSHOT</version><dependencies><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.4.6</version></dependency><dependency><groupId>com.mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.45-bin</version></dependency></dependencies></project>

导入mybatis核心包后,创建实体类:

package com.zs.entity;public class Login {private int id;private String username;private String password;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}@Overridepublic String toString() {return "Login{" +"id=" + id +", username='" + username + '\'' +", password='" + password + '\'' +'}';}
}

创建dao层接口:

ackage com.zs.dao;import com.zs.entity.Login;/*** 创建登录的接口*/
public interface LoginDao {/*** 查询根据id查询用户信息*/Login getById(int id);}

创建mybatis基础配置文件:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration><environments default="mysql"><environment id="mysql"><transactionManager type="JDBC"></transactionManager><!--配置mybatis连接数据库的连接池信息--><dataSource type="POOLED"><!--配置数据库基本信息--><property name="driver" value="com.mysql.jdbc.Driver"/><property name="url" value="jdbc:mysql://localhost:3306/mybase?characterEncoding=utf-8"/><property name="username" value="root"/><property name="password" value="123456"/></dataSource></environment></environments><!--将项目的mappper文件配置进来--><mappers><mapper resource="mapper/login.xml"/></mappers>
</configuration>

mapper文件如下:

<!DOCTYPE mapper PUBLIC "-//mybatis.org// Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zs.dao.LoginDao"><select id="getById" resultType="com.zs.entity.Login">select * from login where id=#{id}</select>
</mapper>

然后创建一个工具类,因为需要读取xml文件的配置信息连接数据库,就像之前的链接数据库创建工具类一样,这里也创建工具类:

package com.zs.util;import com.sun.deploy.util.SessionProperties;
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 java.io.IOException;
import java.io.InputStream;public class SqlSessionUtil {private static SqlSessionFactory sessionFactory;static {InputStream in = null;try {in = Resources.getResourceAsStream("mybatis-config.xml");sessionFactory=new SqlSessionFactoryBuilder().build(in);} catch (IOException e) {e.printStackTrace();}finally {try {in.close();} catch (IOException e) {e.printStackTrace();}}}public static SqlSession getSession(){return sessionFactory.openSession();}
}

进行测试:

import com.zs.dao.LoginDao;
import com.zs.entity.Login;
import com.zs.util.SqlSessionUtil;
import org.apache.ibatis.session.SqlSession;public class loginTest {public static void main(String[] args) {SqlSession session = SqlSessionUtil.getSession();LoginDao mapper = session.getMapper(LoginDao.class);Login byId = mapper.getById(1);System.out.println(byId);}
}

结果如下:

转载于:https://www.cnblogs.com/Zs-book1/p/10939461.html

maven搭建mybatis测试相关推荐

  1. 使用IDEA Maven搭建Mybatis环境

    本文是使用IDEA Maven搭建Mybatis环境 涉及到的搭配环境 JDK1.8 Maven3.6.3 IDEA2019 MySQL数据库 一.Maven介绍 Maven 是一个项目管理工具,可以 ...

  2. 搭建eclipse版的ssm+maven+tk.mybatis+redis及mybatis+spring多数据源配置集成的demo

    前言:我这里搭建好eclipse版的ssm+maven+tk.mybatis+redis及mybatis+spring多数据源配置集成的demo.新手快速上手直接看demo. 最后处提供完整高质量de ...

  3. Maven搭建SpringMVC+Mybatis项目详解【转】

    为什么80%的码农都做不了架构师?>>>    前言 最近比较闲,复习搭建一下项目,这次主要使用Spring+SpringMVC+Mybatis.项目持久层使用Mybatis3,控制 ...

  4. 手把手Maven搭建SpringMVC+Spring+MyBatis框架(超级详细版)

    手把手Maven搭建SpringMVC+Spring+MyBatis框架(超级详细版) SSM(Spring+SpringMVC+Mybatis),目前较为主流的企业级架构方案.标准的MVC设计模式, ...

  5. eclipse maven 搭建 SSM(Spring+SpringMVC+MyBatis)开发环境 和 MyBatis 自动生成的 maven 插件配置

    最近研究java web开发,首先需要配置好开发环境,查阅网上各位大神的文章后搭建完成,记录下来作为备忘. 1.安装Maven Maven下载地址:http://maven.apache.org/do ...

  6. Spring+Maven+Dubbo+MyBatis+Linner+Handlebars—Web开发环境搭建

    Spring+Maven+Dubbo+MyBatis+Linner+Handlebars                                         --Web开发环境搭建 本文主 ...

  7. Spring + Maven + Dubbo + MyBatis + Linner + Handlebars-Web开发环境搭建

    spring + Maven + Dubbo + MyBatis + Linner + Handlebars                                         - 开发环 ...

  8. SpringMVC+Mybatis+Maven搭建

    本文概述:首先讲解了一下springMVC.Mybatis.Maven等一些相关知识点,然后详细介绍maven环境变量的配置.Mybatis-Generator工具类使用.eclipse中maven的 ...

  9. 使用IDEA基于Maven搭建多模块聚合工程(springmvc+spring+mybatis整合)

    文章有不当之处,欢迎指正,如果喜欢微信阅读,你也可以关注我的微信公众号:好好学java,获取优质学习资源. 终于有时间搞java了,今天使用IDEA基于maven搭建了多模块聚合工程,经过了多番尝试, ...

  10. 用maven搭建 testNG+PowerMock+Mockito测试框架

    转载:http://www.cnblogs.com/changzhz/p/5158068.html 单元测试是开发中必不可少的一部分,是产品代码的重要保证. Junit和testNG是当前最流行的测试 ...

最新文章

  1. 解决mysql获取不到连接的问题
  2. WINCE6.0+S3C6410睡眠和唤醒的实现
  3. 一文读懂除法溢出-使用汇编重定向0号中端(除法错误中断,比如,执行div指令产生的除法溢出)
  4. 推荐2个十分好用的pandas数据探索分析神器!
  5. 零基础入门深度学习的五篇经典教程
  6. vnpy怎么创建策略并回测_【手把手教你】入门量化回测最强神器backtrader(一)
  7. 建模:确定服务的边界——《微服务设计》读书笔记
  8. 最小二乘法支持向量机一般用在什么场合_人工智能科普|机器学习重点知识——支持向量机SVM...
  9. css 去掉a标签下划线,CSS 解决 a标签去掉下划线 text-decoration: none无效 的解决方案...
  10. 你不知道的省钱技巧,京东购物返积分,人工智能自动查询
  11. ios 判断iPhone、iPad硬件型号
  12. 使用gcc参数-Wl,–gc-sections,不链接未用函数,减小可执行文件大小
  13. CSS核心概念一把梭-基础部分
  14. win7下怎么配置ODBC数据源
  15. Google封杀赛门铁克Root证书
  16. fastjson首字母大写的几种方法
  17. 如何制作思科和华为设备的console线
  18. 迅为RK3568开发板Android11修改开机动画
  19. vim /etc/hostname1输入命令后进入到以下界面。
  20. RxJava 2.0 入门教程

热门文章

  1. LINUX SHELL判断一个用户是否存在
  2. 同样一个网址,用电信网络和中国移动的手机网络,下载速度相差巨大
  3. 编译出错:self-encoder.context-me_method = ME_UMH;
  4. C++读取WINDOWS注册表
  5. 解决办法:自动挂载失效,VirtualBox共享文件夹给Ubuntu虚拟机
  6. 编译OpenJDK8:No CONF given, but more than one configuration found in
  7. html5中布局命名,HTML5 发展中的命名约定和微格式
  8. mysql 定时器_MySQL定时器开启、调用实现代码
  9. 大数据用kettle还是python_Kettle学习系列之Kettle能做什么?(三)
  10. VS C++ 字符串分割 strtok