日期:2014-05-20  浏览次数:20706 次

hibernate 如何删除TableViewer中选中的记录?
这是主要代码:(BuyMed就是那个对象)
      private class DeleteAction extends Action {
                 IStructuredSelection selection = (IStructuredSelection)tableViewer.getSelection();
                 BuyMed buyMed = (BuyMed)selection.getFirstElement();
                 public DeleteAction() {setText("删除");}
                 public void run() {
                       if(buyMed == null)  return;
                       if(MessageDialog.openConfirm(null, null, "确定要删除吗?")) {
                             if(deleteData()) {
                                    tableViewer.remove(buyMed);
                                    List<?> list = (ArrayList<?>)tableViewer.getInput();
                                    list.remove(buyMed);

                             }else {
                              MessageDialog.openConfirm(null, null, "删除失败!");
                             }
                    }
            }


                 private boolean deleteData() {
                         try {
                                    Session session = HibernateSessionFactory.getSession(
                                        "hibernate_derby.cfg.xml");
                                    Transaction tx = session.beginTransaction();