事务持久化调整
parent
c33076e0a1
commit
a6301d2d8c
@ -0,0 +1,52 @@
|
||||
package cn.estsh.i3plus.core.apiservice.controller;
|
||||
|
||||
import cn.estsh.i3plus.core.api.iservice.busi.ITestTransService;
|
||||
import cn.estsh.i3plus.platform.common.util.PlatformConstWords;
|
||||
import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil;
|
||||
import cn.estsh.impp.framework.base.controller.CoreBaseController;
|
||||
import cn.estsh.impp.framework.boot.exception.ImppBusiException;
|
||||
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
|
||||
import cn.estsh.impp.framework.boot.fastdfs.FastDFSClient;
|
||||
import cn.estsh.impp.framework.boot.fastdfs.FastDFSFile;
|
||||
import cn.estsh.impp.framework.boot.util.ResultBean;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
||||
|
||||
/**
|
||||
* @Description : 对事务以及entityManager的操作演示
|
||||
* @Reference :
|
||||
* @Author : alwaysfrin
|
||||
* @CreateDate : 2019-04-29 17:20
|
||||
* @Modify:
|
||||
**/
|
||||
@RestController
|
||||
@Api(description="对事务以及entityManager的操作演示")
|
||||
@RequestMapping(PlatformConstWords.BASE_URL + "/demo-trans")
|
||||
public class DemoTransactionController extends CoreBaseController{
|
||||
private static final Logger LOGGER = LoggerFactory.getLogger(DemoTransactionController.class);
|
||||
|
||||
@Autowired
|
||||
private ITestTransService transService;
|
||||
|
||||
@PostMapping("/test1")
|
||||
@ApiOperation(value = "dao混合调用")
|
||||
public ResultBean transTest1(int type,String name) {
|
||||
transService.testListTran(type,name);
|
||||
|
||||
return ResultBean.success("测试成功");
|
||||
}
|
||||
|
||||
@PostMapping("/test2")
|
||||
@ApiOperation(value = "dao混合调用2")
|
||||
public ResultBean transTest2(int type,String name) {
|
||||
transService.testListTranSec(type,name);
|
||||
|
||||
return ResultBean.success("测试成功");
|
||||
}
|
||||
}
|
@ -0,0 +1,25 @@
|
||||
package cn.estsh.i3plus.core.apiservice.dao;
|
||||
|
||||
import cn.estsh.i3plus.pojo.platform.bean.SysTool;
|
||||
import cn.estsh.i3plus.pojo.platform.bean.SysUser;
|
||||
import cn.estsh.i3plus.pojo.platform.bean.SysUserInfo;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description :
|
||||
* @Reference :
|
||||
* @Author : alwaysfrin
|
||||
* @CreateDate : 2019-04-29 17:19
|
||||
* @Modify:
|
||||
**/
|
||||
public interface ITestTransDao {
|
||||
|
||||
List listUser(String name);
|
||||
|
||||
SysUserInfo getUser(String name);
|
||||
|
||||
SysTool getSysTool(String name);
|
||||
|
||||
List listSysTool(String name);
|
||||
}
|
@ -0,0 +1,26 @@
|
||||
package cn.estsh.i3plus.core.apiservice.dao;
|
||||
|
||||
import cn.estsh.i3plus.pojo.platform.bean.SysTool;
|
||||
import cn.estsh.i3plus.pojo.platform.bean.SysUserInfo;
|
||||
import org.springframework.data.jpa.repository.Query;
|
||||
import org.springframework.data.repository.CrudRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description :
|
||||
* @Reference :
|
||||
* @Author : alwaysfrin
|
||||
* @CreateDate : 2019-04-29 17:20
|
||||
* @Modify:
|
||||
**/
|
||||
@Repository
|
||||
public interface ITransDaoSec extends CrudRepository<SysTool,Long> {
|
||||
|
||||
List<SysTool> findByName(String name);
|
||||
|
||||
//按位查询
|
||||
@Query("select u from SysTool u where name = :uname")
|
||||
List<SysTool> findSysToolByName(String uname);
|
||||
}
|
@ -0,0 +1,114 @@
|
||||
package cn.estsh.i3plus.core.apiservice.daoimpl;
|
||||
|
||||
import cn.estsh.i3plus.core.apiservice.dao.ITestTransDao;
|
||||
import cn.estsh.i3plus.pojo.platform.bean.SysTool;
|
||||
import cn.estsh.i3plus.pojo.platform.bean.SysUser;
|
||||
import cn.estsh.i3plus.pojo.platform.bean.SysUserInfo;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.persistence.EntityManager;
|
||||
import javax.persistence.PersistenceContext;
|
||||
import javax.persistence.Query;
|
||||
import javax.persistence.metamodel.EntityType;
|
||||
import javax.persistence.metamodel.ManagedType;
|
||||
import javax.persistence.metamodel.Metamodel;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description :
|
||||
* @Reference :
|
||||
* @Author : alwaysfrin
|
||||
* @CreateDate : 2019-04-29 17:31
|
||||
* @Modify:
|
||||
**/
|
||||
@Service
|
||||
public class TestTransDaoImpl implements ITestTransDao {
|
||||
|
||||
@Autowired
|
||||
private EntityManager entityManager;
|
||||
|
||||
@Override
|
||||
public List listUser(String name) {
|
||||
System.out.println("======listUser=====");
|
||||
Metamodel mm = entityManager.getMetamodel();
|
||||
for(EntityType<?> s : mm.getEntities()){
|
||||
System.out.println("entityType : " + s.getName());
|
||||
}
|
||||
for(ManagedType<?> s : mm.getEntities()){
|
||||
System.out.println("ManagedType : " + s.getPersistenceType().name());
|
||||
}
|
||||
|
||||
System.out.println(entityManager.getDelegate() + "====" + entityManager);
|
||||
System.out.println("======listUser end=====");
|
||||
|
||||
String hql = "select m from SysUserInfo m where m.name = :name";
|
||||
Query query = entityManager.createQuery(hql,SysUserInfo.class);
|
||||
query.setParameter("name", name);
|
||||
|
||||
return query.getResultList();
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysUserInfo getUser(String name) {
|
||||
System.out.println("======getUser=====");
|
||||
Metamodel mm = entityManager.getMetamodel();
|
||||
for(EntityType<?> s : mm.getEntities()){
|
||||
System.out.println("entityType : " + s.getName());
|
||||
}
|
||||
for(ManagedType<?> s : mm.getEntities()){
|
||||
System.out.println("ManagedType : " + s.getPersistenceType().name());
|
||||
}
|
||||
|
||||
System.out.println(entityManager.getDelegate() + "====" + entityManager);
|
||||
System.out.println("======getUser end=====");
|
||||
|
||||
String hql = "select m from SysUserInfo m where m.name = :name";
|
||||
Query query = entityManager.createQuery(hql,SysUserInfo.class);
|
||||
query.setParameter("name", name);
|
||||
|
||||
return (SysUserInfo) query.getSingleResult();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List listSysTool(String name) {
|
||||
System.out.println("======listSysTool=====");
|
||||
Metamodel mm = entityManager.getMetamodel();
|
||||
for(EntityType<?> s : mm.getEntities()){
|
||||
System.out.println("entityType : " + s.getName());
|
||||
}
|
||||
for(ManagedType<?> s : mm.getEntities()){
|
||||
System.out.println("ManagedType : " + s.getPersistenceType().name());
|
||||
}
|
||||
|
||||
System.out.println(entityManager.getDelegate() + "====" + entityManager);
|
||||
System.out.println("======listSysTool end=====");
|
||||
|
||||
String hql = "select m from SysTool m where m.name = :name";
|
||||
Query query = entityManager.createQuery(hql,SysTool.class);
|
||||
query.setParameter("name", name);
|
||||
|
||||
return query.getResultList();
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysTool getSysTool(String name) {
|
||||
System.out.println("======getSysTool=====");
|
||||
Metamodel mm = entityManager.getMetamodel();
|
||||
for(EntityType<?> s : mm.getEntities()){
|
||||
System.out.println("entityType : " + s.getName());
|
||||
}
|
||||
for(ManagedType<?> s : mm.getEntities()){
|
||||
System.out.println("ManagedType : " + s.getPersistenceType().name());
|
||||
}
|
||||
|
||||
System.out.println(entityManager.getDelegate() + "====" + entityManager);
|
||||
System.out.println("======getSysTool end=====");
|
||||
|
||||
String hql = "select m from SysTool m where m.name = :name";
|
||||
Query query = entityManager.createQuery(hql,SysTool.class);
|
||||
query.setParameter("name", name);
|
||||
|
||||
return (SysTool) query.getSingleResult();
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue