googleappenginejavaapi

googleappenginejavaapi,java,google-app-engine,Java,Google App Engine,我计划使用servlet和JSP创建一个网站。该网站是关于网络画廊。这是我的项目。我使用“Blobstore”来存储和检索图像。我必须创建一个相册,并在其中存储图像 我脑海中浮现的问题是: 如何在一个名称下存储多个图像。 例如,“Album-1”这是一个名称。。如何在此名称下存储图像 我需要在数据存储列表相册显示在网页上。如果我点击任何一个,它必须显示该相册下的图像 任何人都可以用可能的代码给出解决方案或提示。这可能是一个优雅的解决方案,也可能不是一个优雅的解决方案,但您可以考虑如下操作: 如果

我计划使用servlet和JSP创建一个网站。该网站是关于网络画廊。这是我的项目。我使用“Blobstore”来存储和检索图像。我必须创建一个相册,并在其中存储图像

我脑海中浮现的问题是:

  • 如何在一个名称下存储多个图像。 例如,“Album-1”这是一个名称。。如何在此名称下存储图像

  • 我需要在数据存储列表相册显示在网页上。如果我点击任何一个,它必须显示该相册下的图像


  • 任何人都可以用可能的代码给出解决方案或提示。

    这可能是一个优雅的解决方案,也可能不是一个优雅的解决方案,但您可以考虑如下操作:

    如果您想将上传到BlobStore的图像分组到不同的相册中,则需要获得blob键,并将其逻辑连接到相册名称

    您可以考虑使用一个表单,要求用户输入相册名称,然后他可以选择上载图像,并在提交时将其上载到blobstore

    例如:

    假设你上传了3张名为Image\u 1.jpgImage\u 2.jpgImage\u 3.jpg的图片,并提供了专辑名为Demo album,上传后你得到了3个blob键key\u 1key\u 2key\u 3,因此,现在您需要在数据存储中创建3个单独的实体,分别使用种类,例如Image\u Album和属性blob\u keyAlbum\u name

    实体种类图像\u相册有三个条目:

         blob_key   album_name    
    
         Key_1      Demo Album
         Key_2      Demo Album
         Key_3      Demo Album
    
    这样,您可以有n个条目,并且在显示相册时,您可以查询数据存储中实体类图像相册的所有不同相册名称,这将是您当前的相册数量。获取每个相册名称的所有blob键,并从网页上的blobstore提供它们

    编辑:

    通过表单将多个图像上载到Blobstore后,在上载处理程序servlet中,所有密钥都存储在一个映射中,您可以像这样访问它们:

    BlobstoreService blobstoreService = BlobstoreServiceFactory.getBlobstoreService();
    Map<String, List<BlobKey>> blobs = blobstoreService.getUploads(req);
    
      for (String key : blobs.keySet()) 
        {     
            for (BlobKey value : blobs.get(key)) 
            {
               String x =value.getKeyString()
            }
         }
    
    BlobstoreService BlobstoreService=BlobstoreServiceFactory.getBlobstoreService();
    Map blobs=blobstoreService.getUploads(req);
    for(字符串键:blobs.keySet())
    {     
    for(BlobKey值:blobs.get(键))
    {
    字符串x=value.getKeyString()
    }
    }
    
    您需要单独创建一个实体,该实体将存储所有图像BlobKey和imageURL(ImageService API),您可以将该实体中的所有图像分组,并将图像作为列表对象存储在相册对象中。还有一件事。我知道如何使用java从blobstore获取单个密钥。但是如何获得多个密钥。例如,对于Image_1.jpg、Image_1.jpg、Image_1.jpg,将有3个键。如何获取这3个键?我已编辑了我的答案,以适应您随后的问题。请将问题的标题更改为Blobstore的特定标题。