編程生活

             :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            113 隨筆 :: 0 文章 :: 18 評論 :: 0 Trackbacks

          Spring的版本號為2.0.6
          openJPA的版本為0.9.7(其實1.0.0也是一樣)
          照下面如此,客戶端不用裝應用服務器開發(fā)了.
          但如果你的客戶端是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;
          }
          將代碼實現(xiàn)完,就可以測試了
          posted on 2007-11-08 09:19 wilesun 閱讀(1488) 評論(0)  編輯  收藏 所屬分類: 個人經驗
          主站蜘蛛池模板: 山阴县| 滁州市| 二连浩特市| 靖江市| 黔西县| 上思县| 城口县| 新安县| 长沙市| 仙游县| 伊金霍洛旗| 开鲁县| 沙河市| 徐闻县| 石台县| 贵南县| 乐昌市| 翼城县| 凤凰县| 东光县| 长沙市| 安宁市| 大化| 襄垣县| 公主岭市| 广昌县| 腾冲县| 孟连| 体育| 冀州市| 读书| 盐池县| 苍溪县| 甘洛县| 南漳县| 金乡县| 连江县| 西藏| 新源县| 利川市| 广灵县|