• Struts2中的类型转换与复杂对象配合使用


    form 标签可以被映射到一个属性的属性
    manager.java
     1 package com.atguigu.struts2.model;
     2 
     3 import java.util.Date;
     4 
     5 public class Manager {
     6     
     7     private String name;
     8     private Date birth;
     9     public String getName() {
    10         return name;
    11     }
    12     public void setName(String name) {
    13         this.name = name;
    14     }
    15     public Date getBirth() {
    16         return birth;
    17     }
    18     public void setBirth(Date birth) {
    19         this.birth = birth;
    20     }
    21 
    22     public String toString() {
    23         return "Manager [name=" + name + ", birth=" + birth + "]";
    24     }
    25     
    26     
    27     
    28 }
    Department.java
     1 public class Department {
     2     
     3     private Integer id;
     4     private String deptName;
     5     
     6     private Manager mgr;
     7 
     8     public Integer getId() {
     9         return id;
    10     }
    11 
    12     public void setId(Integer id) {
    13         this.id = id;
    14     }
    15 
    16     public String getDeptName() {
    17         return deptName;
    18     }
    19 
    20     public void setDeptName(String deptName) {
    21         this.deptName = deptName;
    22     }
    23 
    24     public Manager getMgr() {
    25         return mgr;
    26     }
    27 
    28     public void setMgr(Manager mgr) {
    29         this.mgr = mgr;
    30     }
    31 
    32 
    33     public String toString() {
    34         return "Department [id=" + id + ", deptName=" + deptName + ", mgr="
    35                 + mgr + "]";
    36     }
    37     
    38     
    39     
    40 }

    /**
    * 1. Department 是模型, 实际录入的 Department. deptName 可以直接写到
    * s:textfield 的 name 属性中. 可以直接被匹配到,那 mgr 属性如何处理呢 ?
    *
    * struts2 表单标签的 name 值可以被赋为 属性的属性: name=mgr.name, name=mgr.birth

    * 也就是说当我们要为属性中的属性赋值时可以使用name=属性对象名.属性名----来赋值
    * 2. mgr 中有一个 Date 类型的 birth 属性, Struts2 可以完成自动的类型转换吗 ?
    *
    * 全局的类型转换器可以正常工作!就是定义在src的xwork-conversion.properties这个全局转换器还是可以使用的
    *
    */

    xwork-conversion.properties的代码如下:

    转换类型=转换器全局类名

    java.util.Date=com.atguigu.struts2.Converter.TestTypeConverter

  • 相关阅读:
    mysql timeout expired处理
    Git学习笔记(0)-错误汇总
    auto_ptr源码剖析
    谈谈工作中遇到的系统优化问题
    js 面向对象
    js API
    js 闭包
    js 重载(overload)
    css 文本单行、多行超出省略
    es6 字符串String的扩展
  • 原文地址:https://www.cnblogs.com/jeremy-blog/p/3992894.html
Copyright © 2020-2023  润新知