어떤 이유로 @JsonIgnore 주석이 내 프로젝트에서 작동하지 않습니다. 다른 호환되지 않는 Jackson 버전 (org.codehaus와 com.fasterxml)을 사용하면이 문제가 발생할 수 있다는 답변을 이미 읽었지만, 하나의 종속성 (afaik)을 통해서만 내 jackson 라이브러리를 얻고 있습니다. 문제.@JsonIgnore가 작동하지 않습니다.
@Entity
@Table(name = "employee", schema = "klk")
public class Employee implements Serializable{
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue
@Column(name = "id", unique = true, nullable = false)
private Integer id;
@Basic
@Column(name = "firstName", nullable = false)
private String firstName;
@Basic
@Column(name = "lastName", nullable = false)
private String lastName;
@Basic
@Column(name = "password", nullable = false)
@JsonIgnore
private String password;
@Basic
@Column(name = "token", unique = true)
@JsonIgnore
private String token;
의 pom.xml :
<dependencies>
<!-- https://mvnrepository.com/artifact/com.eclipsesource.jaxrs/jersey-all-->
<dependency>
<groupId>com.eclipsesource.jaxrs</groupId>
<artifactId>jersey-all</artifactId>
<version>2.22.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.glassfish.jersey.media/jersey-media-moxy -->
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-moxy</artifactId>
<version>2.26</version>
</dependency>
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.39</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.eclipse.persistence/eclipselink -->
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>eclipselink</artifactId>
<version>2.6.4</version>
</dependency>
</dependencies>
출력 : 누군가가 아이디어가 있습니까
{
"id":1,
"firstName": "John",
"lastName": "Doe",
"password": "password",
"token": "token
}
는 주석 제의 예에서 작동하지 않는 이유는 무엇입니까?
개인 필드가 아닌 getter에 주석을 추가해야합니다. – shmosel
'@ JsonIgnore' 주석의 패키지는 무엇입니까? – acdcjunior
@shmosel 그건 작동하지 않습니다. – Fynn