• mybatis中的一些标签使用


    主要有两个配置文件,一个是主配置文件SqlConfig.xml,

    还有一个是dao接口实现类相对应的mapper的配置文件 。比如userDao的userDao.xml配置文件。

    1.resultType 标签

    用在userDao.xml 中,用在增删改查标签中,用于指定结果的返回类型,比如说下面这样。

     2.resultMap标签

    用在userDao.xml中,这个标签可以用来解决数据库字段和实体字段名称不匹配的问题,相当于是对我们配置的数据库表的字段起别名。用来和我们实体字段匹配,一个对一个的匹配。

     上面的 id=“userMap” ,就是给这个resultMap标签有一个唯一id,用来给下面的语句引用,type="domain.User" 表示我们配置的是哪个实体类,

    下面的id表示主键相对应,result表示普通属性。  记住:resultType和resultMap只能用一个,我们如果用了resultMap就等于想要的id就可以了,然后在查询出结果返回时就会自动用这个里面的属性进行匹配。

    3.#{}字符

    它表示占位符,相当于原来jdbc中sql语句中的?,用来在实际执行时替换实际的数据,具体数据是由#{}里面的内容决定的,这是我们需要传入的参数。

    4.select last_insert_id()

    这是用来查询自增长的id,如果我们往数据库中插入一条记录,但是如果id是自增长的,那么你如果取到这个id就可以通过这个语句。

    5.模糊查询的%

    对于模糊查询我们在sql语句中是不需要写出%的,就只需要留一个#{string}就可以,其他的可以在传参的时候给出,这样的话,sql中就会是这样 like ?

    6.#{}和${}的区别

    #{}表示一个占位符号通过#{}可以实现preparedStatement向占位符中设置值,自动进行java类型和jdbc类型转换,#{}可以有效防止sql注入。#{}可以接收简单类型值或pojo属性值。如果parameterType传输单个简单类型值,#{}括号中可以是value或其它名称。
    ${}表示拼接sql串通过${}可以将parameterType传入的内容拼接在sql中且不进行jdbc类型转换,${}可以接收简单类型值或pojo属性值,
    如果parameterType传输单个简单类型值,${}括号中只能是value。

    7.properties属性

    是在SqlConfig.xml中的配置属性。对于properties属性,这是用来将数据库连接信息和程序解耦,如果不用resource就是被注释掉的内容,resource可以用来引入另外的配置文件中的属性配置。

     8.typeAliases标签

    这是在SqlConfig中的配置,这个标签就是用来给我们的domain下的实体类起别名的,这个是在主配置文件中使用的,配置了以后就可以在任意地方使用我们配好的别名,相当于少些几个字,package使用就可以自动使别包下的类名当作别名。

     9。mapper标签

    这是主配置文件中使用的标签。表示映射器的意思,这样使用就可以自动找到我们对应的每个映射文件的位置,mappers标签是大的mapper标签的父类,里面很多的mapper标签,每个都表示一个映射配置文件,而这个映射配置文件对应着一个dao的实现。

  • 相关阅读:
    修改 Mac 默认 PHP 运行环境,给 MAMP 配置全局 Composer
    修改 Mac 默认 PHP 运行环境,给 MAMP 配置全局 Composer
    Intellij Idea/Webstorm/Phpstorm 的高效快捷键
    Intellij Idea/Webstorm/Phpstorm 的高效快捷键
    管理工具推荐
    mongo find
    redis 工具
    Redis Quick Start [熟练版]
    Redis cluster
    redis cluster 使用中出现的问题
  • 原文地址:https://www.cnblogs.com/cold-windy/p/11929142.html
Copyright © 2020-2023  润新知