zoukankan      html  css  js  c++  java
  • Mybatis学习笔记4

    获取自增主键的值:
    mysql支持自增主键,自增主键值的获取,mybatis也是利用statement.getGenreatedKeys();
    useGeneratedKeys="true";使用自增主键获取主键值策略
    keyProperty;指定对应的主键属性,也就是mybatis获取到主键值以后,将这个值封装给javaBean的哪个属性

    1、接口定义

    package com.mybatis.dao;
    
    import com.mybatis.bean.Employee;
    
    public interface EmployeeMapper {
        public void addEmp(Employee employee);
    }
    

     2、mapper定义

    <?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.dao.EmployeeMapper">
        <!-- parameterType:参数类型,可以省略,
    	获取自增主键的值:
    		mysql支持自增主键,自增主键值的获取,mybatis也是利用statement.getGenreatedKeys();
    		useGeneratedKeys="true";使用自增主键获取主键值策略
    		keyProperty;指定对应的主键属性,也就是mybatis获取到主键值以后,将这个值封装给javaBean的哪个属性
    	-->
        <insert id="addEmp" parameterType="com.mybatis.bean.Employee" useGeneratedKeys="true" keyProperty="id">
            insert into tbl_employee(last_name, gender, email)
            values (#{lastName},#{gender},#{email})
        </insert>
    </mapper>
    

     3、测试代码

    package com.mybatis.demo;
    
    import java.io.IOException;
    import java.io.InputStream;
    
    import com.mybatis.bean.Employee;
    import com.mybatis.dao.EmployeeMapper;
    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 MyTest {
        public SqlSessionFactory getSqlSessionFactory() throws IOException {
            String resource = "mybatis-config.xml";
            InputStream inputStream = Resources.getResourceAsStream(resource);
            return new SqlSessionFactoryBuilder().build(inputStream);
        }
    
        @Test
        public void testAdd() throws IOException {
            SqlSessionFactory sqlSessionFactory = getSqlSessionFactory();
            SqlSession openSession = sqlSessionFactory.openSession(true);
            try {
                EmployeeMapper mapper = openSession.getMapper(EmployeeMapper.class);
                Employee employee = new Employee("jetty", "jetty@126.com", 1);
                mapper.addEmp(employee);
                System.out.println(employee.getId());
            } finally {
                openSession.close();
            }
        }
    }
    
  • 相关阅读:
    Python的包管理工具Pip
    C语言移位运算符
    malloc函数具体解释
    HDU
    Java中Scanner的使用方法
    DOS call 中的%cd%,当前文件夹演示
    没有找到MSVCR100.dll解决方法
    什么是响应式表格(响应式表格和普通表格的区别)
    Redis和Memcache和MongoDB简介及区别分析(整理)
    GIT将本地项目上传到Github(两种简单、方便的方法)
  • 原文地址:https://www.cnblogs.com/xidian2014/p/10349429.html
Copyright © 2011-2022 走看看