SpringMVC---自定义类型转换器

一:自定义类型转换器

二:spring支持的转换器

 三:

四:代码实现

1.创建一个hander方法

//测试自定义转换器
	@RequestMapping("testConversionService")
	public String testConversionService(@RequestParam("employee")Employee employee) {
		System.out.println("save" +employee);
		employeeDao.save(employee);
		return "redirect:/emp";
		
	}

 2.创建自定义转换器

@Component
public class EmployeeConversion implements Converter<String, Employee> {

	@Override
	public Employee convert(String resource) {
		if(resource !=null) {
			String[] values=resource.split("-");
			if(values!=null &&values.length==4) {
				String lastName=values[0];
				String email=values[1];
				String gender=values[2];
				Department department=new Department();
				department.setId(Integer.parseInt(values[3]));
				Employee employee=new Employee(null, lastName, email, gender, department);
				System.out.println("conversion"+employee);
				return employee;
			}
		}
		return null;
	}
}

3.springmvc.xml配置

<mvc:annotation-driven conversion-service="conversionServiceFactoryBean"></mvc:annotation-driven>
	
	<bean id="conversionServiceFactoryBean" class="org.springframework.context.support.ConversionServiceFactoryBean">
			<property name="converters">
				<set>
					<bean class="com.dhx.conversion.EmployeeConversion"></bean>
				</set>
			</property>
	</bean>

4.测试jsp

<form action="testConversionService" method="get">
	<input type="text" name="employee">
	<input type="submit" value="submit">
</form>
			//[email protected]
发布了64 篇原创文章 · 获赞 12 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_39093474/article/details/103782273