spring-data-jpa 使用Sping Boot 从Oracle数据库获取实体不起作用

smtd7mpg  于 2022-11-10  发布在  Spring
关注(0)|答案(1)|浏览(198)

我想使用Sping Boot 从以下位置获取实体
Oracle数据库(Oracle 9 i企业版9.2.0.4.0版-生产环境)
当我在控制台中使用存储库findById方法和toString时,它只返回以下内容
日志返回电子邮件[创建日期=,文件名=,转发结果=,转发收件人=,id= f6 a70923 - 973 a-47 ac-98 a0 - 34200 d4 ddacb,邮件主题=,消息编号=,消息类型=,卖方公司id =]
只有ID列具有值。
但我想得到所有值。

主类

@SpringBootApplication
    public class Demo2Application implements ApplicationRunner {

        @Autowired
        private LogReturnEmailRepository repo2;

        public static void main(String[] args) {
            SpringApplication.run(Demo2Application.class, args);
        }
        @Override
        public void run(ApplicationArguments args) throws Exception {
            Optional<LogReturnEmail> xml = repo2.findById("f6a70923-973a-47ac-98a0-34200d4ddacb");
            System.out.println(xml.get());
        }

    }

存储库

@Repository
public interface LogReturnEmailRepository extends JpaRepository<LogReturnEmail, String> {
}

日志返回电子邮件实体

/**
 * The persistent class for the LOG_RETURN_EMAIL database table.
 * 
 */
@Entity
@Table(name="LOG_RETURN_EMAIL")
@NamedQuery(name="LogReturnEmail.findAll", query="SELECT l FROM LogReturnEmail l")
public class LogReturnEmail implements Serializable {
    private static final long serialVersionUID = 1L;

    @Column(name="CREATE_DTM")
    private String createDtm;

    @Column(name="FILE_NAME")
    private String fileName;

    @Column(name="FORWARD_RESULT")
    private String forwardResult;

    @Column(name="FORWARD_TO")
    private String forwardTo;

    @Id
    @Column(name="ID")
    private String id;

    @Column(name="MAIL_SUBJECT")
    private String mailSubject;

    @Column(name="MESSAGE_NO")
    private String messageNo;

    @Column(name="MESSAGE_TYPE")
    private String messageType;

    @Column(name="SELLER_COMPID")
    private String sellerCompid;

//commented out get/set method for brevity

休眠配置

spring.jpa.hibernate.ddl-auto=none
spring.jpa.database-platform=org.hibernate.dialect.Oracle9iDialect
spring.datasource.url=
spring.datasource.username=
spring.datasource.password=
spring.datasource.driver-class-name=oracle.jdbc.OracleDriver

pom.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.4.RELEASE</version>
        <relativePath />
    </parent>
    <groupId>com.example</groupId>
    <artifactId>demo2</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>demo2</name>
    <description>Demo project for Spring Boot</description>

    <properties>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>com.oracle</groupId>
            <artifactId>ojdbc7</artifactId>
            <version>12.1.0.2</version>
        </dependency>

    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>

控制台日志

2019-05-30 09:12:53.167  INFO 13668 --- [  restartedMain] org.hibernate.Version                    : HHH000412: Hibernate Core {5.3.9.Final}
2019-05-30 09:12:53.168  INFO 13668 --- [  restartedMain] org.hibernate.cfg.Environment            : HHH000206: hibernate.properties not found
2019-05-30 09:12:53.241  INFO 13668 --- [  restartedMain] o.hibernate.annotations.common.Version   : HCANN000001: Hibernate Commons Annotations {5.0.4.Final}
2019-05-30 09:12:53.325  INFO 13668 --- [  restartedMain] org.hibernate.dialect.Dialect            : HHH000400: Using dialect: org.hibernate.dialect.Oracle9iDialect
2019-05-30 09:12:53.749  INFO 13668 --- [  restartedMain] o.h.h.i.QueryTranslatorFactoryInitiator  : HHH000397: Using ASTQueryTranslatorFactory
2019-05-30 09:12:53.783  INFO 13668 --- [  restartedMain] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default'
2019-05-30 09:12:54.006  INFO 13668 --- [  restartedMain] o.s.b.d.a.OptionalLiveReloadServer       : LiveReload server is running on port 35729
2019-05-30 09:12:54.020  INFO 13668 --- [  restartedMain] com.example.demo.Demo2Application        : Started Demo2Application in 2.115 seconds (JVM running for 2.691)
Hibernate: 
    select
        logreturne0_.id as id1_0_0_,
        logreturne0_.create_dtm as create_dtm2_0_0_,
        logreturne0_.file_name as file_name3_0_0_,
        logreturne0_.forward_result as forward_result4_0_0_,
        logreturne0_.forward_to as forward_to5_0_0_,
        logreturne0_.mail_subject as mail_subject6_0_0_,
        logreturne0_.message_no as message_no7_0_0_,
        logreturne0_.message_type as message_type8_0_0_,
        logreturne0_.seller_compid as seller_compid9_0_0_ 
    from
        log_return_email logreturne0_ 
    where
        logreturne0_.id=?
LogReturnEmail [createDtm=, fileName=, forwardResult=, forwardTo=, id=f6a70923-973a-47ac-98a0-34200d4ddacb, mailSubject=, messageNo=, messageType=, sellerCompid=]
2019-05-30 09:12:54.079  INFO 13668 --- [      Thread-10] j.LocalContainerEntityManagerFactoryBean : Closing JPA EntityManagerFactory for persistence unit 'default'
2019-05-30 09:12:54.080  INFO 13668 --- [      Thread-10] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Shutdown initiated...
2019-05-30 09:12:54.088  INFO 13668 --- [      Thread-10] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Shutdown completed.

表格列名称

ID              
SELLER_COMPID   
MESSAGE_NO      
MAIL_SUBJECT    
CREATE_DTM      
FORWARD_TO      
FORWARD_RESULT  
FILE_NAME   
MESSAGE_TYPE
cgyqldqp

cgyqldqp1#

请验证Java实体类数据类型和Oracle DATA_TYPE。此问题通常在数据类型不匹配时发生。

相关问题