发表于: 2020-07-08 21:28:30

1 1347


今天完成的事情:阿里云邮件推送,OSS云存储


邮件推送

阿里云域名个人认证通过了,可以顺利的进行域名解析

然后尝试发送下

挺好的,收到了香菜的婚礼邀请函


代码的话就是在阿里云的SKD上边神秘操作下来的


OSS云存储

在阿里云上进行了OSS云存储的申请

OSSservice

package com.service.imp;

import com.aliyun.oss.ClientException;
import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
import com.aliyun.oss.OSSException;
import com.aliyun.oss.model.BucketInfo;
import com.aliyun.oss.model.OSSObject;
import com.aliyun.oss.model.OSSObjectSummary;
import com.aliyun.oss.model.ObjectListing;
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;

import java.io.*;
import java.util.List;

public class OssService {
static Logger logger = Logger.getLogger(OssService.class);
   /**
    *      OSS基本配置
    */
   // endpoint是访问OSS的域名。如果您已经在OSS的控制台上 创建了Bucket,请在控制台上查看域名。
   // endpoint的格式形如“http://oss-cn-hangzhou.aliyuncs.com/”,注意http://后不带bucket名称,
   private static String endpoint = "http://oss-cn-beijing.aliyuncs.com";
   private static String accessKeyId = "*********";
   private static String accessKeySecret = "****************";
   // Bucket命名规范如下:只能包括小写字母,数字和短横线(-),必须以小写字母或者数字开头,长度必须在3-63字节之间。
   private static String bucketName = "**********";
   // Object命名规范如下:使用UTF-8编码,长度必须在1-1023字节之间,不能以“/”或者“\”字符开头。
   private static String firstKey = "my-first-key";

   public static void main(String[] args) {

// 日志配置,OSS Java SDK使用log4j记录错误信息。示例程序会在工程目录下生成“oss-demo.log”日志文件,默认日志级别是INFO
       // 日志的配置文件是“conf/log4j.properties”,如果您不需要日志,可以没有日志配置文件和下面的日志配置。
//        PropertyConfigurator.configure("classpath:log4j.properties");

       logger.info("Started");

       /**
        * 生成OSSClient
         */
       OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
       try {
// 判断Bucket是否存在
           if (ossClient.doesBucketExist(bucketName)) {
System.out.println("您已经创建Bucket" + bucketName + "");
           } else {
// 创建Bucket
               ossClient.createBucket(bucketName);
               System.out.println("您的Bucket不存在,创建Bucket" + bucketName + "");
           }

// 查看Bucket信息
           BucketInfo info = ossClient.getBucketInfo(bucketName);
           System.out.println("Bucket " + bucketName + "的信息如下:");
           System.out.println("\t数据中心:" + info.getBucket().getLocation());
           System.out.println("\t创建时间:" + info.getBucket().getCreationDate());
           System.out.println("\t用户标志:" + info.getBucket().getOwner());

           /**
            *
            * 把字符串存入OSSObject的名称为firstKey
             */

           InputStream is = new ByteArrayInputStream("Hello OSS".getBytes());
           ossClient.putObject(bucketName, firstKey, is);
           System.out.println("Object" + firstKey + "存入OSS成功。");

           /**
            * 下载文件
            */
           OSSObject ossObject = ossClient.getObject(bucketName, firstKey);
           InputStream inputStream = ossObject.getObjectContent();
           StringBuilder objectContent = new StringBuilder();
           BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
           while (true) {
String line = reader.readLine();
               if (line == null)
break;
               objectContent.append(line);
           }
inputStream.close();
           System.out.println("Object" + firstKey + "的内容是:" + objectContent);

           /**
            * 文件存储入OSS
             */
           //文件名称
           String fileKey = "README.md";
           ossClient.putObject(bucketName, fileKey, new File("README.md"));
           System.out.println("Object" + fileKey + "存入OSS成功。");

           /**
            * 查看Bucket中的Object
             */
           ObjectListing objectListing = ossClient.listObjects(bucketName);
           List<OSSObjectSummary> objectSummary = objectListing.getObjectSummaries();
           System.out.println("您有以下Object");
           for (OSSObjectSummary object : objectSummary) {
System.out.println("\t" + object.getKey());
           }

/**
            * 删除Object
            */
           ossClient.deleteObject(bucketName, firstKey);
           System.out.println("删除Object" + firstKey + "成功。");
           ossClient.deleteObject(bucketName, fileKey);
           System.out.println("删除Object" + fileKey + "成功。");

       } catch (OSSException oe) {
oe.printStackTrace();
       } catch (ClientException ce) {
ce.printStackTrace();
       } catch (Exception e) {
e.printStackTrace();
       } finally {
ossClient.shutdown();
       }

logger.info("Completed");
   }

}

需要注意的有一点,这里的 endpoint 根绝域名区域区域不一样是需要改变的

// endpoint的格式形如“http://oss-cn-hangzhou.aliyuncs.com/”,注意http://后不带bucket名称,
   private static String endpoint "http://oss-cn-beijing.aliyuncs.com";


然后可以在OSS控制台中可以看到创建的key 以及文件内容

然后想搞到一个JSP 手机注册页面...

写了下我想的手机注册的逻辑

1、点击注册,在任务5原有基础上 增加 手机号验证注册
2、在控制层添加手机注册  (虽然知道一般注册页面直接带有手机注册的,但是为了让自己清楚些,就分开了)
3、手机注册需要验证码,调用之前的短信服务 发送验证码
4、先声明一个String类型的phone 用以输入手机号

5、如果数据库中没有输入的手机号那么才可以进行验证码注册,点击获取验证码 判断输入的验证码与 短信提供的验证码是否一致,一致则完成注册返回主页同时将

      账号添加进数据库

6、注册页面 要有的内容
     手机号
     验证码  获取验证码
7、我希望的注册页面





明天计划的事情:希望可以完成短信注册的逻辑







返回列表 返回列表
评论

    分享到