Tapestry+Hibernian+Spring完成下拉框选项

来源:互联网 发布:照片打印的软件 编辑:程序博客网 时间:2024/05/15 08:39

举例完成选择学历的下拉框 关键字:Screcord

EmpadvDAO代码:

 

 

  1. package com.jbcom.support.bus.dao;
  2. import org.apache.tapestry.form.IPropertySelectionModel;
  3. import com.jbcom.platform.spring.IBaseDao;
  4. public interface EmpadvDAO extends IBaseDao{
  5.     
  6.     public Class getPersistentClass();
  7.     public String getHQL_All();
  8.     public String getHQL_RowCount();
  9.     
  10.     public String getHQLCheck_All();
  11.     public String getHQLCheck_RowCount();
  12.         public IPropertySelectionModel getScrecordModel(boolean isNull); 
  13. }

EmpadvDAOImpl代码:

 

 

  1. package com.jbcom.support.bus.dao.impl;
  2. import java.util.ArrayList;
  3. import java.util.List;
  4. import org.apache.tapestry.form.IPropertySelectionModel;
  5. import com.jbcom.platform.droplist.ListModel;
  6. import com.jbcom.platform.spring.BaseDaoImpl;
  7. import com.jbcom.support.bus.dao.EmpadvDAO;
  8. import com.jbcom.support.bus.hbm.EmpadvHBM;
  9. public class EmpadvDAOImpl extends BaseDaoImpl implements EmpadvDAO{
  10.     
  11.     public Class getPersistentClass() {
  12.         return EmpadvHBM.class;
  13.     }
  14.     public String getHQL_All() {
  15.         return "from EmpadvHBM empadvHBM";
  16.     }
  17.     public String getHQL_RowCount() {
  18.         return "select count(*) from EmpadvHBM empadvHBM";
  19.     }
  20.     public String getHQLCheck_All() {
  21.         return "from EmpadvHBM empadvHBM Where empadvHBM.checked=0";
  22.     }
  23.     public String getHQLCheck_RowCount() {
  24.         return "select count(*) from EmpadvHBM empadvHBM Where empadvHBM.checked=0";
  25.     }       
  26.         public IPropertySelectionModel getScrecordModel(boolean isNull){
  27.         List _locales = new ArrayList();
  28.         List _labels = new ArrayList();
  29.         if (isNull) {
  30.             _locales.add("");
  31.             _labels.add("");
  32.         }
  33.             _locales.add("初中");
  34.         _labels.add("初中");
  35.             _locales.add("高中");
  36.             _labels.add("高中");
  37.             
  38.             _locales.add("中技");
  39.             _labels.add("中技");
  40.             
  41.             _locales.add("中专");
  42.             _labels.add("中专");
  43.             
  44.             _locales.add("大专");
  45.             _labels.add("大专");
  46.             _locales.add("本科");
  47.             _labels.add("本科");
  48.             
  49.             _locales.add("硕士");
  50.             _labels.add("硕士");
  51.             
  52.             _locales.add("博士");
  53.             _labels.add("博士");
  54.             
  55.             _locales.add("博士以上");
  56.             _labels.add("博士以上");
  57.             
  58.         IPropertySelectionModel listModel = new ListModel(_locales, _labels);
  59.                      return listModel;
  60.         }
  61. }

HTML代码:

 

 

  1.     <tr>    
  2.          <td width="85" class="tittle_right" >
  3.      学历
  4.      </td>
  5.         <td align="left" bgcolor="#E5F4FF">
  6.         <select class="INPUT"   jwcid="@PropertySelection"value="ognl:empadvHBM.screcord"  model="ognl:screcordModel"size="1">
  7.             </select>
  8.          </td>
  9.     </tr>

JAVA代码:

  1. package com.jbcom.support.bus.pages;
  2. import java.util.ArrayList;
  3. import java.util.Date;
  4. import java.util.Iterator;
  5. import java.util.List;
  6. import org.apache.tapestry.IRequestCycle;
  7. import org.apache.tapestry.form.IPropertySelectionModel;
  8. import org.apache.tapestry.valid.IValidationDelegate;
  9. import org.apache.tapestry.valid.ValidationConstraint;
  10. import com.jbcom.support.bus.dao.EmpadvDAO;
  11. import com.jbcom.support.bus.hbm.EmpadvHBM;
  12. import com.jbcom.support.tapestry.SupportBasePage;
  13. public abstract class EmpadvEdit extends SupportBasePage {
  14.     // 设定DAO类
  15.     public abstract EmpadvDAO getEmpadvDAO();
  16.     // 具体操作对象
  17.     public abstract EmpadvHBM getEmpadvHBM();
  18.     public abstract void setEmpadvHBM(EmpadvHBM EmpadvHBM);
  19.         // 保存
  20.     public void save(IRequestCycle cycle) {
  21.         IValidationDelegate validationDelegate = (IValidationDelegate) getBeans()
  22.                 .getBean("delegate");
  23.         doValit(validationDelegate);
  24.         if (validationDelegate.getHasErrors())
  25.             return;
  26.         EmpadvDAO empadvDAO = getEmpadvDAO();           
  27.         getEmpadvHBM().setPublishdate(new Date());
  28.         empadvDAO.save(getEmpadvHBM());
  29.         EmpadvList nextPage = (EmpadvList) cycle.getPage("EmpadvList");
  30.         cycle.activate(nextPage);
  31.     }
  32.         //学历下拉框
  33.     public IPropertySelectionModel getScrecordModel(){
  34.         return getEmpadvDAO().getScrecordModel(false);
  35.     }
  36. }