日期:2014-05-19  浏览次数:20650 次

关于ssh框架中的问题
今天看一源码,service层有个方法是用来删除指定ID的书籍,他是这样写的。
Java code

public void deleteBook(String bookId) { 
Books book=booksDao.getBook(bookId); 
booksDao.deleteBook(book); 
} 



我就想问下,这个删除的方法,一定更要先把这本书查询出来再删除吗?能直接写成
booksDao.delteBook(String bookId)吗?

当然,booksDao中有根据ID删除书籍的这个方法。

如果按照我的写法,是不是如果数据库中不存在记录的话,删除会出问题?

------解决方案--------------------
booksDao.delteBook(String bookId),这样的话就没有用上Hibernate了,hibenrmate本来就是对象关系映射框架,所以对对象的操作会同步到数据库中。
------解决方案--------------------
hibernate对于数据库是进行面向对象的操作,也就是每次执行数据库时,处理的是一个对象,所以你首先需要查询出此对象,然后再将此对象删除。。。。。