当前位置: 首页 > 面试题库 >

如何使hbm2ddl schemaExport将架构记录到stdout?

晁砚
2023-03-14
问题内容

来自persistence.xml

<persistence-unit name="test" transaction-type="RESOURCE_LOCAL">
    <properties>
        <property name="hibernate.archive.autodetection" value="class" />
        <property name="hibernate.show_sql" value="true" />
        <property name="hibernate.format_sql" value="true" />
        <property name="hibernate.hbm2ddl.auto" value="create" />
        ...
    </properties>
</persistence-unit>

这是我在日志输出中看到的:

Sep 30, 2010 12:03:43 PM org.hibernate.tool.hbm2ddl.SchemaExport execute
INFO: Running hbm2ddl schema export
Sep 30, 2010 12:03:43 PM org.hibernate.tool.hbm2ddl.SchemaExport execute
INFO: exporting generated schema to database
Sep 30, 2010 12:03:43 PM org.hibernate.tool.hbm2ddl.SchemaExport execute
INFO: schema export complete

但我看不到架构(SQL)本身已导出。如何从Hibernate(3.5.6-Final)中获取此信息?


问题答案:

org.hibernate.tool.hbm2ddl类别的日志记录激活为DEBUG

更新: 这是一个简化的logback.xml(我使用logback作为日志记录后端):

<configuration scan="true">

  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <layout class="ch.qos.logback.classic.PatternLayout">
      <Pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</Pattern>
    </layout>
  </appender>

  <!-- ### log just the SQL ### -->
  <logger name="org.hibernate.SQL" level="DEBUG"/>

  <!-- ### log JDBC bind parameters ### -->
  <logger name="org.hibernate.type" level="TRACE"/>

  <logger name="org.hibernate.tool.hbm2ddl" level="DEBUG"/>

  <root level="ERROR">
    <appender-ref ref="STDOUT"/>
  </root>
</configuration>

如果您使用的是log4j,请对其进行调整(在SO上可以找到有效的配置)。



 类似资料:
  • 我知道如何使用ViewModel,Repository和Room将数据从数据库传输到屏幕。但是如何使用POST方法实现登录活动。我需要从ViewModel或AuthorizationRepository创建LiveData isAuthorated吗?有人能展示在android架构组件中使用命令方法的示例吗?

  • 我刚刚在Maven学习Spring Boot,遇到了一个无法解决的错误。我从Flyway附加了一个依赖项,当我想安装它时(我单击Lifecycle上的install),会出现以下错误: 找到非空架构“PUBLIC”,但没有架构历史记录表。使用baseline()或将baselineOnMigrate设置为true来初始化架构历史记录表。 这可能是什么原因造成的,如何修复? 我正在使用Java8,我

  • 我有一个问题,我的记录json可以为null。如何处理avro模式中的空记录?给出的文档是针对我想要为null记录获取的null属性的。

  • 问题内容: 我想使用apache log4j将日志记录添加到正在开发的应用程序中。在这一点上,我想将所有级别为INFO和更低级别(TRACE,DEBUG)的日志消息重定向到stdout,并将所有其他日志消息从WARN及更高版本(ERROR,FATAL)重定向到stderr。例如: 那么我的log4j.properties文件应该是什么?这是如何看待这一时刻的: 上面配置的问题是logger.err

  • 我正在尝试访问record2中的“AccountNumber”字段的数据作为“属性”。文件格式为平面文件(format=“fixedlength”)。请帮帮我。 示例数据: