| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- [[java-admin-indices-put-mapping]]
- ==== Put Mapping
- You can add mappings for a new type at index creation time:
- ["source","java",subs="attributes,callouts,macros"]
- --------------------------------------------------
- include-tagged::{client-tests}/IndicesDocumentationIT.java[index-with-mapping]
- --------------------------------------------------
- <1> <<java-admin-indices-create-index,Creates an index>> called `twitter`
- <2> Add a `tweet` type with a field called `message` that has the datatype `text`.
- There are several variants of the above `addMapping` method, some taking an
- `XContentBuilder` or a `Map` with the mapping definition as arguments. Make sure
- to check the javadocs to pick the simplest one for your use case.
- The PUT mapping API also allows to specify the mapping of a type after index
- creation. In this case you can provide the mapping as a String similar to the
- Rest API syntax:
- ["source","java",subs="attributes,callouts,macros"]
- --------------------------------------------------
- include-tagged::{client-tests}/IndicesDocumentationIT.java[putMapping-request-source]
- --------------------------------------------------
- <1> Puts a mapping on existing index called `twitter`
- <2> Adds a `user` mapping type.
- <3> This `user` has a predefined type
- <4> type can be also provided within the source
- You can use the same API to update an existing mapping:
- ["source","java",subs="attributes,callouts,macros"]
- --------------------------------------------------
- include-tagged::{client-tests}/IndicesDocumentationIT.java[putMapping-request-source-append]
- --------------------------------------------------
- <1> Puts a mapping on existing index called `twitter`
- <2> Updates the `user` mapping type.
- <3> This `user` has now a new field `user_name`
- :base-dir!:
|