要在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;
}
}
分享到:
相关推荐
创建GAE项目,配置JDO环境,定义数据模型类,设置持久化策略。 5. **实现CRUD操作**: 使用Flex客户端调用BlazeDS暴露的Spring服务接口,执行CRUD操作。JDO在后台处理数据存储和检索。 6. **测试和优化**: ...
标题“spring+gae+hibernate”所提及的是一个技术集成项目,主要涉及Spring框架、Google App Engine(GAE)和Hibernate三个关键组件。让我们详细探讨这三个技术以及它们的集成。 Spring是一个开源的Java企业级应用...
Struts2、Spring、JDO(Java Data Objects)和AJAX(Asynchronous JavaScript and XML)是四个在Web应用开发中非常关键的技术。这篇博客“Struts2,Spring,JDO,AJAX on GAE”可能探讨了如何在Google App Engine (GAE)...
2. Python解释器:GAE通常使用的Python版本,可能已经配置好与GAE兼容的环境。 3. 一个名为SDU的文件夹,其中包含一个exe文件,这可能是自定义的管理工具或者GAE的启动程序。 4. localproxy文件夹:内含proxy.py,如...
标题中的“GAE Struts2配置”指的是在Google App Engine (GAE) 上配置Struts2框架的过程。GAE是一个基于Java的云平台,允许开发者部署Web应用,而Struts2是一个流行的MVC(模型-视图-控制器)框架,用于构建Java Web...
1. **设置 Google App Engine 项目**:创建一个新的GAE项目,下载SDK,并在本地环境中配置项目结构,包括`appengine-web.xml`配置文件。 2. **集成 Spring**:引入Spring库,更新`pom.xml`或`build.gradle`文件,...
gae-ce-jdo-maven 由JDO和Maven支持的带有Cloud Endpoints的GAE(Google App Engine)示例项目。 为了理解这一点,您应该熟悉 。 此存储库中的代码基于并附加了对的支持。 添加了SampleJdoClass.java和...
2. **数据存储**:Spring与GAE的数据存储API(如JDO或JPA)结合,可以提供一个统一的数据访问层,简化对Google Datastore的操作。 3. **调度任务**:Spring的TaskExecution和TaskScheduler模块可以与GAE的后台任务...
1. **依赖注入**:Spring 3的DI特性可以帮助管理GAE中的对象生命周期,例如,通过配置文件或注解来注入需要的Service和DAO。 2. **持久层**:JPA 2.0通过Hibernate(GAE兼容的JPA实现)与GAE的Datastore进行交互,...
1. 项目配置:如pom.xml(Maven配置文件),包含了项目的依赖信息,如GAE SDK、Struts2、Spring和Tiles的版本。 2. 源代码:包括Action类(Struts2的控制器)、Service和DAO层(Spring管理的业务逻辑和数据访问组件...
在Google App Engine (GAE)环境中,JDO API 2.2是开发者常用的工具,它允许应用程序与GAE的数据存储服务进行交互。JDO 2.2提供了一种简单、灵活且强大的方式来管理对象的生命周期,包括创建、查询、更新和删除对象。...
通常,这样的博客文章会详细解释如何配置和整合SSH2到GAE项目中,包括可能遇到的问题和解决方案。 标签“源码”和“工具”表明压缩包可能包含了源代码文件和一些辅助工具,用于构建和运行GAE项目。源码可能是Java...
压缩包中的"gae-struts2-spring-tiles-starter"可能是一个启动项目,包含了整合Struts2、Spring和Tiles的示例代码。Tiles是一个视图分辨率框架,它可以组合多个JSP片段来创建复杂页面。通过Struts2和Tiles的结合,...
【压缩包子文件的文件名称列表】: "gae-pytorch-master" 暗示了压缩包包含的是整个项目源代码,可能包括训练脚本、模型定义、数据处理模块、配置文件等。用户可以下载这个压缩包,然后根据项目文档进行安装和运行,...
在压缩包中的`2-yaml config`文件可能是一个YAML配置文件示例,它可能展示了GAE应用的不同配置元素,如服务、库依赖、路由规则等。通过分析这个文件,开发者可以更好地理解如何构建自己的GAE应用配置。 总之,了解...
2. **配置文件**:如app.yaml(GAE的应用配置文件),settings.py(Django项目的配置文件)。 3. **数据库迁移文件**:用于版本控制数据库结构的变化。 4. **静态文件**:包括CSS、JavaScript和图片资源。 5. **测试...