diff --git a/src/main/java/org/ylhealth/ym/springtest/controller/TestController.java b/src/main/java/org/ylhealth/ym/springtest/controller/TestController.java index 30f66324c4e8ee061b602b90db2e6eafe651e851..18e8b105ebd417e597e63c65f77eee47be7c869e 100644 --- a/src/main/java/org/ylhealth/ym/springtest/controller/TestController.java +++ b/src/main/java/org/ylhealth/ym/springtest/controller/TestController.java @@ -1,6 +1,13 @@ package org.ylhealth.ym.springtest.controller; +import java.util.List; + import javax.inject.Inject; +import javax.persistence.EntityManager; +import javax.persistence.Query; + +import org.hibernate.SQLQuery; +import org.hibernate.transform.Transformers; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.bind.annotation.GetMapping; @@ -43,4 +50,17 @@ public class TestController { logger.debug("testTransaction2 end"); return "結束3"; } + + @Inject + private EntityManager em; + @GetMapping("/testQuery") + public List testTransaction4() { + return em.createNamedQuery("CrmSystemL1basic.test").getResultList(); + } + @GetMapping("/testQuery1") + public List testTransaction5() { + Query query = em.createNamedQuery("CrmSystemL1basic.test1"); + query.unwrap(SQLQuery.class).setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP); + return query.getResultList(); + } } diff --git a/src/main/java/org/ylhealth/ym/springtest/entity/CrmSystemL1basic.java b/src/main/java/org/ylhealth/ym/springtest/entity/CrmSystemL1basic.java index 628371ff033a61c07c6bfa761adacb8fed6794f3..9eba960c3587866ae96a79afa66ea3337ef5f11f 100644 --- a/src/main/java/org/ylhealth/ym/springtest/entity/CrmSystemL1basic.java +++ b/src/main/java/org/ylhealth/ym/springtest/entity/CrmSystemL1basic.java @@ -2,19 +2,24 @@ package org.ylhealth.ym.springtest.entity; // Generated Jul 20, 2016 5:22:20 PM by Hibernate Tools 3.2.2.GA import java.util.Date; + import javax.persistence.Cacheable; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; +import javax.persistence.NamedNativeQuery; +import javax.persistence.NamedQuery; import javax.persistence.Table; import javax.persistence.Temporal; import javax.persistence.TemporalType; + import org.hibernate.annotations.CacheConcurrencyStrategy; import org.hibernate.annotations.GenericGenerator; import org.hibernate.annotations.Nationalized; import org.ylhealth.ym.springtest.hibernate.I18NTranslate; import org.ylhealth.ym.springtest.hibernate.I18NTranslates; + import com.fasterxml.jackson.annotation.JsonIgnore; /** CrmSystemL1basic generated by hbm2java */ @@ -26,6 +31,9 @@ import com.fasterxml.jackson.annotation.JsonIgnore; id = "groupCode", table = "CRM_SystemL1Basic_translation", mapping = {@I18NTranslate(column = "groupName", field = "groupName")}) + +@NamedQuery(name = "CrmSystemL1basic.test", query="select new map(groupCode as groupCode1, groupName as groupName1) from CrmSystemL1basic") +@NamedNativeQuery(name = "CrmSystemL1basic.test1", query="select groupCode as 'a.groupCode1', groupName as groupName1 from CRM_SystemL1Basic") public class CrmSystemL1basic implements java.io.Serializable { private String groupCode;