日期:2014-05-18  浏览次数:20633 次

一段代码,感觉很恶心,求优化!!
先说说使用技术:jsp(标签是jstl)+s2sh.
涉及到两个功能:发布信息,修改信息。
发布信息:
      公告标题:
      公告类型:(三个下拉框,没有级联关系 )
      公告内容:
最主要是下拉框这里最繁琐。
下面是Action:
    public class NoticeAction  extends BaseAction{
private static final long serialVersionUID = 1L;
private TenderAnnounce tenderAnnounce;//模型对象po
@Resource
private  INoticeService  noticeServiceImpl;//service层
/**
 * 转到发布公告页面
             点击页面发布公告,转到一个发布公告的页面
 */
   public String toPublishNoticePage (){
   //获取公告类型初始值
            //map里面我存了三个list。就是页面里面三个下拉框的值
      Map<String,List>  map= noticeServiceImpl.getTACategory();
   super.getRequest().setAttribute("map", map);
   return "publish_notice_page";
   }
//到了页面后,就遍历出来map中三个list的值,初始化下拉框的值。

   /**
    * 提交公告.提交公告需要校验标题,下拉框,和内容的值是否为空
    * 
    * @return
    */
   public String surePublishNotice(){
   //下拉框数据:
   //获取公告类型初始值
   Map<String,List>  map= noticeServiceImpl.getTACategory();
   super.getRequest().setAttribute("map", map);
   
           //获取页面选择的下拉框的值
   String listOne=super.getRequest().getParameter("listOne");
   String listTwo=super.getRequest().getParameter("listTwo");
   String listThree=super.getRequest().getParameter("listThree");
           //分别放入作用域,当校验不通过时,传回页面做回显
   super.getRequest().setAttribute("listOne", listOne);
   super.getRequest().setAttribute("listTwo", listTwo);
   super.getRequest().setAttribute("listThree", listThree);
   
   //首先校验字段
   if(null==tenderAnnounce.getTitle()||"".equals(Commons.isNull(tenderAnnounce.getTitle()))){//Commons.isNull是工具类,是空白字符的替换后是否为空
   super.getRequest().setAttribute("noticeTitleIsNotNull", "标题不不能为空");
         //如果标题为空,就回到发布页面,显示错误信息  
         return "publish_notice_page";