|
spring-orm | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.springframework.orm.hibernate4.HibernateExceptionTranslator
org.springframework.orm.hibernate4.LocalSessionFactoryBean
public class LocalSessionFactoryBean
FactoryBean that creates a Hibernate
SessionFactory. This is the usual way to set up a shared
Hibernate SessionFactory in a Spring application context; the SessionFactory can
then be passed to Hibernate-based data access objects via dependency injection.
NOTE: This variant of LocalSessionFactoryBean requires Hibernate 4.0 or higher.
It is similar in role to the same-named class in the orm.hibernate3 package.
However, in practice, it is closer to AnnotationSessionFactoryBean since
its core purpose is to bootstrap a SessionFactory from annotation scanning.
setDataSource(javax.sql.DataSource),
setPackagesToScan(java.lang.String...)| Constructor Summary | |
|---|---|
LocalSessionFactoryBean()
|
|
| Method Summary | |
|---|---|
void |
afterPropertiesSet()
|
protected org.hibernate.SessionFactory |
buildSessionFactory(LocalSessionFactoryBuilder sfb)
Subclasses can override this method to perform custom initialization of the SessionFactory instance, creating it via the given Configuration object that got prepared by this LocalSessionFactoryBean. |
void |
destroy()
|
org.hibernate.cfg.Configuration |
getConfiguration()
Return the Hibernate Configuration object used to build the SessionFactory. |
java.util.Properties |
getHibernateProperties()
Return the Hibernate properties, if any. |
org.hibernate.SessionFactory |
getObject()
|
java.lang.Class<?> |
getObjectType()
|
boolean |
isSingleton()
|
void |
setAnnotatedClasses(java.lang.Class<?>[] annotatedClasses)
Specify annotated entity classes to register with this Hibernate SessionFactory. |
void |
setAnnotatedPackages(java.lang.String[] annotatedPackages)
Specify the names of annotated packages, for which package-level annotation metadata will be read. |
void |
setCacheableMappingLocations(org.springframework.core.io.Resource[] cacheableMappingLocations)
Set locations of cacheable Hibernate mapping files, for example as web app resource "/WEB-INF/mapping/example.hbm.xml". |
void |
setConfigLocation(org.springframework.core.io.Resource configLocation)
Set the location of a single Hibernate XML config file, for example as classpath resource "classpath:hibernate.cfg.xml". |
void |
setConfigLocations(org.springframework.core.io.Resource[] configLocations)
Set the locations of multiple Hibernate XML config files, for example as classpath resources "classpath:hibernate.cfg.xml,classpath:extension.cfg.xml". |
void |
setDataSource(javax.sql.DataSource dataSource)
Set the DataSource to be used by the SessionFactory. |
void |
setEntityInterceptor(org.hibernate.Interceptor entityInterceptor)
Set a Hibernate entity interceptor that allows to inspect and change property values before writing to and reading from the database. |
void |
setHibernateProperties(java.util.Properties hibernateProperties)
Set Hibernate properties, such as "hibernate.dialect". |
void |
setMappingDirectoryLocations(org.springframework.core.io.Resource[] mappingDirectoryLocations)
Set locations of directories that contain Hibernate mapping resources, like "WEB-INF/mappings". |
void |
setMappingJarLocations(org.springframework.core.io.Resource[] mappingJarLocations)
Set locations of jar files that contain Hibernate mapping resources, like "WEB-INF/lib/example.hbm.jar". |
void |
setMappingLocations(org.springframework.core.io.Resource[] mappingLocations)
Set locations of Hibernate mapping files, for example as classpath resource "classpath:example.hbm.xml". |
void |
setMappingResources(java.lang.String[] mappingResources)
Set Hibernate mapping resources to be found in the class path, like "example.hbm.xml" or "mypackage/example.hbm.xml". |
void |
setNamingStrategy(org.hibernate.cfg.NamingStrategy namingStrategy)
Set a Hibernate NamingStrategy for the SessionFactory, determining the physical column and table names given the info in the mapping document. |
void |
setPackagesToScan(java.lang.String... packagesToScan)
Specify packages to search for autodetection of your entity classes in the classpath. |
void |
setResourceLoader(org.springframework.core.io.ResourceLoader resourceLoader)
|
| Methods inherited from class org.springframework.orm.hibernate4.HibernateExceptionTranslator |
|---|
convertHibernateAccessException, translateExceptionIfPossible |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public LocalSessionFactoryBean()
| Method Detail |
|---|
public void setDataSource(javax.sql.DataSource dataSource)
If this is set, the Hibernate settings should not define a connection provider to avoid meaningless double configuration.
public void setConfigLocation(org.springframework.core.io.Resource configLocation)
Note: Can be omitted when all necessary properties and mapping resources are specified locally via this bean.
Configuration.configure(java.net.URL)public void setConfigLocations(org.springframework.core.io.Resource[] configLocations)
Note: Can be omitted when all necessary properties and mapping resources are specified locally via this bean.
Configuration.configure(java.net.URL)public void setMappingResources(java.lang.String[] mappingResources)
Can be used to add to mappings from a Hibernate XML config file, or to specify all mappings locally.
setMappingLocations(org.springframework.core.io.Resource[]),
Configuration.addResource(java.lang.String, java.lang.ClassLoader)public void setMappingLocations(org.springframework.core.io.Resource[] mappingLocations)
Can be used to add to mappings from a Hibernate XML config file, or to specify all mappings locally.
Configuration.addInputStream(java.io.InputStream)public void setCacheableMappingLocations(org.springframework.core.io.Resource[] cacheableMappingLocations)
Can be used to add to mappings from a Hibernate XML config file, or to specify all mappings locally.
Configuration.addCacheableFile(java.io.File)public void setMappingJarLocations(org.springframework.core.io.Resource[] mappingJarLocations)
Can be used to add to mappings from a Hibernate XML config file, or to specify all mappings locally.
Configuration.addJar(java.io.File)public void setMappingDirectoryLocations(org.springframework.core.io.Resource[] mappingDirectoryLocations)
Can be used to add to mappings from a Hibernate XML config file, or to specify all mappings locally.
Configuration.addDirectory(java.io.File)public void setEntityInterceptor(org.hibernate.Interceptor entityInterceptor)
Configuration.setInterceptor(org.hibernate.Interceptor)public void setNamingStrategy(org.hibernate.cfg.NamingStrategy namingStrategy)
Configuration.setNamingStrategy(org.hibernate.cfg.NamingStrategy)public void setHibernateProperties(java.util.Properties hibernateProperties)
Note: Do not specify a transaction provider here when using Spring-driven transactions. It is also advisable to omit connection provider settings and use a Spring-set DataSource instead.
setDataSource(javax.sql.DataSource)public java.util.Properties getHibernateProperties()
public void setAnnotatedClasses(java.lang.Class<?>[] annotatedClasses)
org.hibernate.cfg.Configuration#addAnnotatedClass(Class)public void setAnnotatedPackages(java.lang.String[] annotatedPackages)
org.hibernate.cfg.Configuration#addPackage(String)public void setPackagesToScan(java.lang.String... packagesToScan)
org.springframework.context.annotation.ClassPathBeanDefinitionScanner).
public void setResourceLoader(org.springframework.core.io.ResourceLoader resourceLoader)
setResourceLoader in interface org.springframework.context.ResourceLoaderAware
public void afterPropertiesSet()
throws java.io.IOException
afterPropertiesSet in interface org.springframework.beans.factory.InitializingBeanjava.io.IOExceptionprotected org.hibernate.SessionFactory buildSessionFactory(LocalSessionFactoryBuilder sfb)
The default implementation invokes LocalSessionFactoryBuilder's buildSessionFactory. A custom implementation could prepare the instance in a specific way (e.g. applying a custom ServiceRegistry) or use a custom SessionFactoryImpl subclass.
sfb - LocalSessionFactoryBuilder prepared by this LocalSessionFactoryBean
LocalSessionFactoryBuilder.buildSessionFactory()public final org.hibernate.cfg.Configuration getConfiguration()
java.lang.IllegalStateException - if the Configuration object has not been initialized yetpublic org.hibernate.SessionFactory getObject()
getObject in interface org.springframework.beans.factory.FactoryBean<org.hibernate.SessionFactory>public java.lang.Class<?> getObjectType()
getObjectType in interface org.springframework.beans.factory.FactoryBean<org.hibernate.SessionFactory>public boolean isSingleton()
isSingleton in interface org.springframework.beans.factory.FactoryBean<org.hibernate.SessionFactory>public void destroy()
destroy in interface org.springframework.beans.factory.DisposableBean
|
spring-orm | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||