springmvc - java如何封装多个不同的实体
黄舟
黄舟 2017-04-18 10:41:22
0
3
601
黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

répondre à tous(3)
左手右手慢动作

Une autre couche d'encapsulation,
Le nom de la classe doit être lié à l'entreprise

public class UserAndCustomerVo{

    private User user;
    
    private Customer customer;

    //getter setter method
}
@RequestMapping("test")
public UserAndCustomerVo getSomeInfo() {
    User user = new User();
    Customer customer = new Customer();
    UserAndCustomerVo uacVo = new UserAndCustomerVo();
    uacVo.setUser(user);
    uacVo.setCustomer(customer);

    return uacVo;
}

De cette façon, vous pouvez continuer à en ajouter si votre entreprise se développe à l'avenir

迷茫

Je pense qu’il est plus simple et meilleur d’utiliser Map. Si les données que vous souhaitez transmettre ont un type clair, il semble que vous ne puissiez définir le type ou l'interface que vous-même. Cependant, s'il est utilisé pour convertir en JSON, il serait préférable d'utiliser Map.

De plus, vous pouvez également utiliser des cours anonymes,

class User {
    public User(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }
    private String name;

    public int getAge() {
        return age;
    }
    private int age;
}

class Customer {
    public Customer(String name, double money) {
        this.name = name;
        this.money = money;
    }

    public String getName() {
        return name;
    }
    private String name;

    public double getMoney() {
        return money;
    }
    private double money;
}

public class Test extends Thread {
    public static void main(String[] args) {
        final User _user = new User("James", 30);
        final Customer _customer = new Customer("Andy", 100.00);

        // 匿名类实现组合类型
        Object combine = new Object() {
            {
                this.user = _user;
                this.customer = _customer;
            }

            private User user;
            private Customer customer;

            public User getUser() {
                return user;
            }

            public Customer getCustomer() {
                return customer;
            }

            public String toString() {
                return user.getName() + "|" + customer.getName();
            }
        };

        System.out.println(combine.toString());
    }
}

Si vous avez besoin d'une interface claire, vous pouvez personnaliser une interface et remplacer le new Object() { .... } dans le code par votre propre interface - mais c'est tellement difficile à écrire que vous pouvez définir vous-même un type de combinaison. Vous pouvez rechercher vous-même des génériques Tuple personnalisés (il semble que vous puissiez également les rechercher en ligne). Object

阿神

Personnellement, je pense que Map est mieux accepté, Map<String, List<Model>>, juste quelques classes de beans et quelques listes sont mises dans Map

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal