code: public static Date parseDate(String dateStr) {
          SimpleDateFormat format = null;
          if (StringUtils.isBlank(dateStr))
              return null;
          String _dateStr = dateStr.trim();
          try {
              if (_dateStr.matches("\\d{1,2}[A-Z]{3}")) {
                  _dateStr = _dateStr
                          + (Calendar.getInstance().get(Calendar.YEAR) - 2000);
              }
              // 01OCT12
              if (_dateStr.matches("\\d{1,2}[A-Z]{3}\\d{2}")) {
                  format = new SimpleDateFormat("ddMMMyy", Locale.ENGLISH);
              } else if (_dateStr.matches("\\d{1,2}[A-Z]{3}\\d{4}.*")) {// 01OCT2012
                  // ,01OCT2012
                  // 1224,01OCT2012
                  // 12:24
                  _dateStr = _dateStr.replaceAll("[^0-9A-Z]", "")
                          .concat("000000").substring(0, 15);
                  format = new SimpleDateFormat("ddMMMyyyyHHmmss", Locale.ENGLISH);
              } else {
                  StringBuffer sb = new StringBuffer(_dateStr);
                  String[] tempArr = _dateStr.split("\\s+");
                  tempArr = tempArr[0].split("-|\\/");
                  if (tempArr.length == 3) {
                      if (tempArr[1].length() == 1) {
                          sb.insert(5, "0");
                      }
                      if (tempArr[2].length() == 1) {
                          sb.insert(8, "0");
                      }
                  }
                  _dateStr = sb.append("000000").toString().replaceAll("[^0-9]",
                          "").substring(0, 14);
                  if (_dateStr.matches("\\d{14}")) {
                      format = new SimpleDateFormat("yyyyMMddHHmmss");
                  }
              }
              Date date = format.parse(_dateStr);
              return date;
          } catch (Exception e) {
              throw new RuntimeException("无法解析日期字符[" + dateStr + "]");
          }
      }
docs: 解析日期<br>
  支持格式：<br>
  generate by: vakin jiang at 2012-3-1
  
  @param dateStr
  @return