hoaivan / QuizMarker

0 stars 0 forks source link

iBT note 1 #27

Open hoaivan opened 10 years ago

hoaivan commented 10 years ago

1 .Xem code thấy mày viết cái customSQL cho thao tác này: String sql = "DELETE FROM quizmarker_integratedquestion "; sql = sql.concat(" WHERE integratedQuestionId="+integratedQuestionId); các thao tác cơ bản insert update delete được nó gen hết sẵn rồi ví dụ như cho mục đích xóa thì dùng IntegratedQuestionLocalServiceUtil.deleteIntegratedQuestion() là xong ko fai code thêm gì nữa

=>> XÓA NHIỀU ROW. dùng vòng lặp hơi chậm.

2 . Sửa tên PK: integratedQuestionQuestionId => Id

<entity name="IntegratedQuestion" local-service="true">
  <column name="integratedQuestionQuestionId" type="long" primary="true"></column>          
<<<< sửa thành Id thôi nhé.
  <column name="integratedQuestionId" type="long"></column>                                 
  <column name="questionId" type="long"></column>
  <column name="ord" type="long"></column>
 </entity>

=>> FIXED

3 . Move EditorPortlet.java & IBTEditorPortlet.java vào package als.quizmarker.portlet vì EditorPortlet là 1 portlet

=>> OK

hoaivan commented 10 years ago
  1. Ko gọi trực tiếp lớp Impl thế này: question = new QuestionImpl(); IntegratedQuestionImpl obj = new IntegratedQuestionImpl(); mà dùng qua service: QuestionLocalServiceUtil.createQuestion(CounterLocalServiceUtil.increase(Question.class.getName()))

FIXED

hoaivan commented 10 years ago

Ko bắt exception kiểu này:

} catch (IOException e) {
            e.printStackTrace();
}

Mà dùng: private static Log logger = LogFactoryUtil.getLog(IBTPlayerServlet.class); rồi gọi logger.error(e);

FIXED