当前位置: 首页 > news >正文

国内虚拟助手网站网站建设费交文化事业

国内虚拟助手网站,网站建设费交文化事业,营销策划书怎么写格式,上海制作网页宣传文章目录 自动映射原理jdbcType同时启用配置文件和注解两种配置方式 自动映射原理 在 MyBatis 的配置文件(settings 元素部分)中,有一个 autoMappingBehavior 配置,其默认值为 PARTIAL ,表示 MyBatis 会自动映射&…

在这里插入图片描述

文章目录

    • 自动映射原理
    • jdbcType
    • 同时启用配置文件和注解两种配置方式

自动映射原理

在 MyBatis 的配置文件settings 元素部分)中,有一个 autoMappingBehavior 配置,其默认值为 PARTIAL ,表示 MyBatis 会自动映射(简单的,没有嵌套关系的)结果集。

有三种自动映射等级:

NONE - 禁用自动映射。仅对手动映射的属性进行映射。
PARTIAL - 对除在内部定义了嵌套结果映射(也就是连接的属性)以外的属性进行映射
FULL - 自动映射所有属性。`

"PARTIAL"也 表示设置自动映射的行为为部分匹配模式。具体来说,当实体类中存在与查询结果列相同的属性时,MyBatis 会将它们进行自动映射,而对于没有匹配的列,则会忽略它们。这样可以避免在实体类中定义过多无用的属性。

需要注意的是,如果设置了全局的自动映射行为(通过 标签中的 autoMappingBehavior 属性),则该项设置会被覆盖。此外,还可以在映射语句(Mapper)级别或者方法级别上进行自定义的自动映射行为设置,其他可以参考官方文档Auto-Mapping。

<configuration><properties>....</properties><settings>....<setting name="autoMappingBehavior" value="PARTIAL"/>....</settings><typeAliases>....</typeAliases> ....</configuration>

如果你的类的属性名与表的字段名一致,那么 MyBatis 会自动将结果集的一行封装成一个 JavaBean 。

一般而言,数据库表和字段的命名风格是以下划线为分隔符,而 Java 中命名风格是驼峰命风格。

如果,PO 类的属性名和 Table 的列名仅仅是命名风格的不同,那么此时你可以使用 mapUnderscoreToCamelCase 进行控制,以便于自动转换或不转换。

<configuration><properties>....</properties><settings>....<setting name="mapUnderscoreToCamelCase" value="false"/>....</settings><typeAliases>....</typeAliases> ....</configuration>

jdbcType

将 ResultSet 数据映射成对象时,会涉及到两种数据类型:数据库类型(varchar) 和 Java 类型(String)。MyBatis 使用 类型转换器(typeHandler)来处理两种类型数据的转换问题。

[!attention]注意,
不同的数据库对于同一个数据类型的概念可能会使用不同的『单词』。
例如:整型,在 MySQL 中是 INT ,在 Oracle 中是 INTEGER

在 Java 的 JDBC 中,对不同数据库的各种类型的『称呼』进行了统一:JDBC 类型 。例如:

『整型』的 JDBC Type 表示为 INTEGER ,即表示 MySQL 中的 INT ,又表示 Oracle 中的 INTEGER

常见的有:

JDBC TypeMysql TypeJava Type
SMALLINTSMALLINTshort
java.lang.Short
INTEGERINTEGERint
java.lang.Integer
BIGINTBIGINTlong
java.lang.Long
FLOATFLOATfloat
java.lang.Float
DOUBLEDOUBLEdouble
java.lang.Double
DECIMALDECIMALjava.math.BigDecimal
CHARCHARjava.lang.String
VARCHARVARCHARjava.lang.String
DATEDATEjava.util.Date
TIMETIMEjava.util.Date
TIMESTAMPTIMESTAMPjava.util.Date

注意:对于 java.lang.Datejava.sql.Date ,是两种不同的类型。在写 JavaBean 一定要确认你所使用的是哪个 Date 类型(一般都是使用 java.lang.Date

同时启用配置文件和注解两种配置方式

虽然通过 mapper.xml 配置文件和注解都可以拿到 mapper 对象,进而操作数据库,不过,有意思地是,Mybatis 居然支持同时使用 mapper.xml 和注解

虽然这个特性看起来有些多余,但是实际上它极具价值,因为,注解配置虽然万般皆好,唯独有一个功能它实现不了,在这个功能上注解是取代不了 mapper.xml 配置文件的(不知道这个问题在 MyBatis 的未来的发展中会不会解决掉)。所以,MyBatis 允许两种配置方式同时使用,我们就可以同时「享受」注解和配置文件的全部优点的同时,又避免各自的缺点。

同时使用两种配置方式本质上是让 mapper.xml 和注解两者进行分工,你要做的操作和工作分配如下:

  1. “退回”到早期 mapper.xml 的使用方式:在核心配置文件中指定 mapper.xml 配置文件的路径名(而不是指定接口所在)
  2. 在 mapper.xml 配置文件中只配置 “<resultMap>” 指定映射规则,不配置 SQL 语句。SQL 语句在接口中通过 @Select 等注解指定;
  3. 在注解中使用 “@ResultMap” 注解引用 mapper.xml 配置文件中的映射规则。

[!attention] 注意
映射文件中的映射规则 “<resultMap>” 可以有多个,他们之间通过 id 来进行区分。

另外,注解是哪一点功能实现不了,反而不如 mapper.xml 配置文件,我们在复杂映射关系之后讲解。其实就是 @Results 注解没有 100% 实现 <resultMap> 的全部功能。

http://www.yayakq.cn/news/962610/

相关文章:

  • 广东建设工程信息网站6wordpress api下载
  • 邯郸当地招聘网站上海专业网络营销
  • 公司网站推广方案模板京东网站设计风格
  • 深圳定制网站建设什么网站做招聘收录好
  • 做软件需要网站吗网站建设算什么费用
  • 搜索引擎作弊的网站有哪些河北响应式网站企业
  • 做网站赚取广告费网站建设seo优化内蒙
  • 网站 稳定性哪里可以下企业网站模板
  • 荆门网站建设服务vs2017网站开发时修改的页面未变化
  • 建设局工程网站微信小游戏制作平台
  • 工艺宣传网站建设商务网站内容建设包括
  • 怀化网站定制福建网站建设费用
  • app优化网站建设快手刷评论推广网站
  • 深圳网站建设 百度一下网站建设收费标准讯息
  • wordpress个人博客建站系统frontpage网页制作
  • 国外建设网站首页wordpress 提示
  • 做网站计划比亚迪新能源汽车车型
  • 邢台县建设局网站做网站要找什么人
  • 网站轮播图能用什么软件做wordpress更改字体
  • 网站建设和管理存在的问题宁波市江北区庄桥街道工程建设领域网站
  • 电子商务网站规划与建设步骤做网站关于我们
  • 免费网站入口2021东莞网站建设技术
  • 网站设计与网站建设哪里有网站建设加盟合作
  • 怎么做网站的图片跳转1号网站建设
  • 台州网站建设选浙江华企专注律师微网站建设与律师微信营销
  • 国外优秀人像摄影网站wordpress完成静态化
  • 关联网站有那些天助网的网站
  • 常州网站开发公司推荐贸易网站建设公司
  • 石家庄哪家公司做网站好安徽省建设造价管理协会网站
  • 深圳定制型网站建设企业网站快速建站