![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000836533-1458127476.jpg)
===========================================================
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000531370-270925871.png)
为什么要转换器?
因为我们的httpServlet请求决定的,所有的请求都是String类型的,需要转换
在servlt中都是有使用者自己转换的:例如
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000532579-1701039469.png)
内置转换器:
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000533010-771323712.png)
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000536095-501549310.png)
1:包装类转换:
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000914023-1529308421.jpg)
2:数据:
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000542449-5061392.png)
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000543619-883771715.png)
3:集合
前台输入:
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000545738-869819634.png)
Action接收:
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000548443-1990994436.png)
前台回显:
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000549400-813652934.png)
此时迭代没有定义id属性,相当于User数据放到了值栈里面,直接用name就可以拿到。
也可以写成:
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000550300-1307863098.png)
此时加了id属性,user对象的数据存放的位置发生了变化,要用#访问
4 :日期类型的转换:
前台输入:
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000551236-1760381665.png)
前台回显:
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000551611-1331406654.png)
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000552671-304215975.png)
需要我们定义的类型转换器了:步骤:
1:创建转换器:
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000552974-1025544870.png)
2:重写方法:
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000555177-1922423511.png)
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000559575-304108407.png)
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000601019-293131906.png)
全局范围的使用:
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000603162-2006370433.png)
用例:
1:Action:
2:前台回显:
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000603499-1924080251.png)
3:转换器编写
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000608461-1317978783.png)
4:在src下创建property文件:
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000609794-1976279673.png)
用于特定类:
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000611610-337699895.png)
1:添加property
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000612688-917691344.png)
2: 编写property
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000613845-1088833518.png)
怎样在前台输出类型转换错误的提示信息?
1:
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000614751-1135399047.png)
2:
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000615892-779760279.png)
3 :
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000616198-279918920.png)
4:
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000617541-1492462940.png)
如何修改类型转换出错的提示消息?
全局提示:
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000618421-1466805536.png)
它的默认设置是这样的:
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000620837-1175110074.png)
修改步骤:(使用常量修改)
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000623616-923488544.png)
特定字段的提示:
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000623920-1509277944.png)
![](https://images2018.cnblogs.com/blog/1252584/201803/1252584-20180308000625289-362295840.png)