<delete id="deleteNews" parameterType="int"> DELETE FROM news WHERE id = #{id} </delete>返回int型,代码怎么改
时间: 2024-10-15 20:12:19 浏览: 13
这个SQL语句是一个Spring框架中的JPA(Java Persistence API)删除操作,用于从`news`表中根据指定的ID删除一条新闻记录。如果需要该操作返回一个整数类型的值,通常代表影响行数,你可以将其包装成一个自定义的数据库操作,例如将它放在一个Repository接口的方法中,并让它返回一个Integer。
首先,在你的Repository接口中添加一个方法:
```java
public interface NewsRepository extends JpaRepository<News, Integer> {
@Modifying
@Query("DELETE FROM News WHERE id = :id")
default int deleteNewsById(@Param("id") int id) {
return getEntityManager().createQuery("DELETE FROM News WHERE id = :id", Integer.class).setParameter("id", id).executeUpdate();
}
}
```
然后在Service层调用这个方法并处理返回结果:
```java
@Service
public class NewsService {
private final NewsRepository newsRepository;
public NewsService(NewsRepository newsRepository) {
this.newsRepository = newsRepository;
}
public int deleteNews(int id) {
return newsRepository.deleteNewsById(id);
}
// 其他业务逻辑...
}
```
阅读全文