7mybatis学习——基础增删改

Arbitrary233      2022-05-09     307

关键词:

一、mybatis基础增删改

sqlmapper中配置

    <insert id="addEmp" parameterType="employee">
        insert into employee(name,gender) values(#{name},#{gender})
    </insert>
    
    <update id="updateEmp">
        update employee set name=#{name},gender=#{gender}
        where id=#{id}
    </update>
    
    <delete id="deleteEmp">
        delete from employee where id = #{id}
    </delete>

mapper接口中添加相应方法

 增删改测试

    @Test
    public void testAdd() throws IOException {
        String source = "mybatis-config.xml";
        InputStream inputStream = Resources.getResourceAsStream(source);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        
        //获取sqlSession实例,能直接执行映射的sql语句,获取的session不会自动提交
        SqlSession sqlSession = sqlSessionFactory.openSession();
        
        EmployeeMapper employeeMapper = sqlSession.getMapper(EmployeeMapper.class);
        Employee employee = new Employee(null, "tom", "0");
        employeeMapper.addEmp(employee);
        sqlSession.commit();
        sqlSession.close();
    }
    
    @Test
    public void testUpdate() throws IOException {
        String source = "mybatis-config.xml";
        InputStream inputStream = Resources.getResourceAsStream(source);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        
        //获取sqlSession实例,能直接执行映射的sql语句,获取的session不会自动提交
        SqlSession sqlSession = sqlSessionFactory.openSession();
        
        EmployeeMapper employeeMapper = sqlSession.getMapper(EmployeeMapper.class);
        Employee employee = employeeMapper.selectEmpById(1);
        employee.setName("xiaohon");
        employeeMapper.updateEmp(employee);
        sqlSession.commit();
        sqlSession.close();
    }
    
    @Test
    public void testDelete() throws IOException {
        String source = "mybatis-config.xml";
        InputStream inputStream = Resources.getResourceAsStream(source);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        
        //获取sqlSession实例,能直接执行映射的sql语句,获取的session不会自动提交
        SqlSession sqlSession = sqlSessionFactory.openSession();
        
        EmployeeMapper employeeMapper = sqlSession.getMapper(EmployeeMapper.class);
        employeeMapper.deleteEmp(2);
        sqlSession.commit();
        sqlSession.close();
    }

二、mybatis获取自增主键

    <!-- 获取自增主键的值:
            mysql支持自增主键,自增主键的获取
            mybatis也是通过配置useGeneratedKeys="true"使用自增主键获取主键值策略
             keyProperty=""指定对应的主键属性,也就是mybatis获取到主键值以后,将这个值封装到javabean的属性中-->
    <insert id="addEmp" parameterType="employee" 
        useGeneratedKeys="true" keyProperty="id">
        insert into employee(name,gender) values(#{name},#{gender})
    </insert>

测试方法中查看添加对象后的属性

    @Test
    public void testAdd() throws IOException {
        String source = "mybatis-config.xml";
        InputStream inputStream = Resources.getResourceAsStream(source);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        
        //获取sqlSession实例,能直接执行映射的sql语句,获取的session不会自动提交
        SqlSession sqlSession = sqlSessionFactory.openSession();
        
        EmployeeMapper employeeMapper = sqlSession.getMapper(EmployeeMapper.class);
        Employee employee = new Employee(null, "tom", "0");  //此时id为null
        employeeMapper.addEmp(employee);
        System.out.println(employee);    //此时有id
        sqlSession.commit();
        sqlSession.close();
    }

 

go语言学习笔记—基础—高级数据类型—数据容器—字典map:map键值对的增删改查(代码片段)

1.插入元素(增)map插入key:value键值对scene:=map[string]int"one":1,"two":2,"three":3scene["four"]=4countryCapitalMap:=make(map[string]string)//map插入key- 查看详情

mybatis的sql映射文件增删改查的学习

在sql映射文件中配置增删改查的操作:    1、增:    在sql映射文件中添加insert标签,并且增加对应的sql语句。(在之前博文示例的基础上添加)在对应的接口中添加对应的方法,方法名与sql映射文... 查看详情

hibernate-基础入门案例,增删改查

项目结构: 数据库:/*SQLyogUltimatev12.09(64bit)MySQL-5.5.53:Database-hibernate01**********************************************************************//*!40101SETNAMESutf8*/;/*!40101SETSQL_MODE=‘‘*/;/*!4 查看详情

mysql最基础命令总结(增删改)(代码片段)

MySQL最基础命令总结(增删改)目录MySQL最基础命令总结(增删改)mysql中查看命令一、创建|删除数据库1、新建|删除数据库2、新建|删除数据表3、向表中新增|删除数据二、更改数据表修改表(alter)修改或更新数据(update)下文... 查看详情

htmldom节点的增删改查

... 上篇博客中,我们已经初步接触了DOM基础,可是我们学习是为了可以更好地应用,今天我们就来看看DOM节点的增删改查。    无论在哪里,我们想要操作一个东西,总是应该先去获得它。那么我们怎么获得呢?... 查看详情

2017-6-1linq基础查询(增删改查)

用小型人员管理系统的项目实战来练习linq的基础增删改查:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Web;///<summary>///users的摘要说明///</summary>publicpartialclassusers{publicstringsexstr{g 查看详情

lucene和solr学习总结增删改查

使用IndexSearcher,IndexWriter对象对索引进行增删改查直接贴代码了,方便日后查看,回顾public class LuceneManager private IndexWriter getIndexWriter()throws IOExceptionDirectorydirectory =FSDirect 查看详情

zookeepercurator学习(增删改查)

主要参考的是curator,github地址:https://github.com/apache/curator/tree/master/curator-examples。zookeeper版本为zookeeper-3.4.9(需要查找合适的curator版本)源码地址:https://gitee.com/zhangjunqing/spring-boot/tree/master/zookeeper 查看详情

基础的增删改查,数据库优化,索引

mysql的特点关系型数据库,免费使用,插入式存储引擎,性能高,基础的增删改查ddl语句,数据定义语句123456789101112createdatabasetest1;dropdatabasetest1;usetest1;createtableemp(enamevarchar(10),hiredatedate,saldecimal(10,2),deptnoint(2));droptableem 查看详情

mongodb基础操作(增删改查)

1.  mongo  进入2.  exiit   退出库操作:  1.  showdbs    查看所有库  2.  db.dropDatabase()  删除当前所在的库  3.  use库名      用哪个库集合操作:  1.  db.createCollection("haha"... 查看详情

dom解析器解析增删改学习笔记

importjava.io.File;importjavax.xml.parsers.DocumentBuilder;importjavax.xml.parsers.DocumentBuilderFactory;importjavax.xml.transform.Result;importjavax.xml.transform.Source;importjavax.xml.transform.Tr 查看详情

django基础5作者的增删改查

 1.内容回顾     1.外键的增删改查       1.外键的语法         models.ForeignKey(to=‘‘,on_delete=models.CASCADE)       2.外键查询的语法         book_obj.press-->取到的是和我这本书关联的... 查看详情

spring和hibernate基础的增删改

所有的dao层可以有个superDao比如:BaseHibernateDao继承的类是hibernate4publicclassBaseHibernateDaoextendsHibernateDaoSupport{  @Resource(name="jsbcTemplate")  protectedJdbcTemlatejdbcTemplate;  @Resource(name="sessionF 查看详情

mysql学习:4dml命令(增删改查)

1、查询表中所有数据:select*fromstudents;  2、插入数据:insertintostudents(id,name,email,address)values(1,\'张三\',\'129@163.com\',\'湖北武汉\'); 3、一次插入多条数据:insertintostudents(id,name,email,address)values(2,\'李四\',\'3 查看详情

零基础之第四天(列表的增删改查)

List列表的增删改查    增 list.Append(内容):直接把要增加的内容添加到最后List.insert(位置,内容):插到指定位置List.extend():把所有内容全部迭代插入到最后删:List.Pop(位置索引)默认是最后:返回一个删除的内容List.Remov... 查看详情

abp学习入门系列(展示实现增删改查)

大致要实现的 效果如下1,添加Controller(用到的X.PagedList 注意到nuget添加)usingSystem.Web.Mvc;usingAbp.Application.Services.Dto;usingAbp.Runtime.Caching;usingAbp.Threading;usingAbp.Web.Mvc.Authorization;usingAuto 查看详情

springmvc学习记录----ssm框架实战用户信息增删改查(代码片段)

文章目录SSM框架实战---用户信息增删改查(1)效果展示(2)pojo层(3)mapper层(4)service层(5)controller层(6)前端主页SSM框架实战—用户信息增删改查(1)效果展示 查看详情

数据库基础类型和增删改查

数据类型:整数型:bigint、int、smallint、mediumint、tinyint小数类型:decimal、numeric浮点型:real、float、double位型:bit字符型:char、varchar、longvarchar、longtextunicode字符型:nchar、nvarchar文本型:text、tinytext二进制型:binary、varbinary日... 查看详情