Mybatis学习(二) - CRUD操作(增删改查操作)

直接上例子:

1.项目结构:

2.具体代码及配置

User.java

package com.mybatis.bean;

public class User {

    private int id;
    private String name;
    private int age;

    public User(int id, String name, int age) {
        this.id = id;
        this.name = name;
        this.age = age;
    }
    public User(){}

    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }

}

GetFacotry.java

package com.mybatis.util;

import java.io.IOException;
import java.io.Reader;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

public class GetFactory {

    public static SqlSessionFactory getFactory(){

        Reader reader= null;
        try {
            reader = Resources.getResourceAsReader("conf.xml");
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        SqlSessionFactory sessionfactory = new SqlSessionFactoryBuilder().build(reader);

        return sessionfactory;
    }
}

配置文件 conf.xml

<?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">
         </transactionManager>
         <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="User.xml"></mapper>
    </mappers>
</configuration>

配置文件 User.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.bean.UserMapper">
    <select id="getUser" parameterType="int" resultType="com.mybatis.bean.User">
       select * from user where id=#{id}
    </select>
    <!--
       CRUD操作
    -->
    <insert id="addUser" parameterType="com.mybatis.bean.User">
       insert into user (name,age) values (#{name},#{age});
    </insert>
    <update id="updateUser" parameterType="com.mybatis.bean.User">
       update user set name=#{name},age=#{age} where id=#{id}
    </update>
    <delete id="deleteUser" parameterType="int">
       delete from user where id=#{id}
    </delete>
    <select id="selectAllUsers" resultType="com.mybatis.bean.User">
       select * from user
    </select>
</mapper>

3.单元测试

test.java

package com.mybatis.service;

import java.util.List;

import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.junit.Test;

import com.mybatis.bean.User;
import com.mybatis.util.GetFactory;

public class test {

    @Test
    public void UnitTest_ADD(){
        SqlSessionFactory factory = GetFactory.getFactory();
        SqlSession session = factory.openSession();

        String statment = "com.mybatis.bean.UserMapper.addUser";
        User user = new User(-1,"新增",32);
        int insert = session.insert(statment,user);
        session.commit();
        session.close();
        System.out.println(insert);
    }

    @Test
    public void UnitTest_UPDATE(){
        SqlSessionFactory factory = GetFactory.getFactory();
        SqlSession session = factory.openSession();

        String statment = "com.mybatis.bean.UserMapper.updateUser";
        User user = new User(1,"更新",22);
        int insert = session.update(statment,user);
        session.commit();
        session.close();
        System.out.println(insert);

    }

    @Test
    public void UnitTest_DELETE(){
        SqlSessionFactory factory = GetFactory.getFactory();
        SqlSession session = factory.openSession();

        String statment = "com.mybatis.bean.UserMapper.deleteUser";
        int delete = session.delete(statment, 2);
        session.commit();
        session.close();
        System.out.println(delete);

    }

    @Test
    public void UnitTest_SELECT_ALL(){
        SqlSessionFactory factory = GetFactory.getFactory();
        SqlSession session = factory.openSession();

        String statment = "com.mybatis.bean.UserMapper.selectAllUsers";
        List<User> list= session.selectList(statment);
        session.close();
        System.out.println(list);
    }

}
时间: 2024-08-03 05:08:39

Mybatis学习(二) - CRUD操作(增删改查操作)的相关文章

Mybatis实现简单的数据库增删改查操作

Mybatis实现简单的数据库增删改查操作 框架:mybatis(3.5.2) 数据库:mysql 工具:idea 1.新建一个maven项目,在pom文件中添加mybatis依赖及MySQL依赖 <!-- mybatis核心依赖 --> <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <dependency> <groupId>org.mybatis</groupId&g

MyBatis之二:简单增删改查

这一篇在上一篇的基础上简单讲解如何进行增删改查操作. 一.在mybatis的配置文件conf.xml中注册xml与注解映射 <!-- 注册映射文件 --> <mappers> <!-- 通过xml方式映射 --> <mapper resource="com/mybatis/crud/userMapper.xml" /> <!-- 通过注解方式映射 --> <mapper class="com.mybatis.c

MyBatis学习之简单增删改查操作、MyBatis存储过程、MyBatis分页、MyBatis一对一、MyBatis一对多

一.用到的实体类如下: Student.java [html] view plaincopy package com.company.entity; import java.io.Serializable; import java.util.Date; public class Student implements Serializable{ private static final long serialVersionUID = 1L; private int id; private Stri

MyBatis批量增删改查操作

前文我们介绍了MyBatis基本的增删该查操作,本文介绍批量的增删改查操作.前文地址:http://blog.csdn.net/mahoking/article/details/43673741 批量增加操作步骤 1. 在接口UserMapper中添加批量增加方法. /** * 批量增加操作 * @param users */ public void batchInsertUsers(List<User> users); 2.在User.xml中添加批量增加操作的配置. <!-- 批量增

使用DOM进行xml文档的crud(增删改查)操作&amp;lt;操作详解&amp;gt;

很多朋友对DOM有感冒,这里我花了一些时间写了一个小小的教程,这个能看懂,会操作了,我相信基于DOM的其它API(如JDOM,DOM4J等)一般不会有什么问题. 后附java代码,也可以下载(可点击这里入下载)导入到Eclipse或MyEclipse. Node和Element的关系 Element是Node的子接口,所以Element的方法要比Node方法要多,这样的话使用起来比较方便,一般情况我们都把节点转换成元素(或者叫标签,即Element); Element是Node的子类型: 比如我

使用DOM进行xml文档的crud(增删改查)操作&lt;操作详解&gt;

很多朋友对DOM有感冒,这里我花了一些时间写了一个小小的教程,这个能看懂,会操作了,我相信基于DOM的其它API(如JDOM,DOM4J等)一般不会有什么问题. 后附java代码,也可以下载(可点击这里入下载)导入到Eclipse或MyEclipse. Node和Element的关系 Element是Node的子接口,所以Element的方法要比Node方法要多,这样的话使用起来比较方便,一般情况我们都把节点转换成元素(或者叫标签,即Element); Element是Node的子类型: 比如我

SAP云平台以微服务的方式提供了Document的CRUD(增删改查)操作。该微服务基于标准的CMI

SAP云平台以微服务的方式提供了Document的CRUD(增删改查)操作.该微服务基于标准的CMIS协议(Content Management Interoperability Service). 同标准的CMIS相比,SAP云平台的Document Service增添了一些功能的支持: 通过一个Hello World应用来了解如何在Java程序里消费SAP云平台的Document Service. 通过这个链接下载例子程序. 点击该超链接下载Java Web Tomcat 8 SDK. 例子

MyBatis基本增删改查操作

本文内容主要介绍单条记录的增删改查操作,MyBatis提供了很多完成单条记录的增删改查操作的API.本例主要讲述<UserMapper> UserMapper org.apache.ibatis.session.SqlSession.getMapper(Class<UserMapper> clazz)的使用.使用此API,我们需要创建UserMapper操作接口,函数名和MyBatis的User.xml配置文件中的操作id名对应. [转载使用,请注明出处:http://blog.c

Mybatis实现单表增删改查操作

mybatis是对持久层进行了封装.mybatis文档地址:https://mybatis.org/mybatis-3/zh/index.html 下面实现单表的增删改查操作. 1.新建maven项目命名为mybatis.并在pom.xml中引入相关依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0"