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
Une autre couche d'encapsulation,
Le nom de la classe doit être lié à l'entreprise
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,
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