`

GAE上传图片,新增大对象数据的问题

    博客分类:
  • GAE
阅读更多
前一段时间公司做了一个GAE的Demo,Demo地址在
http://www.easygae.com/Product/view/id/ag5kYXRvbmdzb2Z0d2FyZXINCxIHUHJvZHVjdBgHDA.html
如果想了解GAE的请到下面的网站查看
http://code.google.com/intl/zh-CN/appengine/docs/whatisgoogleappengine.html
里面有相关的介绍,就不多说了, 下面就将碰到的问题讲讲吧
GAE上传图片时要调用Google的Picasa Web Albums Data API,请参考下面的网站
http://code.google.com/apis/gdata/
Google的数据处理的API都在里面有介绍.
下面将上传图片的步骤讲一下:
1.申请一个http://picasaweb.google.com相簿ID(albumid),并获取用户名
2.下载Google Data的JAR,下载地址:
http://code.google.com/p/gdata-java-client/downloads/list

上传图片时假定已经申请了Google相簿,如果没有请到http://picasaweb.google.com申请相簿,并记录相簿ID.
下面将代码贴出来看一下,我用的是Serlvet上传,上传组件是commons-fileupload-1.2.1.jar
PicasawebService picasawebService = new PicasawebService("easygae");
            String username = "";//用户名
            String passwd = ""; //密码
            String albumid="";  //相簿ID
            picasawebService.setUserCredentials(username, passwd);
            String oldPhotoid = photoInfo.getPhotoid();
            PhotoEntry oldEntry = (PhotoEntry)picasawebService.getEntry(new URL(oldPhotoid), PhotoEntry.class);
            //先刪除圖片,然後新增
            if(oldEntry!=null)
                oldEntry.delete();
            //相簿地址
            String albumPostUrl = "http://picasaweb.google.com/data/feed/api/user/"+username+"/albumid/"+albumid;          
            PhotoEntry photoEntry = new PhotoEntry();
            photoEntry.setTitle(new PlainTextConstruct(photoInfo.getTitle()));
            photoEntry.setDescription(new PlainTextConstruct(
                    photoInfo.getDescription()));
            photoEntry.setClient(applicationName);
            photoEntry.setContent(photoInfo.getOtherContent());
             // 上传图片
            PhotoEntry returnedPhoto = picasawebService.insert(new URL(albumPostUrl),
                    photoEntry);
            MediaContent content = (MediaContent)returnedPhoto.getContent();
            photoInfo.setPicURL(content.getUri()) ;
            photoInfo.setPhotoid(returnedPhoto.getId());

另外GAE新增大数据时,我Model的栏位类型是String,心想String的最大长度是4G,保存大字段时应该没问题,谁知道超过了500字时就自动截取了,後來用
@Persistent
private com.google.appengine.api.datastore.Text siteContent ;
就可以保存进去了.
分享到:
评论
2 楼 mywayscut 2010-07-14  
picasa不是河蟹了吗?
1 楼 tomcatlee 2009-09-12  
请教怎么从gae的网站上传图片?

相关推荐

    基于GAE的Demo

    【基于GAE的Demo】是一个使用Eclipse集成开发环境构建的项目,主要展示了如何在Google App Engine(GAE)平台上整合Struts2、Spring和Tiles框架。GAE是Google提供的一个云计算平台,允许开发者在Google的基础设施上...

    spring+gae

    1. **依赖注入**:Spring的DI(依赖注入)使得在GAE环境中管理对象及其依赖关系变得简单,无需使用GAE特有的服务定位器模式。 2. **数据存储**:Spring与GAE的数据存储API(如JDO或JPA)结合,可以提供一个统一的...

    gae-pytorch-master_pytorch_pytorchgae_GAE_自编码器_gaepytorchmaster_

    【标题】"gae-pytorch-master_pytorch_pytorchgae_GAE_自编码器_gaepytorchmaster_" 提供的信息表明,这是一个使用PyTorch实现的图自编码器(Graph Autoencoder, GAE)项目,其核心是将自编码器的概念应用于图数据。...

    GAE使用规则

    GAE使用规则GAE使用规则GAE使用规则GAE使用规则GAE使用规则GAE使用规则GAE使用规则GAE使用规则GAE使用规则

    gae_in_pytorch-master_GAE_

    VGAE是在GAE基础上引入了变分推断的概念,用于处理图的生成问题。在VGAE中,通过引入潜在变量来对图的生成过程建模,进而学习到更具有解释性的节点嵌入。 **三、PyTorch实现** 在PyTorch框架下实现GAE,首先需要...

    GAE入门教程

    pass之GAE入门教程, 学习GAE

    使用Blobstore上传文件到gae的Demo

    在Google App Engine(GAE)平台上,Blobstore是一种专门用于存储大对象,如图片、视频或任何二进制大数据的高可用性服务。Blobstore API为开发者提供了方便的方式来处理这些大文件的上传和访问,无需担心容量和性能...

    GAE blog安装

    2. **项目结构**:在GAE上部署应用通常需要一个特定的项目结构,包括`app.yaml`配置文件,它定义了应用的运行环境、服务、版本和其他元数据。在给定的文件名称列表中,我们看到了`index.yaml`,这通常是用于定义应用...

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

    对于初学者或者不熟悉GAE配置的开发者来说,这是一个非常方便的起点,可以快速进入开发阶段,无需了解和处理GAE的环境设置、依赖管理和网络配置等复杂问题。 根据压缩包子文件的文件名称列表 "gae",我们可以推测这...

    GAE之webapp框架

    ### GAE之webapp框架详解 #### 一、引言 在Google App Engine (GAE) 平台上进行Web应用开发时,选择合适的框架对于提高开发效率至关重要。其中,`webapp` 框架因其简洁高效而备受开发者青睐。本篇文章将详细介绍`...

    GAE编程指南

    《GAE编程指南》是一种云计算服务,跟其他的同类产品不同,它提供了一种简单的应用程序构建模型,通过这种模型,你可以轻松地构建出能够容纳数百万用户的应用程序。《GAE编程指南》是介绍使用这个强大平台的专家级...

    关于GAE的教程、工具与文档(建站)

    8. **静态文件与缓存**:GAE可以便捷地托管静态文件,如CSS、JavaScript和图片。同时,它也支持CDN(内容分发网络)以提高性能。 9. **监控与日志**:GAE提供了详细的监控工具,可以跟踪应用的性能指标,如请求率、...

    GAE read rss send to 腾讯微博

    标题“GAE read rss send to 腾讯微博”指的是一个使用Google App Engine(GAE)平台开发的应用程序,该程序的功能是从RSS源读取数据并将其发布到腾讯微博。RSS(Really Simple Syndication)是一种内容聚合格式,常...

    GAE和SAE的比较

    云计算下的PaaS中的GAE和SAE平台

    GAE入门教程.pdf

    - GAE 支持处理 CSS, JS 和图片等静态文件,它们可以直接被用户浏览器访问。 10. **上传应用程序** - 使用 `appcfg.py` 命令,开发者可以将完成的 web 应用上传至 Google 服务器进行部署。 通过这个入门教程,你...

    spring+gae+hibernate

    Hibernate作为ORM工具,可以将Java对象与GAE的数据存储服务(如Datastore)进行对接,简化数据库操作。GAE则为这个应用提供了弹性云环境,自动处理负载和扩展需求。 在实际的集成过程中,可能涉及到以下步骤: 1. ...

    gae编程指南

    《GAE编程指南》是一种云计算服务,跟其他的同类产品不同,它提供了一种简单的应用程序构建模型,通过这种模型,你可以轻松地构建出能够容纳数百万用户的应用程序。《GAE编程指南》是介绍使用这个强大平台的专家级...

    GAE上可以用的JAVA 博客源代码

    可以在GAE上直接使用,支持图片上传等。 源代码是修改其他网友的普通blog程序而来,只做了必要的修改,原结构保留 最新版本请去主页下载 http://redpower1998.appspot.com 主页包括原始的普通版本

    GAE解决中文乱码问题

    当我们在GAE上处理包含中文字符的数据时,可能会遇到显示乱码的情况。本篇文章将详细解析如何解决GAE上的中文乱码问题。 首先,我们要理解乱码问题产生的原因。乱码通常与字符编码有关,Java应用默认使用UTF-8编码...

Global site tag (gtag.js) - Google Analytics