ApplicationContext app = new↓
ClassPathXmlApplicationContext("dbbean.xml");
ApplicationContext app = new修正したら、Appを実行してみてください。先ほどと同じように、ダミーのデータが一覧表示されます。ここでは、まず目を引くのがクラス宣言の前にあるアノテーションでしょう。
AnnotationConfigApplicationContext(SampleEntityConfig.class);
@EnableJpaRepositories("com.tuyano.libro.db")これは、JpaRepositoryをONにするためのものです。このアノテーションを記述することで、指定されたパッケージ内を検索し、@Repositoryを付けたクラスをBeanとして登録します。()内には、検索するパッケージを指定しておきます。<jpa:repositories>に相当するものと考えておくとよいでしょう。
@EnableTransactionManagementこちらは、TransactionManagementを使うためのものです。これを用意しておくことでTransactionManagerがONになります。
※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
package com.tuyano.libro.db; import javax.persistence.EntityManagerFactory; import javax.sql.DataSource; import javax.transaction.TransactionManager; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.data.jpa.repository.config.EnableJpaRepositories; import org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseBuilder; import org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseType; import org.springframework.orm.jpa.JpaTransactionManager; import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean; import org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter; @Configuration @EnableJpaRepositories("com.tuyano.libro.db") @EnableTransactionManagement class SampleEntityConfig { @Bean public DataSource dataSource() { EmbeddedDatabaseBuilder builder = new EmbeddedDatabaseBuilder(); return builder.setType(EmbeddedDatabaseType.H2).build(); } @Bean public EntityManagerFactory entityManagerFactory() { HibernateJpaVendorAdapter vendorAdapter = new HibernateJpaVendorAdapter(); vendorAdapter.setGenerateDdl(true); LocalContainerEntityManagerFactoryBean factory = new LocalContainerEntityManagerFactoryBean(); factory.setJpaVendorAdapter(vendorAdapter); factory.setPackagesToScan("com.tuyano.libro.db"); factory.setDataSource(dataSource()); factory.afterPropertiesSet(); return factory.getObject(); } @Bean protected JpaTransactionManager transactionManager (EntityManagerFactory entityManagerFactory) { return new JpaTransactionManager(entityManagerFactory); } }
<< 前へ | 次へ >> |