我有以下实体
@Entity
@Table(name="user_app")
public class User implements Serializable {
private static final long serialVersionUID = 4992188185008895307L;
private String id;
...
public User(){
}
@Id
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
Id的类型为字符串
我正在使用Spring Data JPA,我有以下内容:
public interface UserRepository extends JpaRepository<User, String> {
}
我正在与AOP合作,我有以下内容:
@Before("execution(* *..UserRepository.findOne(..))")
public void beforeRepositoryLogging(JoinPoint jointPoint){
logger.info(">>Before {} called", jointPoint.getSignature().getName());
}
工作正常。
但如果我改变:
到
它不再起作用了。为什么呢?
直到这里根据API:
Interface JpaRepository<T,ID extends Serializable>
根据API的ID
ID - the type of the id of the entity the repository manages
记住:
我的存储库有JpaRepository<User, String>
, ID 因此字符串
并且 findOne 方法签名为T findOne(ID id)
。如何结合,我的ID类型是String。
因此缺少什么?
提前致谢。