首页 > 解决方案 > 关闭投影不会在 Spring Boot 中给出本机查询的结果

问题描述

我正在学习弹簧数据近距离投影。但是,它没有给出预期的结果。这意味着,它提供的不是预期的接口,而是org.springframework.aop.framework.JdkDynamicAopProxy. 我已经研究了几天,但找不到解决方案。我也附上了我的代码。

实体类 - 代理

@Entity
@Table(name = "TBLDMS_AGENT")
public class Agent {

    @Id
    @Column(name = "AGENT_ID")
    private long agentId;
    @Column(name = "AGENT_NAME")
    private String agentName;
    @Column(name = "ADDRESS")
    private String address;
    @Column(name = "CONTACT_NO")
    private String contactNo;
    @Column(name = "STATUS")
    private boolean status;
    @Column(name = "PROFILE_ID")
    private int profileId;

存储库 - AgentRepository

@Repository
public interface AgentRepository extends JpaRepository<Agent, Long> {

    @Query(value = 
            "SELECT AGENT_NAME, " +
            "       PROFILE_CODE " +
            "FROM   TBLDMS_AGENT " +
            "WHERE  CONTACT_NO = :number", nativeQuery = true)
    List<AgentInformation> findByContactNumber(@Param("number") String number);


    public static interface AgentInformation {
        String getAgentName();
        String getProfileCode();
    }
}

用法

        com.dms.agentmanagementservice.persister.AgentRepository.AgentInformation agent = agentRepository.findByContactNumber(number);
        String agentName = agent.getAgentName();
        String profileId = agent.getProfileCode();

但是并为 和获取null值。有人可以告诉我我在这里做错了什么吗?agentNameprofileId

非常感谢您!

标签: javaspring-bootjpaspring-data-jpaspring-data

解决方案


推荐阅读