Files
hibernate-demo/src/main/java/com/ankurm/hibernatedemo/mappingstyle/MappingXmlNaturalIdEntity.java
T

40 lines
1.1 KiB
Java
Executable File

package com.ankurm.hibernatedemo.mappingstyle;
/**
* Zero annotations. Mapped entirely by {@code mapping-xml-natural-id.xml}, using Hibernate's
* native "mapping.xml" XML dialect (namespace {@code http://www.hibernate.org/xsd/orm/mapping},
* schema {@code mapping-7.0.xsd}) -- NOT the JPA-standard orm.xml dialect, which has no
* <natural-id> element at all. Proves a Hibernate-only concept (@NaturalId) can be expressed
* in XML, just not in the portable JPA orm.xml XSD.
*
* <p>Docs: docs/04-annotations-vs-xml.md, Topic 1 ("what XML can do that annotations cannot" --
* inverted: what one XML dialect can do that the other XML dialect and annotations both cannot
* express the same way).
*/
public class MappingXmlNaturalIdEntity {
private Long id;
private String sku;
private String name;
public MappingXmlNaturalIdEntity() {
}
public MappingXmlNaturalIdEntity(String sku, String name) {
this.sku = sku;
this.name = name;
}
public Long getId() {
return id;
}
public String getSku() {
return sku;
}
public String getName() {
return name;
}
}