本文主要介绍了如何使用mybatis进行简单的数据库操作。本人使用的是mybatis3.05。

1.创建数据库表(User表)
CREATE TABLE `NewTable` (`userId`  bigint(20) NOT NULL AUTO_INCREMENT ,`userName`  varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,`password`  varchar(80) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,`comment`  varchar(250) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,PRIMARY KEY (`userId`),UNIQUE INDEX `UQ_User_userName` (`userName`) USING BTREE)

2.2. 创建实体类

package com.mybatis.config;

public class User {    private int userId;    private String userName;    private String password;    private String comment;    public int getUserId() {        return userId;    }    public void setUserId(int userId) {        this.userId = userId;    }    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;    }    public String getComment() {        return comment;    }    public void setComment(String comment) {        this.comment = comment;    }}

3. 定义数据访问接口

package com.mybatis.config;

import java.util.List;

public interface UserDao {

    public int insert(User user);

    public int update(User user);

    public int delete(String userName);

    public List<User> selectAll();

    public int countAll();

    public User findByUserName(String userName);}

4.创建MyBatis映射文件(UserDaoMapper.xml)

<?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.mybatis.config.UserDao">    <select id="countAll" resultType="int">        select count(*) c from user;    </select>

    <select id="selectAll" resultType="com.mybatis.config.User">        select * from user order by userName asc    </select>

    <insert id="insert" parameterType="com.mybatis.config.User">        insert into user(userName,password,comment) values(#{userName},#{password},#{comment})    </insert>

    <update id="update" parameterType="com.mybatis.config.User">        update user set userName=#{userName},password=#{password},comment=#{comment} where userName=#{userName}    </update>

    <delete id="delete" parameterType="int">        delete from user where userName=#{userName}    </delete>

    <select id="findByUserName" parameterType="String" resultType="com.mybatis.config.User">        select * from user where userName=#{userName}    </select></mapper>

5. 创建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/hlp?useUnicode=true&amp;characterEncoding=UTF-8&amp;zeroDateTimeBehavior=convertToNull" />                <property name="username" value="root" />                <property name="password" value="1234" />            </dataSource>        </environment>    </environments>    <mappers>        <mapper resource="com/mybatis/config/UserDaoMapper.xml"/>    </mappers></configuration>

6. 编写测试代码

package com.mybatis.config;

import java.io.Reader;import java.util.Iterator;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 org.junit.Test;

public class UserDaoTest {    @Test    public void userDaoTest() throws Exception    {        String resource = "MyBatis-Configuration.xml";        Reader reader = Resources.getResourceAsReader(resource);        SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();        SqlSessionFactory factory = builder.build(reader);

        SqlSession session = factory.openSession();        UserDao userDao = session.getMapper(UserDao.class);

        User user = new User();        user.setUserName("hongye");        user.setPassword("123456");        user.setComment("备注");

        userDao.insert(user);        System.out.println("记录条数:"+userDao.countAll());

        List<User> users = userDao.selectAll();        Iterator<User> iter = users.iterator();        while(iter.hasNext()){            User u = iter.next();            System.out.println("用户名:"+u.getUserName()+"密码:"+u.getPassword());        }

        user.setComment("comment");        userDao.update(user);        User u = userDao.findByUserName("hongye");        System.out.println(u.getComment());

        userDao.delete("hongye");        System.out.println("记录条数:"+userDao.countAll());

        session.commit();        session.close();    }}

转载于:https://www.cnblogs.com/wanghuaijun/p/5588133.html

使用MyBatis链接MySQL相关推荐

  1. mybatis mysql自动连接数据库_如何用mybatis链接数据库

    用mybatis链接数据库十分的方便,这里总结一下具体的步骤. 1.首先创建一个maven项目 在pom.xml导入依赖 1 2 3 org.mybatis 4 mybatis 5 3.4.4 6 7 ...

  2. mybatis连接oracle12乱码,使用mybatis链接oracle数据库出现账号密码错误解决

    使用mybatis链接oracle数据库步骤 最近oracle老师布置下来了作业,要求使用传统的java代码链接oracle数据库做一个小程序,因为我已经很熟练的掌握了ssm框架的开发,以前用的是my ...

  3. springboot项目:驾校预约管理系统5y0y2(java+VUE+Mybatis+Maven+Mysql)

    springboot项目:驾校预约管理系统5y0y2(java+VUE+Mybatis+Maven+Mysql) 一.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + H ...

  4. 动漫漫画商城(Spring,SpringMVC,MyBatis,SSM,MYSQL,JSP,H-UI)

    动漫漫画商城(Spring,SpringMVC,MyBatis,SSM,MYSQL,JSP,H-UI)-3702(毕业论文14388字以上,共36页,程序代码,MySQL数据库)   [下载链接] [ ...

  5. java查询mysql装载bean_jsp与javabean链接mysql数据库并查询数据表的简单实例源码

    jsp与javabean链接mysql数据库并查询数据表的简单实例源码.这个简单的实例是给新手学习的,或者一些高手临时忘记怎么使用jsp操作mysql数据库时候查找的,包括了建立mysql数据库连接的 ...

  6. hadoop mysql mybatis_MyBatis简介与配置MyBatis+Spring+MySql

    MyBatis 是一个可以自定义SQL.存储过程和高级映射的持久层框架.MyBatis 摒除了大部分的JDBC代码.手工设置参数和结果集重获.MyBatis 只使用简单的XML 和注解来配置和映射基本 ...

  7. Mybatis插入MySQL数据库中文乱码

    Mybatis插入MySQL数据库中文乱码 在dataSource.properties配置文件中设置useUnicode=true&characterEncoding=utf-8编码即可. ...

  8. Mysql —— C语言链接mysql数据库,实现可以增删改查的角色权限登录系统

    /******************************************************************** * 标题:C语言链接mysql数据库,实现可以增删改查的角色 ...

  9. MyBatis简介与配置MyBatis+Spring+MySql

    一.MyBatis简介与配置MyBatis+Spring+MySql 原文出自:http://limingnihao.iteye.com/blog/781671 MyBatis学习 之 一.MyBat ...

最新文章

  1. 用户数年增长 300%,BitMax如何把握数字资产时代机遇?
  2. 深入了解以太坊虚拟机第4部分——ABI编码外部方法调用的方式
  3. 网络流--最大流--HDU 3549 Flow Problem
  4. 如何做到每天写代码?
  5. 20155222 2016-2017-2 《Java程序设计》第8周学习总结
  6. Javaweb MVC设计模式、Modle发展史、项目分层和三层架构
  7. Spring框架学习笔记09:基于XML配置方式搭建SSM框架实现用户登录
  8. python查找指定字符所在行号_在python中获取当前位置所在的行号和函数名
  9. CeontOS7安装ansible
  10. 【分享】时至今日,深度学习领域有哪些值得追踪的前沿研究?
  11. 拓端tecdat|matlab使用长短期记忆(LSTM)神经网络对序列数据进行分类
  12. COMSOL Multiphysics 多物理场仿真学习小记
  13. 拆解老式电饭锅限温器并验证其原理
  14. 石化行业安全生产调度解决方案
  15. PDF如何合并,PDF文件合并的技巧
  16. RTX的“远程登录”原理是什么?
  17. 自学编程的人,90%以上都会掉进这些坑,避开这些误区能提高N倍学习效率
  18. 函数极限的24种定义
  19. python做日历牌,怎么使用python tkinter制作日历?
  20. hdu 4561 模拟小题or连续最大积

热门文章

  1. 23种设计模式整体详解
  2. Github远程推送一直Everything up-to-date
  3. UVA-10714 Ants---蚂蚁模拟
  4. PostgreSQL的那点事儿
  5. Gradle for Android 第三篇( 依赖管理 )
  6. php preg_replace 正则替换图片路径
  7. vue教程2-03 vue计算属性的使用 computed
  8. MqSql的加锁分析
  9. 三目运算符 改变a标签的class属性
  10. js在firefox中的问题