package com.sobey.cmop.mvc.dao.custom.imp; import javax.persistence.EntityManager; import javax.persistence.PersistenceContext; import javax.persistence.Query; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Component; import com.sobey.cmop.mvc.dao.custom.IpPoolDaoCustom; @Component public class IpPoolDaoCustomImp implements IpPoolDaoCustom { private static Logger logger = LoggerFactory.getLogger(IpPoolDaoCustomImp.class); @PersistenceContext private EntityManager em; @Override public int updateIpPoolByStatus(int status) { String sql = "update ip_pool set status=" + status + ",host_server_id=null where host_server_id in (select id from host_server where server_type=1)"; Query query = em.createNativeQuery(sql); int updateCount1 = query.executeUpdate(); logger.info("宿主机关联的虚拟机IP状态修改数:" + updateCount1); sql = "update ip_pool set status=" + status + ",host_server_id=null where ip_address in (select ip_address from host_server where server_type=1)"; query = em.createNativeQuery(sql); int updateCount2 = query.executeUpdate(); logger.info("宿主机对应IP状态修改数:" + updateCount2); return updateCount1 + updateCount2; } }