Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 玩不带密码获取/user/{id}_Java_Rest_Playframework_Playframework 2.0 - Fatal编程技术网

Java 玩不带密码获取/user/{id}

Java 玩不带密码获取/user/{id},java,rest,playframework,playframework-2.0,Java,Rest,Playframework,Playframework 2.0,为了我的游戏!应用程序我有一个User.class @Entity public class User extends Model { @Id public String email; public String name; public String password; public User(String email, String name, String password) { this.email = email; this.name = name; this.pass

为了我的游戏!应用程序我有一个User.class

@Entity
public class User extends Model {

@Id
public String email;
public String name;
public String password;

public User(String email, String name, String password) {
  this.email = email;
  this.name = name;
  this.password = password;
}

...
}

每次我在/user/{id}.json上询问用户对象时,我都希望防止发送密码字符串。怎么做?这是正常的用例还是有其他方法来处理它?

您是否尝试过对json使用伪类

像这样。。 这是您的用户模型

@Entity
public class User extends Model 
    {

     @Id
     public String email;
     public String name;
     public String password;

     public User(String email, String name, String password) {
     this.email = email;
     this.name = name;
     this.password = password;
    }
}
这将是用于返回json值的虚拟类

public class UserDummy 
    {
     public String email;
     public String name;

     public UserDummy(string email) {
     models.User user = models.User.findById(email);
     this.email = user.email;
     this.name = user.name;
    }
}
Play用于序列化为Json,因此所有Jackson工具都可用

要从Json序列化中排除字段,可以使用
@JsonIgnore
注释对其进行注释

在您的示例中:

import org.codehaus.jackson.annotate.JsonIgnore;

@Entity
public class User extends Model {

    @Id
    public String email;
    public String name;

    @JsonIgnore
    public String password;
    ...
}

这就是我要找的。有类似的XML注释吗?我认为Play没有提供生成XML的功能。您是否已经有一些生成XML的代码?@mguillermin以及XML生成有什么问题?XML生成没有问题。我们只需要知道XML是如何序列化的(JAXB、XStream等等),以便能够提供关于如何排除字段的特定信息。