alfresco与数据交互的途径
alfresco对数据库的操作通过dataSource来完成。
dataSource是alfresco操作数据的唯一途径。
dataSource与Hibernate的sessionFactory对应,这里暂不考虑iBatis的使用。
那么与sessionFactory有关系的配置或者服务包括:
attributes-service-context.xml
authentication-services-context.xml
avm-services-context.xml对应AVMService(AlfrescoVersioningModel)
attributes-service-context.xml对应AttributeService
bootstrap-context.xml
hibernate-context.xml
node-services-context.xm对应NodeService,用户session管理
patch-services-context.xml
workflow-context.xml略去非核心的应用,剩下2个关键的配置:
avm-services-context.xml 对应 AVMService (Alfresco Versioning Model)hibernate-context.xml 这个是最核心的数据操作部分.
hibernate-context.xml中和sessionFactory相关的bean
transactionManager
qnameDAO
versionCounterDaoComponent
aclDaoComponent
usageDeltaDAO
nodeDaoServiceImpl
localeDAOImpl
auditDao
contentUrlDAOImplhibernateSessionHelperhibernateL1CacheBulkLoader
hibernateSessionHelper在nodeACLDAO和avmACLDAO中被引用hibernateL1CacheBulkLoader在core-services-context.xml中的admLuceneIndexerAndSearcherFactory被引用,从这里可以看出lucene的index和数据库有关联
和Node相关的hibernate配置文件
org/alfresco/repo/domain/hibernate/Locale.hbm.xml
org/alfresco/repo/domain/hibernate/QName.hbm.xml
org/alfresco/repo/domain/hibernate/Node.hbm.xml
org/alfresco/repo/domain/hibernate/Transaction.hbm.xml
org/alfresco/repo/domain/hibernate/VersionCount.hbm.xml
org/alfresco/repo/domain/hibernate/AppliedPatch.hbm.xml
org/alfresco/repo/domain/hibernate/Permission.hbm.xml
org/alfresco/repo/avm/hibernate/AVM.hbm.xml
org/alfresco/repo/attributes/hibernate/Attributes.hbm.xml
org/alfresco/repo/domain/hibernate/UsageDelta.hbm.xml
org/alfresco/repo/activities/hibernate/Activities.hbm.xml《2010-04-09 第三次修改》