java培训技术自定义类型转换器示例

阅读: 评论:0

java培训技术自定义类型转换器示例

java培训技术自定义类型转换器示例

自定义类型转换器示例

         1)  需求:字符串转换为对象。

         2)  步骤:

  • 定义页面

  • 控制器方法

package com.ud.handlers;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestParam;

import com.ud.dao.EmployeeDao;

import com.ud.entities.Employee;

@Controller

public class TypeConversionHandler {

@Autowired

private EmployeeDao employeeDao ;

// String -> Employee 需要类型转换器帮忙

@RequestMapping(“/empAdd”)

public String empAdd(@RequestParam(value=”employee”) Employee employee){

System.out.println(“TypeConversionHandler – ” + employee);

employeeDao.save(employee);

return “redirect:/empList”;

}

}

  • 自定义类型转换器

package com.verter;

import verter.Converter;

import org.springframework.stereotype.Component;

import com.ud.entities.Department;

import com.ud.entities.Employee;

/**

 * 将字符串转换为Employee对象类型

 */

@Component

public class StringToEmployeeConverter implements Converter<String, Employee> {

@Override

public Employee convert(String source) {

if(source!=null){

String[] strs = source.split(“-“);

if(strs!=null && strs.length == 4){

String lastName = strs[0];

String email = strs[1];

Integer gender = Integer.parseInt(strs[2]);

Integer deptId = Integer.parseInt(strs[3]);

Department dept = new Department();

dept.setId(deptId);

Employee employee = new Employee(null,lastName,email,gender,dept);

System.out.println(source+”–converter–“+employee);

return employee ;

}

}

return null;

}

}

  • 声明类型转换器服务

  • <mvc:annotation-driven conversion-service=”conversionService“/> 会将自定义的ConversionService 注册到 Spring MVC 的上下文中。

想要了解跟多关于java培训课程内容欢迎关注尚硅谷java培训,尚硅谷除了这些技术文章外还有免费的高质量java培训课程视频供广大学员下载学习。

本文发布于:2024-02-01 10:10:29,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170675342935898.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:自定义   转换器   示例   类型   技术
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23