编程生活

   :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  113 随笔 :: 0 文章 :: 18 评论 :: 0 Trackbacks

Spring的版本号为2.0.6
openJPA的版本为0.9.7(其实1.0.0也是一样)
照下面如此,客户端不用装应用服务器开发了.
但如果你的客户端是Eclipse的RCP则和这个配置有一些不同


 

1.项目的Classpath的列表

    <classpathentry kind="lib" path="main/lib/commons-beanutils.jar"/>
    
<classpathentry kind="lib" path="main/lib/commons-beanutils-bean-collections.jar"/>
    
<classpathentry kind="lib" path="main/lib/commons-beanutils-core.jar"/>
    
<classpathentry kind="lib" path="main/lib/commons-collections-3.2.jar"/>
    
<classpathentry kind="lib" path="main/lib/commons-lang.jar"/>
    
<classpathentry kind="lib" path="main/lib/commons-logging.jar"/>
    
<classpathentry kind="lib" path="main/lib/javaee.jar"/>
    
<classpathentry kind="lib" path="main/lib/log4j-1.2.14.jar"/>
    
<classpathentry kind="lib" path="main/lib/openjpa-0.9.7-incubating.jar"/>
    
<classpathentry kind="lib" path="main/lib/serp-1.11.0.jar"/>
    
<classpathentry kind="lib" path="test/lib/aspectjrt.jar"/>
    
<classpathentry kind="lib" path="test/lib/aspectjweaver.jar"/>
    
<classpathentry kind="lib" path="test/lib/cglib-nodep-2.1_3.jar"/>
    
<classpathentry kind="lib" path="test/lib/dbunit-2.2.jar"/>
    
<classpathentry kind="lib" path="test/lib/ojdbc14.jar"/>
    
<classpathentry kind="lib" path="test/lib/postgresql-8.2-506.jdbc3.jar"/>
    
<classpathentry kind="lib" path="test/lib/spring.jar"/>


2.BEANS.XML的配置

 

<?xml version="1.0" encoding="UTF-8"?>
<beans default-lazy-init="true"
    xmlns
="http://www.springframework.org/schema/beans"
    xmlns:xsi
="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:aop
="http://www.springframework.org/schema/aop"
    xmlns:jee
="http://www.springframework.org/schema/jee"
    xmlns:tx
="http://www.springframework.org/schema/tx"
    xsi:schemaLocation
="
    http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
    http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd
    http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd"
>
      
    
<bean id="propertyConfigurer"
        class
="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"
        lazy-init
="false">
        
<property name="locations">
            
<list>
                
<value>jpa.properties</value>
            
</list>
        
</property>
    
</bean>

    
<!-- Pitchfork configuration -->
<!--    <bean-->
<!--        class="org.springframework.jee.ejb.config.JeeEjbBeanFactoryPostProcessor" />-->

    
<bean
        
class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor" />

    
<bean id="persistenceUnitManager"
        class
="org.springframework.orm.jpa.persistenceunit.DefaultPersistenceUnitManager">
        <property name="loadTimeWeaver">
            
<bean
                
class="org.springframework.instrument.classloading.SimpleLoadTimeWeaver" />
        
</property>
    
</bean>


    
<bean id="entityManagerFactory"
        class
="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
        
<property name="persistenceUnitManager"
            ref
="persistenceUnitManager" />
        
<property name="persistenceUnitName" value="${persistence.unit.name}" />

        
<property name="jpaVendorAdapter">
            
<bean
                
class="org.springframework.orm.jpa.vendor.OpenJpaVendorAdapter" />
        
</property>
    
</bean>

    
<bean id="transactionManager"
        class
="org.springframework.orm.jpa.JpaTransactionManager">
        
<property name="entityManagerFactory"
            ref
="entityManagerFactory" />
    
</bean>

    
<tx:advice id="methodTransactionAdvice"
        transaction-manager
="transactionManager">
        
<tx:attributes>
            
<tx:method name="*" />
        
</tx:attributes>
    
</tx:advice>
    
<aop:config proxy-target-class="true">
        
<aop:pointcut id="serviceMethods"
            expression
="execution(public * com.wilesun.test..*Service.*(..))" />
        
<aop:advisor pointcut-ref="serviceMethods"
            advice-ref
="methodTransactionAdvice" />
    
</aop:config>

    
<!-- ================================================ -->
    
<bean id="com.wilesun.test.IHelloService"
        class
="com.wilesun.test.HelloService" />    
 
                             
</beans>


3.persistence_1_0.xsd和orm_1_0.xsd

将这两个文件放到项目的classpath的根位置

4.做测试程序

public class HelloService implements IHelloServiceLocal, IHelloServiceRemote {
   @PersistenceContext
   private EntityManager em;
   
   @Resource
   private SessionContext ctx;
}
将代码实现完,就可以测试了
posted on 2007-11-08 09:19 wilesun 阅读(1481) 评论(0)  编辑  收藏 所属分类: 个人经验

只有注册用户登录后才能发表评论。


网站导航: