我在excel 里面日期是 2011-1-1 然后读出来就变成2011/1/1 然后我是用insert into 插入 就说无效的月份。
public static void main(String[] args){

UtilExcel uExcel = new UtilExcel();
JxlUtilDAO jxlDAO = new JxlUtilDAO();
PreparedStatement stmt = null ;
Connection conn = null;
String sql = "insert into TSM_SYSTEM(SYSTEMID,NAME,DESCRIPTION,APPCODE,APPMAC,STATUS,MEMO,CREATEDATE) values (?,?,?,?,?,?,?,?)";
String filename="src/TSM_SYSTEM.xls";
try {
List list= uExcel.ReadMethod(filename);
conn = jxlDAO.getConnection();
stmt = conn.prepareStatement(sql);

jxlDAO.begin(conn);
jxlDAO.execute(sql, list, conn,stmt);
jxlDAO.commit(conn);
System.out.println("123423423");
} catch (Exception e) {
e.printStackTrace();
}finally{
jxlDAO.close(conn);
}
}

}public void apply(PreparedStatement pstmt, List params) {
System.out.println(" start apply");
 try {
 System.out.println(params);
  if (params != null && params.size() > 0) {
  System.out.println(params.size());
  Iterator it = params.iterator();
      int index = 1;
      while(it.hasNext()) {
       Object obj = it.next();
       if (obj == null) {
       pstmt.setObject(index," ");       
       } else {
       pstmt.setObject(index, obj);
       System.out.println(obj);
       System.out.println(index);
       }
       index++;
       }
      }
  } catch (SQLException ex) {
  ex.printStackTrace();
   System.out.println("can not apply parameter");
  }
  }
public int execute(String sql, List params,Connection conn,PreparedStatement pstmt) {
 int ret = 0;
        try {
            this.apply(pstmt, params);
            System.out.println("3333333");
            ret = pstmt.executeUpdate();
            System.out.println("44444444");
        }catch(SQLException ex) {
         ex.printStackTrace();
        } finally {
            if (pstmt != null) {
                try {
                    pstmt.close();
                } catch (SQLException e) {
                }
            }
        }
        return ret;
        }
} 为什么会出现无效的月份 怎么解决呢