简单使用mybatis(idea中使用)

首先创建一个maven项目

第一步:在pom.xml中添加依赖

<dependencies><!--mybatis--><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.4.6</version></dependency><!--数据库相关 jar 包--><dependency><groupId>org.mariadb.jdbc</groupId><artifactId>mariadb-java-client</artifactId><version>2.3.0</version></dependency><!-- JUnit单元测试工具 --><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.10</version></dependency></dependencies>

第二步:创建数据库表

CREATE TABLE BOOK(
ID INT AUTO_INCREMENT PRIMARY KEY,
NAME VARCHAR(20),
NUMBER int );
insert into BOOK(NAME,NUMBER) VALUES
('Java程序设计',10),
('数据结构',10),
('设计模式',10)

第三步:在main目录下的java源代码写代码

实体类Book

package com.wbg.entity;public class Book {int id;String name;int number;@Overridepublic String toString() {return "Book{" +"id=" + id +", name='" + name + '\'' +", number=" + number +'}';}public int getId() {return id;}public void setId(int id) {this.id = id;}public Book() {}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getNumber() {return number;}public void setNumber(int number) {this.number = number;}public Book(int id, String name, int number) {this.id = id;this.name = name;this.number = number;}
}

View Code

bookMapper接口

package com.wbg.dao;import com.wbg.entity.Book;public interface bookMapper {Book selectBookById();
}

BookDao

package com.wbg.dao;import com.wbg.entity.Book;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;import java.io.InputStream;public class BookDao {public Book getBookById(int id){//使用类加载器加载mybatis的配置文件InputStream inputStream=BookDao.class.getClassLoader().getResourceAsStream("config.xml");//构建sqlSession的工厂SqlSessionFactory sqlSessionFactory=new SqlSessionFactoryBuilder().build(inputStream);//创建能执行映射文件中的sqlSqlSession sqlSession=sqlSessionFactory.openSession();Book book=sqlSession.selectOne("com.wbg.dao.bookMapper.selectBookById",2);return book;}public static void main(String[] args) {BookDao bookDao=new BookDao();System.out.println(bookDao.getBookById(1));}
}

View Code

第四步:在resources中创建config.xml配置资源文件

<?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="development"><environment id="development"><transactionManager type="JDBC"/><dataSource type="POOLED"><property name="driver" value="org.mariadb.jdbc.Driver"/><property name="url" value="jdbc:mariadb://localhost:3306/stu"/><property name="username" value="root"/><property name="password" value="123456"/></dataSource></environment></environments><mappers><mapper resource="mapper/bookMapper.xml"/></mappers>
</configuration>

第五步:在resources中创建mapper目录,在目录下创建bookMapper.xml配置文件

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.wbg.dao.bookMapper"><select id="selectBookById" resultType="com.wbg.entity.Book">select * from Book where id=#{id}</select>
</mapper>

测试

项目下载地址:https://github.com/weibanggang/mybatistest

posted @ 2018-10-14 13:53 韦邦杠 阅读(...) 评论(...) 编辑 收藏

简单使用mybatis(idea中使用)相关推荐

  1. mysql可以使用mybaties框架吗_搭建一个简单的mybatis框架

    一.Mybatis介绍 MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装.MyBatis可以 ...

  2. MyBatis Generator中的新功能

    版本1.3.5 请参阅GitHub页面的里程碑1.3.5,了解本版本中发生了什么变化.里程碑1.3.5 版本1.3.4 在这个版本中,我们已经弃用了eclipse插件中的弹出菜单项,用于运行MyBat ...

  3. mybatis接口中的方法重载_MyBatis的Mapper接口以及Example的实例函数及详解

    一.mapper接口中的方法解析 mapper接口中的函数及方法 方法 功能说明 int countByExample(UserExample example) thorws SQLException ...

  4. 如何简单地理解Python中的if __name__ == '__main__'

    如何简单地理解Python中的if __name__ == '__main__' 文章目录: 一.摘要 二. 程序入口 虽然已经知道这个具体的用法,但是这篇文章有很多细节写的还是很好,决定转载一下,日 ...

  5. MyBatis之优化MyBatis配置文件中的配置

    MyBatis之优化MyBatis配置文件中的配置 2017/9/30 MyBatis配置文件很重要,首先我们来看看MyBatis配置文件中的内容和顺序: 文件目录结构如下: 1.<proper ...

  6. mybatis 配置文件中,collection 和 association 的对应关系

    mybatis 配置文件中,collection 和 association 的对应关系  如下图所示:

  7. ❤️Mybatis开发中什么是多对一处理、一对多处理?

    ❤️Mybatis开发中什么是多对一处理.一对多处理? 什么是多对一: 对于学生而言,关联-多个学生关联一个老师(多对一) 对于老师而言,集合-一个老师有很多学生(一对多) SQL: CREATE T ...

  8. linux如何切换任务,linux 0.11中简单的任务切换中遇到的问题

    linux 0.11中简单的任务切换中遇到的问题 发布时间:2012-03-04 09:49:45来源:红联作者: 最近在学习linux0.11,用的是赵迥博士的一本书,其中有一个模仿Linus 当年 ...

  9. c语言主线程退出子线程,简单了解C语言中主线程退出对子线程的影响

    这篇文章主要介绍了简单了解C语言中主线程退出对子线程的影响,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 对于程序来说,如果主进程在子进程还未结束时 ...

  10. Python爬虫及其它函数知识读记及简单用法,持续更新中...

    Python爬虫相关函数知识读记及简单用法,持续更新中- requests [riˈkwests] n. 请求,要求( request的名词复数 ): 需要: 所请求的事物: 申请书 函数或单词- 音 ...

最新文章

  1. java接口 密钥签名作用_api接口签名加密请求(二)
  2. IBastis配置实例
  3. 自定义按键_DNF手游:策划宣布新增自定义按键布局,期待手游新版本的到来
  4. windows 安装yaml支持和pytest支持等
  5. leetcode486. 预测赢家(动态规划)
  6. 如何使用 Pylint 来规范 Python 代码风格
  7. 步骤1:JMeter 录制脚本接口测试
  8. 软件工程和计科专业对比,哪一个更适合毕业做程序员?
  9. python输入二维数组_python 二维数组键盘输入
  10. foxmail7 BUILD093之后再无Foxmail
  11. 解剖C语言---数据类型转换与数据运算集锦
  12. Python捕捉命令输出、错误输出及赋值命令到变量的方法
  13. python变量相关性,数据科学:定量和定性变量之间的相关性(python语言)
  14. 123456789 中间随机添加 “加减符号” 进行运算结果等于100
  15. 计算机msvcp100.dll,msvcp100.dll丢失的解决方法
  16. 计算机内存条如何区分频率,Win7怎么看内存条频率,教您查看方法
  17. 极化码:极化码的单项式码(Monomial Codes)表示
  18. 小技巧 打印出emoji表情
  19. python mse_python 计算平均平方误差(MSE)的实例
  20. AI行业态势感知(第六期)

热门文章

  1. JavaScript输出数组中有几个字符串中包含“a”或“A”
  2. 2021-08-22 过滤器实现登录权限拦截
  3. 2021-06-04计算器简易代码
  4. Linux服务器安装宝塔面板,Linux服务器安装宝塔服务器管理控制面板
  5. java8 json转xml,在Java中将JSON转换为XML
  6. nemesis什么车_TSC名车品牌将推全新Nemesis全球最强超跑
  7. linux移动文件 rf参数_北京尚学堂卓越班252天[第095天]—Linux
  8. Unity3D(二)游戏对象及组件
  9. java多线程-线程池
  10. Python3初级知识整理