2015-06-21 47 views
0

我想寫一個動態查詢,它將刪除行中將會提供的值,即一行包含說6我只想刪除其中的3個元素。如何使用liferay動態查詢來實現該功能。我正在創建一個圖書數據庫,並且這是我的表格,我在此處添加了圖片。 enter image description here如何寫入liferay中的動態刪除查詢將刪除表中的一行數據中的選定值

現在我想刪除第二行的描述和AUTHORNAME讓say.How我能做到這一點???以前我被這

long bookId = ParamUtil.getLong(actionRequest, "bookId"); 
BookLocalServiceUtil.deleteBook(bookId); 
SessionMessages.add(actionRequest, "deleted-book"); 
_log.info("#################Book Deleted Successfully#########################"); 

這樣做讓我們假設BOOKNAME,描述等我能提供裏面的刪除方法。

回答

0

執行你想要更新你的實體的唯一和最好的方法。爲此,您必須首先使用DynamicQuery來檢索實體,然後使用持久層對其進行更新。

如果您有bookId並且它是您唯一的標準,那麼您也可以直接使用持久層來檢索實體的bean。

你的目的,我認爲下面是一個很好的解決方案,在您的BookLocalServiceImpl

public void updateDescription(long bookId, String description) throws SystemException { 
    Book updateMe = bookPersistence.fetchByPrimaryKey(bookId); 
    updateMe.setDescription(description); 
    bookPersistence.update(updateMe); 
} 

然後在你的控制器只需撥打BookLocalServiceUtil.updateDescription(""),瞧,你只要清除了描述。