@Service
public class ItemServiceImpl implements ItemService{
@Autowired ItemRepository iRepository;
@Autowired EntityManagerFactory emf;
@Override
public List<ItemEntity> selectItemEntityIn(Long[] no) {
return iRepository.findByIcodeIn(no);
}
@Override
public int updateItemBatch(List<ItemEntity> list) {
EntityManager em = emf.createEntityManager();
try {
em.getTransaction().begin();
for( ItemEntity item : list) {
//기본키를 이용해서 기존 데이터를 꺼냄
ItemEntity oldItem
= em.find(ItemEntity.class, item.getIcode());
//변경할 항목 set
oldItem.setIname( item.getIname() );
oldItem.setIcontent( item.getIcontent() );
oldItem.setIprice( item.getIprice() );
oldItem.setIquantity( item.getIquantity() );
em.persist(oldItem);
}
em.getTransaction().commit();
return 1;
}
catch(Exception e) {
e.printStackTrace();
em.getTransaction().rollback();
return 0;
}
}
@Override
public int deleteItemBatch(Long[] no) {
EntityManager em = emf.createEntityManager();
try {
em.getTransaction().begin();
for( Long tmp : no) {
//기본키를 이용해서 기존 데이터를 꺼냄
ItemEntity oldItem
= em.find(ItemEntity.class, tmp);
em.remove(oldItem);
}
em.getTransaction().commit();
return 1;
}
catch(Exception e) {
e.printStackTrace();
em.getTransaction().rollback();
return 0;
}
}
@Override
public int insertItemBatch(List<ItemEntity> list) {
EntityManager em = emf.createEntityManager();
try {
em.getTransaction().begin();
//여러개 추가
for( ItemEntity item : list) {
em.persist(item);
}
em.getTransaction().commit();
return 1;
}
catch(Exception e) {
e.printStackTrace();
em.getTransaction().rollback();
return 0;
}
}
}
Reposity도 쓰고, managerentity안에있는것도 쓰고