分析一段以前的配置(精读)
来源:互联网 发布:淘宝售后服务在哪 编辑:程序博客网 时间:2024/05/14 17:31
<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName"
value="com.microsoft.jdbc.sqlserver.SQLServerDriver" />
<property name="url"
value="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=ITSM_JBPM;SelectMethod=cursor;" />
<property name="username" value="sa" />
<property name="password" value="sa" />
</bean>
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"
singleton="true">
<!-------
问题一:property属性的名字能不能取成其他的名字?
mappingResources, hibernateProperties, dataSource
答案是: 不能随便取。
理由是:
package org.springframework.orm.hibernate3;
public class LocalSessionFactoryBean extends AbstractSessionFactoryBean {
private Resource[] mappingLocations;
private Properties hibernateProperties;
private DataSource dataSource;
public void setMappingResources(String[] mappingResources) {
this.mappingLocations = new Resource[mappingResources.length];
for (int i = 0; i < mappingResources.length; i++) {
this.mappingLocations[i] = new ClassPathResource(mappingResources[i].trim());
}
}
public void setHibernateProperties(Properties hibernateProperties) {
this.hibernateProperties = hibernateProperties;
}
public void setDataSource(DataSource dataSource) {
this.dataSource = dataSource;
}
}
---->
<property name="mappingResources">
<list>
<value>
com/vandagroup/itsm/dataobject/attachment/ItsmAttachment.hbm.xml
</value>
<!-- ###################### -->
<!-- # jbpm mapping files 以下是配置的一些工作流相关的信息# -->
<!-- ###################### -->
<!-- hql queries and type defs -->
<value>org/jbpm/db/hibernate.queries.hbm.xml</value>
<!-- graph.def mapping files -->
<value>
org/jbpm/graph/def/ProcessDefinition.hbm.xml
</value>
</list>
<!-- # jbpm mapping files 这里不是我的重点。省略不提# -->
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.SQLServerDialect
</prop>
<!-- # jbpm mapping files 这里是我的重点# -->
<!--
Hibernate SQL方言 (hibernate.dialect)
如果出现如下错误,则可能是Hibernate SQL方言 (hibernate.dialect)设置不正确。
Caused by: java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]'last_insert_id' 不是可以识别的 函数名。
-->
<prop key="hibernate.show_sql">true</prop>
<!------
hibernate.show_sql 如果为true,表示在程序运行时,会在控制台输出SQL语句,这有利于跟踪Hibernate的运行状态,默认为false。在应用开发和测试阶段,可以把这个属性设为true,以便跟踪和调试应用程序,在应用发布阶段,应该把这个属性设为false,以便减少应用的输出信息,提高运行性能
----->
<prop key="hibernate.generate_statistics">true</prop>
<!------
hibernate.generate_statistics 如果开启, Hibernate将收集有助于性能调节的统计数据. 取值 true | false
--->
<prop key="hibernate.cache.use_second_level_cache">
false
</prop>
<------
hibernate.cache.use_second_level_cache 能用来完全禁止使用二级缓存. 对那些在类的映射定义中指定<cache>的类,会默认开启二级缓存. 取值 true|false
--->
<prop key="hibernate.cache.use_query_cache">false</prop>
</props>
<!------
hibernate.cache.use_query_cache 允许查询缓存, 个别查询仍然需要被设置为可缓存的. 取值 true|false
---->
</property>
<property name="dataSource">
<ref bean="dataSource" />
</property>
</bean>
<!-- transaction -->
<bean id="TransactionProxyFactoryBean"
class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyTargetClass">
<value>true</value>
</property>
<property name="singleton">
<value>false</value>
</property>
<property name="interceptorNames">
<list>
<value>transactionInterceptor</value>
</list>
</property>
</bean>
<bean id="transactionInterceptor"
class="org.springframework.transaction.interceptor.TransactionInterceptor">
<property name="transactionAttributes">
<props>
<prop key="find*">
PROPAGATION_REQUIRED,ISOLATION_DEFAULT,readOnly
</prop>
<prop key="*">
PROPAGATION_REQUIRED,ISOLATION_DEFAULT,-Exception
</prop>
</props>
</property>
<property name="transactionManager">
<ref bean="hibernateTransactionManager" />
</property>
</bean>
<bean id="hibernateTransactionManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
<!----
package org.springframework.orm.hibernate3
public class HibernateTransactionManager extends AbstractPlatformTransactionManager
implements ResourceTransactionManager, BeanFactoryAware, InitializingBean {
private SessionFactory sessionFactory;
/**
* Set the SessionFactory that this instance should manage transactions for.
*/
public void setSessionFactory(SessionFactory sessionFactory) {
this.sessionFactory = sessionFactory;
}
}
-->
</bean>
- 分析一段以前的配置(精读)
- 以前无意中得到的一段话,很有深意
- 一段spring4的配置
- 实现任意精读的除法(JAVA)
- MIT的《深度学习》精读(1)
- MIT的《深度学习》精读(2)
- MIT的《深度学习》精读(3)
- MIT的《深度学习》精读(4)
- MIT的《深度学习》精读(5)
- MIT的《深度学习》精读(6)
- MIT的《深度学习》精读(7)
- MIT的《深度学习》精读(8)
- MIT的《深度学习》精读(9)
- MIT的《深度学习》精读(10)
- MIT的《深度学习》精读(16)
- MIT的《深度学习》精读(17)
- MIT的《深度学习》精读(18)
- MIT的《深度学习》精读(19)
- Linux手机研发要过五大难关
- 博客VS晒客
- 我写,我写
- 跟我学MS SQL Server(2)
- 用户互联网应用首选电邮和搜索
- 分析一段以前的配置(精读)
- 基础知识什么时候都有用
- 跟我学MS SQL Server(3)
- ASP.NET设置数据格式与String.Format使用总结
- 跟我学MS SQL Server(4)
- 【轻松一下】女朋友的保健作用
- 跟我学MS SQL Server(5)
- TODO
- IT企业员工薪酬与学历成正比