发表于: 2017-11-19 22:10:05
1 623
今天完成的事情
将各个功能整合进任务代码
容联云通信,需要下载Java的SDK,找出其中相关的类,直接添加到项目中即可,比较简便的方法是直接将SDK包粘贴过来
然后写一个类,用来调用SDK中所提供的方法,将accountSID,accountToken,appId等设置为类属性,并提供get,set方法,方便在spring配置
private String accountSid;
private String accountToken;
private String appId;
在此类中写提供一个方法,实现调用SDK中的工具发送短信
public void sendSMS(String phoneNumber) {
HashMap<String, Object> result = null;
CCPRestSDK restAPI = new CCPRestSDK();
restAPI.init("app.cloopen.com", "8883");// 初始化服务器地址和端口,格式如下,服务器地址不需要写https://
restAPI.setAccount(accountSid,accountToken);// 初始化主帐号和主帐号TOKEN
restAPI.setAppId(appId);// 初始化应用ID
result = restAPI.sendTemplateSMS(phoneNumber,"1" ,new String[]{"123456","5"});
System.out.println("SDKTestSendTemplateSMS result=" + result);
if("000000".equals(result.get("statusCode"))){
//正常返回输出data包体信息(map)
HashMap<String,Object> data = (HashMap<String, Object>) result.get("data");
Set<String> keySet = data.keySet();
for(String key:keySet){
Object object = data.get(key);
System.out.println(key +" = "+object);
}
}else{
//异常返回输出错误码和错误信息
System.out.println("错误码=" + result.get("statusCode") +" 错误信息= "+result.get("statusMsg"));
}
}
在spring中配置:
<bean id="smsUtil" class="com.jnshu.util.SmsDemo">
<property name="accountSid" value="8hfjkdkdjfkdfgdlfhdhgjfd72"/>
<property name="accountToken" value="2jkdfg89fdf78dfgh87df6g78c9"/>
<property name="appId" value="8duisfhi3487dfdhfd8979"/>
</bean>
SendCloud,阿里云,七牛云的添加比较简单,直接添加相应的jar包,然后修改官网提供的api模板即可,
阿里云所需的jar包:
<dependency>
<groupId>com.aliyun.oss</groupId>
<artifactId>aliyun-sdk-oss</artifactId>
<version>2.8.1</version>
</dependency>
同样写一个类,将api模板中的方法进行封装,设置类属性并提供get,set方法:
private String endpoint;
private String accessKeyId;
private String accessKeySecret;
public String getEndpoint() {return endpoint;}
public void setEndpoint(String endpoint) {this.endpoint = endpoint;}
public String getAccessKeyId() {return accessKeyId;}
public void setAccessKeyId(String accessKeyId) {this.accessKeyId = accessKeyId;}
public String getAccessKeySecret() {return accessKeySecret;}
public void setAccessKeySecret(String accessKeySecret) {this.accessKeySecret = accessKeySecret;}
public void send(){
// 创建OSSClient实例
OSSClient ossClient = new OSSClient(endpoint, accessKeyId, accessKeySecret);
// 上传文件流
try {
InputStream inputStream = new FileInputStream(file);
ossClient.putObject("task13", "f.jpg", inputStream);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
// 关闭client
ossClient.shutdown();
}
spring中配置一下
<!--阿里云配置-->
<bean id="aliyun" class="com.jnshu.util.Aliyun">
<property name="endpoint" value="http://oss-cn-beijing.aliyuncs.com"/>
<property name="accessKeyId" value="LTjhf8d9f7eafDe2"/>
<property name="accessKeySecret" value="VidEtQjkdf87aweyf87adsf5hiGGWp"/>
</bean>
七牛云和SendCloud也是相似的操作,注意一下jar包即可
七牛云的jar包:
<dependency>
<groupId>com.qiniu</groupId>
<artifactId>qiniu-java-sdk</artifactId>
<version>7.2.2</version>
</dependency>
SendCloud所需的jar包:
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.4</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpmime</artifactId>
<version>4.4</version>
</dependency>
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20140107</version>
</dependency>
明天的计划
写页面,实现表单上传图片
在spring配置文件中实现阿里云和七牛云二选一
遇到的问题
无
收获
熟悉了各个api
评论