mybatis的增删改查

一、配置文件方式

mapper.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.hy.mybatis.test.News">

    <insert id="insertNews" parameterType="com.hy.mybatis.test.News">
        insert into news(title,content,author,createdate) values(#{title},#{content},#{author},#{createdate})
    </insert>

    <delete id="deleteNews" parameterType="int">
        delete from news where id= #{id}
    </delete>

    <update id="updateNews" parameterType="com.hy.mybatis.test.News">
        update news set author = #{author} where id = #{id}
    </update>

    <select id="getAllNews" resultType="com.hy.mybatis.test.News">
        select * from news
    </select>

    <select id="getNews" parameterType="int" resultType="com.hy.mybatis.test.News">
        select * from news where id=#{id}
    </select>
</mapper>

引入:

<mappers>
        <mapper resource="com/hy/mybatis/test/News.xml"/>
    </mappers>

测试:

public static SqlSession getSqlSession() {
        InputStream is = MyBatisUtil.class.getClassLoader().getResourceAsStream("mybatis.xml");
        SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(is);
        return factory.openSession(true);
    }

封装获取sqlSession的方法,这里采用自动提交事务的方式。

@Test
    public void testAddNews() {
        SqlSession session = MyBatisUtil.getSqlSession();
        String statement = "com.hy.mybatis.test.News.insertNews";
        int insert = session.insert(statement, new News(-1, "android学习", "学习",
                "李博", new Date()));
        System.out.println(insert);
    }

    @Test
    public void testDeleteNews() {
        SqlSession session = MyBatisUtil.getSqlSession();
        String statement = "com.hy.mybatis.test.News.deleteNews";
        int delete = session.delete(statement, 2);
        System.out.println(delete);
    }

    @Test
    public void testUpdateNews() {
        SqlSession session = MyBatisUtil.getSqlSession();
        String statement = "com.hy.mybatis.test.News.updateNews";
        int update = session.update(statement, new News(3, "", "", "xx",
                new Date()));
        System.out.println(update);
    }

    @Test
    public void testgetAllNews() {
        SqlSession session = MyBatisUtil.getSqlSession();
        String statement = "com.hy.mybatis.test.News.getAllNews";
        List<News> list = session.selectList(statement);
        System.out.println(list);
    }

二、注解方式

写一个mapperInterface:

package com.hy.mybatis.test;

import java.util.List;

import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;

public interface NewsInterface {

    @Insert("insert into news(title,content,author,createdate) values(#{title},#{content},#{author},#{createdate})")
    public int add(News news);

    @Delete("delete from news where id= #{id}")
    public int deleteById(int id);

    @Update("update news set author = #{author} where id = #{id}")
    public int update(News news);

    @Select("select * from news")
    public List<News> getAllNews();

}

测试代码:

@Test
    public void testAddNews2() {
        SqlSession session = MyBatisUtil.getSqlSession();
        NewsInterface newsInterface= session.getMapper(NewsInterface.class);
        int add = newsInterface.add(new News(-1, "android学习", "学习",
                "李博", new Date()));
        System.out.println(add);
    }

先获取一个mapperInterface的示例,然后调用就行了!!

时间: 2025-01-08 22:23:18

mybatis的增删改查的相关文章

mybatis之增删改查

一. 简介: Mybatis本是apache的一个开源项目ibatis, 2010年这个项目由apache software foundation迁移到了google code, 并且改名为Mybatis. Mybatis是一个基于Java的持久层框架. 二. 增删改查: 1. 代码结构图: 2. User实体类: /** * User实体类 */ public class User { private String id; private String uname; // 注意: 该字段名称与

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 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架.MyBatis 消除 了几乎所有的 JDBC 代码和参数的手工设置以及结果集的检索.MyBatis 使用简单的 XML 或注解用于配置和原始映射,将接口和 Java 的 POJOs(Plan Old Java Objects,普通的 Java 对象)映射成数据库中的记录.    MyBatis的前身是IBatis,也是一个使用很广的持久化框架.和hibernate对比,MyBatis更基础,要求使用者自己控制的东西更多

idea使用mybatis写增删改查

idea应用mybatis写增删改查 entity层 private Integer id;private String userCode;private String userName;private String userPassword;private Integer gender;private Date birthday;private String phone;private String address;private Integer userRole;private Intege

MyBatis批量增删改查操作

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

MyBatis的增删改查。

数据库的经典操作:增删改查. 在这一章我们主要说明一下简单的查询和增删改,并且对程序接口做了一些调整,以及对一些问题进行了解答. 1.调整后的结构图: 2.连接数据库文件配置分离: 一般的程序都会把连接数据库的配置单独放在.properties 文件中,然后在XML文件中引用,示例如下: config.properties: driver=oracle.jdbc.OracleDriver url=jdbc:oracle:thin:@127.0.0.1:1521:orcl username=pho

springboot整合mybatis, 增删改查

这篇文章是介绍 Spring Boot整合mybatis的,一个简单的增删改查. 建表DROP TABLE IF EXISTS tbl_user; CREATE TABLE tbl_user ( id int(11) NOT NULL AUTO_INCREMENT, user_name varchar(255) NOT NULL, password varchar(255) NOT NULL, age int(11) DEFAULT NULL, PRIMARY KEY (id)) ENGINE=

上手spring boot项目(三)之spring boot整合mybatis进行增删改查的三种方式。

1.引入依赖 <!--springboot的web起步依赖--><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId></dependency> <!-- Mybatis起步依赖 --> <dependency> <groupId>o

MyBatis案例&amp;增删改查

一.MyBatis入门案例: ①:引入jar包 ②:创建实体类 Dept,并进行封装 ③ 在Src下创建大配置mybatis-config.xml 1 <?xml version="1.0" encoding="UTF-8" ?> 2 <!DOCTYPE configuration 3 PUBLIC "-//mybatis.org//DTD Config 3.0//EN" 4 "http://mybatis.org/d

Mybatis实现增删改查(二)

1. 准备         请先完成Mybatis基本配置(一)的基本内容 2. 查询多条商品信息         1)在com.mybatis.dao.PartDao中增加接口函数 public List<PartInfo> getAllPartInfo();         2)在com.mybatis.dao.mapper.PartMapper中增加其实现方法.尽管我需要赶回的数据类型为List<PartInfo>,但是在Mapper文件中配置resultType属性的时候依