1. 程式人生 > >myBatis表單Date資料型別轉換

myBatis表單Date資料型別轉換

異常再現 : 

   

提交資料後異常 :


如果是新手,這種異常是最煩的了,什麼錯誤資訊都沒有,改個腿子...........但是老江湖就不一樣了,一瞄到400就知道是資料型別轉換異常,就能準確到異常大概位置了,,,,,,

話不多說, 這和異常有倆種解決方案

1. 使用註解,在需要修改的物件屬性上面打上註解,使用這種方案有個前提,需要在springMvc的配置中配置一下對映處理器,處理器,

<mvc:annotation-driven/>

        2.配置完後就可以打註解了,

@DateTimeFormat(pattern="yyyy-MM-dd")
private Date birthday
;

然後我們再做測試,然後就可以運行了,這裡就不截圖了

然後還有一種方案就是自己配置轉換器,然後一次性處理所有的data日期格式,這也是比較常用的.........

1.自定義轉換器 

import com.sun.javafx.scene.layout.region.Margins;
import org.springframework.core.convert.converter.Converter;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class 
DateConverte implements Converter<String,Date> { @Override public Date convert(String s) { SimpleDateFormat formet = new SimpleDateFormat(
"yyyy-MM-dd"
); Date parse = null; try { parse = formet.parse(s); } catch (ParseException e) { e.printStackTrace(); } return
parse; }} 然後在springMvc中配置一下就行
<mvc:annotation-driven conversion-service="conversionService" />

<!-- 轉換器配置 -->
<bean id="conversionService"
class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
    <property name="converters">
        <set>
            <bean class="cn.csdn.Converte.DateConverte"/>
        </set>
    </property>
</bean>

然後執行測試,同樣是沒問題的,,這就是倆種解決方案,,,複製貼上改下路徑就能用,,