`
snowtigersoft
  • 浏览: 55215 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

【2】GAE+Sping中JDO的配置

阅读更多

要在GAE中用Spring配置JDO,首先要下载几个jar包:

aopalliance.jar和aspectjweaver.jar,我都已经放到附件!

好了,看看配置文件:

 

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
	xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
	xmlns:context="http://www.springframework.org/schema/context"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd  
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
        http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd
        http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd">

	<!-- persistenceManagerFactory -->
	<bean id="persistenceManagerFactory"
		class="org.springframework.orm.jdo.LocalPersistenceManagerFactoryBean">
		<property name="persistenceManagerFactoryName" value="transactions-optional" />
	</bean>
	<bean id="persistenceManagerFactoryProxy"
		class="org.springframework.orm.jdo.TransactionAwarePersistenceManagerFactoryProxy">
		<property name="targetPersistenceManagerFactory" ref="persistenceManagerFactory" />
		<property name="allowCreate" value="true" />
	</bean>

	<bean id="transactionManager" class="org.springframework.orm.jdo.JdoTransactionManager">
		<property name="persistenceManagerFactory" ref="persistenceManagerFactoryProxy" />
	</bean>

	<tx:advice id="txAdvice" transaction-manager="transactionManager">
		<tx:attributes>
			<tx:method name="*" propagation="REQUIRED" />
		</tx:attributes>
	</tx:advice>

	<aop:config>
		<aop:pointcut id="myJdoMethods"
			expression="execution(* com.snowtigersoft.taobao.integration.dao.*.*(..))" />
		<aop:pointcut id="myServiceMethods"
			expression="execution(* com.snowtigersoft.taobao.biz.service.*.*(..))" />
		<aop:advisor advice-ref="txAdvice" pointcut-ref="myJdoMethods" />
		<aop:advisor advice-ref="txAdvice" pointcut-ref="myServiceMethods" />
	</aop:config>

	<!-- Dao -->
	<bean id="itemCatDao"
		class="com.snowtigersoft.taobao.integration.dao.impl.ItemCatDAOJdoImpl">
		<property name="persistenceManagerFactory" ref="persistenceManagerFactoryProxy" />
	</bean>
</beans>
 

一定不要忘了beans的这些属性(我开始就忘了。。。。结果就会Exception ):

 

xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
	xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
	xmlns:context="http://www.springframework.org/schema/context"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd  
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
        http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd
        http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd"

 

 这样配置之后,在DAO中就可以直接使用JdoTemplate来进行JDO的操作的,不用关心PersistenceManager的open和close问题了~~

 

public void deleteItemCat(ItemCatJDO itemCat) throws Exception {

		try {
			getJdoTemplate().deletePersistent(itemCat);
		} catch (DataAccessException e) {
			log
					.warning("[deleteItemCat] DataAccessException:"
							+ e.getMessage());
			e.printStackTrace();
			throw e;
		}

	}

 

 

0
0
分享到:
评论
1 楼 neilone.cn 2010-09-15  
兄弟,我始终出现这个错误
The resource named "transactions-optional" could not be found in the class loader "com.google.apphosting.runtime.security.UserClassLoader@145fe3b".


是在jdo里配置的,如何在spring中寻找???

相关推荐

    flex + spring + BlazeDS + google App JDO 实现一个CRUD.

    创建GAE项目,配置JDO环境,定义数据模型类,设置持久化策略。 5. **实现CRUD操作**: 使用Flex客户端调用BlazeDS暴露的Spring服务接口,执行CRUD操作。JDO在后台处理数据存储和检索。 6. **测试和优化**: ...

    spring+gae+hibernate

    标题“spring+gae+hibernate”所提及的是一个技术集成项目,主要涉及Spring框架、Google App Engine(GAE)和Hibernate三个关键组件。让我们详细探讨这三个技术以及它们的集成。 Spring是一个开源的Java企业级应用...

    Struts2,Spring,JDO,AJAX on GAE

    Struts2、Spring、JDO(Java Data Objects)和AJAX(Asynchronous JavaScript and XML)是四个在Web应用开发中非常关键的技术。这篇博客“Struts2,Spring,JDO,AJAX on GAE”可能探讨了如何在Google App Engine (GAE)...

    GAE包(以配置好,解压可用)

    2. Python解释器:GAE通常使用的Python版本,可能已经配置好与GAE兼容的环境。 3. 一个名为SDU的文件夹,其中包含一个exe文件,这可能是自定义的管理工具或者GAE的启动程序。 4. localproxy文件夹:内含proxy.py,如...

    GAE Struts2配置

    标题中的“GAE Struts2配置”指的是在Google App Engine (GAE) 上配置Struts2框架的过程。GAE是一个基于Java的云平台,允许开发者部署Web应用,而Struts2是一个流行的MVC(模型-视图-控制器)框架,用于构建Java Web...

    配置 google app 配置 spring. 配置jdo

    1. **设置 Google App Engine 项目**:创建一个新的GAE项目,下载SDK,并在本地环境中配置项目结构,包括`appengine-web.xml`配置文件。 2. **集成 Spring**:引入Spring库,更新`pom.xml`或`build.gradle`文件,...

    gae-ce-jdo-maven:由JDO和Maven支持的带有云端点的GAE(Google App Engine)示例项目

    gae-ce-jdo-maven 由JDO和Maven支持的带有Cloud Endpoints的GAE(Google App Engine)示例项目。 为了理解这一点,您应该熟悉 。 此存储库中的代码基于并附加了对的支持。 添加了SampleJdoClass.java和...

    spring+gae

    2. **数据存储**:Spring与GAE的数据存储API(如JDO或JPA)结合,可以提供一个统一的数据访问层,简化对Google Datastore的操作。 3. **调度任务**:Spring的TaskExecution和TaskScheduler模块可以与GAE的后台任务...

    spring3+springmvc+jpa2+gae

    1. **依赖注入**:Spring 3的DI特性可以帮助管理GAE中的对象生命周期,例如,通过配置文件或注解来注入需要的Service和DAO。 2. **持久层**:JPA 2.0通过Hibernate(GAE兼容的JPA实现)与GAE的Datastore进行交互,...

    基于GAE的Demo

    1. 项目配置:如pom.xml(Maven配置文件),包含了项目的依赖信息,如GAE SDK、Struts2、Spring和Tiles的版本。 2. 源代码:包括Action类(Struts2的控制器)、Service和DAO层(Spring管理的业务逻辑和数据访问组件...

    jdo API 2.2

    在Google App Engine (GAE)环境中,JDO API 2.2是开发者常用的工具,它允许应用程序与GAE的数据存储服务进行交互。JDO 2.2提供了一种简单、灵活且强大的方式来管理对象的生命周期,包括创建、查询、更新和删除对象。...

    GAE中整合SSH2的空项目备份

    通常,这样的博客文章会详细解释如何配置和整合SSH2到GAE项目中,包括可能遇到的问题和解决方案。 标签“源码”和“工具”表明压缩包可能包含了源代码文件和一些辅助工具,用于构建和运行GAE项目。源码可能是Java...

    gae strus2 spring 整合

    压缩包中的"gae-struts2-spring-tiles-starter"可能是一个启动项目,包含了整合Struts2、Spring和Tiles的示例代码。Tiles是一个视图分辨率框架,它可以组合多个JSP片段来创建复杂页面。通过Struts2和Tiles的结合,...

    gae-pytorch-master_pytorch_pytorchgae_GAE_自编码器_gaepytorchmaster_

    【压缩包子文件的文件名称列表】: "gae-pytorch-master" 暗示了压缩包包含的是整个项目源代码,可能包括训练脚本、模型定义、数据处理模块、配置文件等。用户可以下载这个压缩包,然后根据项目文档进行安装和运行,...

    在GAE中读取yaml的例子

    在压缩包中的`2-yaml config`文件可能是一个YAML配置文件示例,它可能展示了GAE应用的不同配置元素,如服务、库依赖、路由规则等。通过分析这个文件,开发者可以更好地理解如何构建自己的GAE应用配置。 总之,了解...

    小学期GAE项目 python+Django框架实现的博客

    2. **配置文件**:如app.yaml(GAE的应用配置文件),settings.py(Django项目的配置文件)。 3. **数据库迁移文件**:用于版本控制数据库结构的变化。 4. **静态文件**:包括CSS、JavaScript和图片资源。 5. **测试...

Global site tag (gtag.js) - Google Analytics