2016-12-21 5 views
0

コードは、この行に到達したとき、私は、実行時にORA-00942: table or view does not existを得る:session.merge(role);Hibernateで実行される暗黙的なクエリをデバッグするには?

このマージ中に実行されたクエリのテキストを表示するために、どのように?

更新:ここ

が、私はアプリの設定方法です:

@Configuration 
@ComponentScan("com.ambre.pta") 
@EnableTransactionManagement 
@PropertySources({ 
    @PropertySource("classpath:jdbc.properties"), 
    @PropertySource("classpath:fr/global.properties"), 
    @PropertySource("classpath:fr/main.properties"), 
    @PropertySource("classpath:fr/admin.properties"), 
    @PropertySource("classpath:fr/referentiel.properties"), 
    @PropertySource("classpath:fr/departement.properties"), 
    @PropertySource("classpath:fr/exercice.properties"), 
    @PropertySource("classpath:fr/defi.properties") 
}) 
public class ApplicationContextConfig { 

    @Autowired 
    private Environment env; 

    @Bean 
    public static PropertySourcesPlaceholderConfigurer properties() { 
     return new PropertySourcesPlaceholderConfigurer(); 
    } 

    @Bean(name = "viewResolver") 
    public InternalResourceViewResolver getViewResolver() { 
     InternalResourceViewResolver viewResolver = new InternalResourceViewResolver(); 
     viewResolver.setPrefix("/WEB-INF/views/"); 
     viewResolver.setSuffix(".jsp"); 
     return viewResolver; 
    } 

    @Bean(name = "dataSource") 
    public DataSource getDataSource() { 

     BasicDataSource dataSource = new BasicDataSource(); 

     dataSource.setDriverClassName("oracle.jdbc.driver.OracleDriver"); 
     dataSource.setUrl("jdbc:oracle:thin:@"+env.getProperty("jdbc.server")+":"+env.getProperty("jdbc.port")+":"+env.getProperty("jdbc.instance")); 
     dataSource.setUsername(env.getProperty("jdbc.login.default")); 
     dataSource.setPassword(env.getProperty("jdbc.pwd.default")); 

     return dataSource; 

    } 

    @Autowired 
    @Bean(name = "sessionFactory") 
    public SessionFactory getSessionFactory(DataSource dataSource) { 

     LocalSessionFactoryBuilder sessionBuilder = new LocalSessionFactoryBuilder(dataSource); 

     sessionBuilder.scanPackages("com.ambre.pta.model"); 

     return sessionBuilder.buildSessionFactory(); 

    } 

    @Autowired 
    @Bean(name = "transactionManager") 
    public HibernateTransactionManager getTransactionManager(SessionFactory sessionFactory) { 

     HibernateTransactionManager transactionManager = new HibernateTransactionManager(sessionFactory); 

     return transactionManager; 

    } 

    @Autowired 
    @Bean(name = "utilisateurDao") 
    public UtilisateurDAO getUtilisateurDao(SessionFactory sessionFactory) { 
     return new UtilisateurDAOImpl(sessionFactory); 
    } 

    @Autowired 
    @Bean(name = "menuDao") 
    public MenuDAO getMenuDao(SessionFactory sessionFactory) { 
     return new MenuDAOImpl(sessionFactory); 
    } 

    ... 

} 
+0

デバッグとは印刷/表示ですか? –

+0

はい、コンソールにクエリテキストを表示します。 – pheromix

答えて

2

あなたの休止状態の設定

<property name="show_sql">true</property> 
+0

hibernate依存関係に対応する 'pom.xml 'を意味しますか? – pheromix

+0

どのようにして休止状態を設定しましたか? JavaまたはXML?それはXMLであれば、一般のpom.xmlでhibernate.cfg.xmlの –

+0

が存在するであろう: ' \t \t \t org.hibernate \t \t \t 休止コア \t \t \t 4.3.5 .Final \t \t ' – pheromix

1

に以下のタグを追加してください

    に見えます
  1. hibernate設定ファイル
  2. application.ymlファイル、休止状態の設定とshow-sql: trueオプションがあります。
関連する問題