如何新建映射.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

如何新建映射

1概述:映射的定义与核心价值

映射在信息技术中是一个基础而重要的概念,它指的是在两个不同系统、模型或数据结构之间建立对应关系的过程与规则。其核心目的是实现数据的互操作、标准化与价值转化,确保信息能在不同层面(如数据库、应用、内存、网络)间准确、高效地流动与理解。

根据应用场景的不同,新建映射可分为多种类型,其核心步骤与关键决策点如下图所示:

“新建映射通用流程”

“场景分析

确定业务需求与技术环境”

“技术选型

选择核心实现方式”

“方案设计

定义映射规则与结构”

“声明式配置

(如XML,配置文件)”

“注解驱动

(如Java注解)”

“API编程

(如内存映射mmap)”

“自动映射

(依赖约定优于配置)”

“实施创建

执行具体操作”

“验证测试

确保映射正确生效”

一个设计良好的映射是系统高效稳定运行的基石。例如,在搜索引擎中,它决定了数据如何被索引和检索;在对象关系映射中,它沟通了面向对象编程与关系型数据库;在内存管理中,它实现了虚拟地址到物理地址的转换。简单来说,新建映射就是为数据流通铺设“轨道”,为系统交互定义“协议”。

2搜索引擎中的映射新建(以Elasticsearch为例)

在Elasticsearch中,映射用于定义索引中的文档及其字段的存储、索引方式。新建映射主要分为手动和动态两种方式。

2.1新建索引时定义映射

这是最常用的方式,在创建索引的同时,通过mappings参数显式定义文档结构。这种方式提供了最大的灵活性和控制力。

json

json

复制

PUT:9200/commodity{

mappings:{//开始定义映射

properties:{//定义文档的各个属性(字段)

commodity_id:{

type:long//字段类型为长整型

},

commodity_name:{

type:text,//字段类型为文本,会被分词

analyzer:icu_analyzer//指定分词器

},

price:{

type:scaled_float,//缩放类型的浮点数

scaling_factor:100//缩放因子,用于保证精度

},

slsj:{

type:date,//日期类型

format:yyyy-MM-ddHH:mm:ss//自定义日期格式

}

}

}}

关键参数说明:

type:定义字段的数据类型,如text(全文检索)、keyword(精确匹配、聚合)、long、date等。这是映射中最核心的设置

index:控制字段是否被索引。设为false则该字段不可被搜索,常用于仅存储字段

analyzer:为text字段指定分词器,决定文本如何被分解为词元

format:为date类型字段指定自定义格式

2.2向已存在索引添加字段映射

对于已存在的索引,虽然无法修改已有字段的映射(因为可能使已索引数据失效),但可以添加新的字段映射。

复制

PUT:9200/commodity/_mapping/

{

properties:{

new_category:{//新增的字段type:keyword

}

}

}

2.3动态映射

如果未显式定义映射,Elasticsearch会根据传入文档的字段值自动推断类型并创建映射,此即动态映射。例如,插入一个包含age:25的JSON文档,ES会自动将age字段映射为long类型。虽然便捷,但动态映射可能导致字段类型不符合预期,生产环境中推荐优先使用显式映射以获得确定性。

3对象关系映射中的映射新建(以MyBatis为例)

在MyBatis这类ORM框架中,新建映射的核心是建立数据库表与Java对象之间的对应关系。

3.1通过XML文件配置映射

这是MyBatis最传统和强大的方式,通过在XML映射文件中定义resultMap来详细配置。

xml

xml

复制

!--首先定义一个ResultMap,id是它的标识,type对应Java实体类--resultMapid=UserResultMaptype=com.example.User

!--id标签用于映射主键--

idcolumn=idproperty=id/

!--result标签用于映射普通字段--

resultcolumn=usernameproperty=name

文档评论(0)

133****9689 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档