2016-04-05 17 views
0

Spring、Hibernate、Jerseyを既存のアプリケーションと並列に使用してWebサービスを開発する。当初は20種類未満のエンティティクラスを使用していましたが、サーバーの起動には45秒未満しかかかりませんでした。今私は、後で必要とする191のエンティティクラスをすべて追加しました。それらを追加した後、私のアプリケーションは起動するのにほぼ7分かかります。ところで、Tomcat 7を自分のサーバーとして使用しています。私はサーバの起動時間が長く遅くなる

o.h.ejb.packaging.AbstractJarVisitor - Filtering:............ 

o.h.cfg.annotations.CollectionBinder - Collection role:....... 
o.h.cfg.annotations.PropertyBinder - Building property....... 
org.hibernate.cfg.Ejb3Column - Binding column: Ejb3JoinColumn{.... 
org.hibernate.cfg.Ejb3Column - Binding column: Ejb3Column{table..... 

o.h.c.annotations.SimpleValueBinder - Setting SimpleValue typeName for ..... 

o.hibernate.cfg.CollectionSecondPass - Second pass for collection:...... 
o.h.cfg.annotations.CollectionBinder - Binding a OneToMany: ..... 
o.h.cfg.annotations.CollectionBinder - Mapping collection: ..... 
o.h.cfg.annotations.TableBinder - Retrieving property ...... 

org.hibernate.cfg.Configuration - Resolving reference to class: ..... 

o.h.c.e.AbstractEhcacheRegionFactory - HHH020003: Could not find a specific ehcache configuration for cache named [.....]; using defaults. 
net.sf.ehcache.Cache - Initialised cache: ..... 
n.s.e.config.ConfigurationHelper - CacheDecoratorFactory not configured for defaultCache. Skipping for '..... 
o.h.c.e.AbstractEhcacheRegionFactory - started EHCache region:.... 
o.h.p.entity.AbstractEntityPersister - Static SQL for entity:..... 
o.h.p.entity.AbstractEntityPersister - Version select: ..... 
o.h.p.entity.AbstractEntityPersister - Snapshot select:.... 
o.h.p.entity.AbstractEntityPersister - Insert 0: ..... 
o.h.p.entity.AbstractEntityPersister - Update 0: .... 
o.h.p.entity.AbstractEntityPersister - Delete 0: .... 

o.h.p.c.AbstractCollectionPersister - Static SQL for collection:..... 
o.h.p.c.AbstractCollectionPersister - Row insert: ..... 
o.h.p.c.AbstractCollectionPersister - Row update: ..... 
o.h.p.c.AbstractCollectionPersister - Row delete: ..... 
o.h.p.c.AbstractCollectionPersister - One-shot delete: .... 

の多くを見ることができるログに

私は、次の起動時間を改善する方法

org.hibernate.loader.Loader - Static select for entity ... [NONE]: ... 
org.hibernate.loader.Loader - Static select for entity ... [READ]: ... 
org.hibernate.loader.Loader - Static select for entity ... [UPGRADE]: ... 
org.hibernate.loader.Loader - Static select for entity ... [UPGRADE_NOWAIT]: ... 
org.hibernate.loader.Loader - Static select for entity ... [FORCE]: ... 
org.hibernate.loader.Loader - Static select for entity ... [PESSIMISTIC_READ]: ... 
org.hibernate.loader.Loader - Static select for entity ... [PESSIMISTIC_WRITE]: ... 
org.hibernate.loader.Loader - Static select for entity ... [PESSIMISTIC_FORCE_INCREMENT]: ... 
org.hibernate.loader.Loader - Static select for entity ... [OPTIMISTIC]: ... 
org.hibernate.loader.Loader - Static select for entity ... [OPTIMISTIC_FORCE_INCREMENT]: ... 
org.hibernate.loader.Loader - Static select for action ACTION_MERGE on entity ... : ... 
org.hibernate.loader.Loader - Static select for action ACTION_REFRESH on entity ...: ... 

o.h.l.collection.OneToManyLoader - Static select for one-to-many 

多くの時間を取っている観察?

注:私はJavaの設定を使用していますが、あなたがspring + hibernate + c3p0 + ehcache java configurationで私のJavaの設定を見ることができます4.2.7.Final

:4.1.4.RELEASE、 Hibernateのバージョン:春のバージョンを使用して。これは通常、休止状態をスピードアップ

<property name="hibernate.temp.use_jdbc_metadata_defaults" value="false"/> 

:別々のpersistence.xmlにpersistence.xmlの内側に、あなたの永続性ユニット構成で、このプロパティを追加すること

+0

ログを見ると、起動中に何らかの削除、更新、挿入が発生しているようです。もしそうなら、起動時にアプリが何をしているのかについていくつかの情報を提供できますか?また、persistence.xmlファイルを投稿すると役立ちます。 –

+0

ロギングが遅く、アプリケーションの起動が遅くなるため、まずはロギングを無効にしてください。 –

+0

@MadhusudanaReddySunnapu私はjavaの設定を使用しています。http://stackoverflow.com/questions/36304458/spring-hibernate-c3p0-ehcache-java-configuration/36305748でJavaの設定を見ることができます。別々のpersistence.xmlを使用しません。私はスタートアップ時に何も設定していません。 –

答えて

0

てみてくださいを使用していません。

2016-04-14プロパティ名を修正するために「s」を追加しました。

+0

既に改善がないようにしてみました。私の設定はhttp://stackoverflow.com/questions/36304458/spring-hibernate-c3p0-ehcache-java-configuration/36305748にあります。 additionalPropertiesメソッドの –

+0

私はproperties.setProperty( "hibernate.temp.use_jdbc_metadata_defaults"、 "false")のようなコードを追加しました。 –

+0

プロバイダー権限として 'org.hibernate.jpa.HibernatePersistenceProvider'を使用していますか?また、あなたの休止状態設定クラス/ファイルを投稿してください –

関連する問題