jsp页面提交到action的日期属性后,
日期的值都是类似这样的值,
Thu Nov 11 00:00:00 CST 2010,
后头在网上搜了个全局的日期转换方法,
就是建xwork-conversion.properties这个,
页面提交后在action里面输出该日期属性的值还是这样的
Thu Nov 11 00:00:00 CST 2010,
只有在返回页面的时候才会转换为2010-11-11这样的,
不是没转换之前的10-11-11了,
说明那个转换器还是有作用,
就是不知道在action能得到2010-11-11这样的结果,
不想每次使用都要手动转换一次,
要怎么做,
麻烦知道的朋友讲讲下,
先谢谢了。

解决方案 »

  1.   

    这个问题没有必要用转换器吧? 是struts2无法自动帮你完成类型转换时才需要用转换器去转!
    界面上传来个日期格式字符串, 对应后台是Date属性的话会自动转的.! 你可以自己toLocaleString再截取的喔.! 或者你后台直接定义String然后用SimpleDateFormat格式化一下就ok了阿!
    在这个问题上纠结半天很不值得
      

  2.   

    不纠结,
    只是觉得每次都要SimpleDateFormat麻烦,
    多谢。
      

  3.   

    你用的什么标签?有没有format这个属性呀,我记得好像有个标签有这个属性,可以直接指定日期的格式。
      

  4.   


    //action 
            private Date dateTe;
    private String sDateTe;//不需要set /get
    /**
     * @return the dateTe
     */
    public Date getDateTe() {
    SimpleDateFormat sf = new SimpleDateFormat("yyyy-mm-dd");
    sDateTe = sf.format(dateTe);
    return dateTe;
    } /**
     * @param dateTe
     *            the dateTe to set
     */
    public void setDateTe(Date dateTe) {
    SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");
    sDateTe = sf.format(dateTe);
    this.dateTe = dateTe;
    }<s:form action="datatest" method="post" name="fdaForm" namespace="/example">
    <sd:datetimepicker name="dateTe"></sd:datetimepicker>
    <s:submit label="submit" />
    </s:form>
    这样可以把。只需要写一次format就OK了