springMVC的URL的数据传送到后端的方式和接收方式

基础数据类型的转换

1.基础数据类型可以直接从页面URL后拼接传值

2.在设置了@RequestParam(name="id", defaultValue="22" )所传的id在没有传值的时候会默认值为你设置的默认值,如果不设置默认值的话就必须传值,不然会报错

@RequestMapping("/inte")
    	public String inte(Integer id){
    		
    		System.out.println(id);
    		return "index";	
    	}
    	//必须要指定的属性才认
    	@RequestMapping("/app")
    	public String app(@RequestParam(name="id", defaultValue="22" ) Integer id){
    		System.out.println(id);
    		return "index";	
    	}

时间类型的转换

1.直接在XML文件中开启注解驱动 然后在对应的字段和形参处配置注解如

1. (@DateTimeFormat(pattern="yyyy-MM-dd") Date date)
    2. 	@DateTimeFormat(pattern="yyyy-MM-dd")
    	private  Date  bithday;
      <!-- 注解驱动 -->
     <mvc:annotation-driven conversion-service="conversionService"/>

2.

一。创建工具类实现Converter接口 重写其方法将String类型的时间转换为Date

public class DateConverter implements Converter<String,Date>{
    
    	@Override
    	public Date convert(String source) {
    	
    		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    		try {
    			return sdf.parse(source);
    		} catch (ParseException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
    		
    		return null;
    	}
    
    	
    }

二。将工具类交给IOC容器来管理

<!-- 时间类型转换工具库 -->
     <bean id="converter" class="com.zhidi.util.DateConverter"/>

三。将工具类交给时间转换工厂的converters

<!-- 时间转换器工厂要将工具库据为己有-->
     <bean id="conversionService" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
     <property name="converters" ref="converter"/>
     </bean>

四。将时间转换器工厂放到注解驱动

<!-- 注解驱动 -->
     <mvc:annotation-driven conversion-service="conversionService"/>

3.不确定的类型传送过来 接受的方式

//不确定类型的属性值的传送 date表示前端URL传过来的 是不确定的时间类型
    	//也可以传过来各种不确定的字符串。。。。
    	@RequestMapping("/{date}/{name}")
    	public String pvariable(@PathVariable("date") Date date,
    			                  @PathVariable("name") String name ){
    	System.out.println(date);
    	System.out.println(name);
    		
    		return "index";
    	}

相关推荐