java短信接口调用

1.在action中调用webservice

package com.haikan.exam.action;

import java.rmi.RemoteException;
import java.util.ServiceLoader;

import javax.xml.rpc.ServiceException;

import com.haikan.exam.util.SmsSendServiceLocator;

public class Test {

 /**
  * @param args
  * @throws ServiceException
  * @throws RemoteException
  */
 public static void main(String[] args) throws RemoteException, ServiceException {

    SmsSendServiceLocator sms = new SmsSendServiceLocator();
    sms.getSmsSendServiceSoap().send("wp", "18314898709", "美女!你好!","", "343", "12132");

/*    sms.getSmsSendServiceSoap().send("", "18314898709", message, extAttributes, applicationID, password);
*/ }

}

2.

公司短信发送模式要从mq调用方式迁移到web service调用方式,于是就查了查如何搞。

使用axis1.4生成客户端调用web service的大概步骤如下:

1)下载axis1.4,解压。下载activation.jar和mail.jar两个jar包,放到axis1.4的lib目录下

2)进入axis1.4目录,运行java -Djava.ext.dirs=lib org.apache.axis.wsdl.WSDL2Java -p 客户端包名 web service url或wsdl文件路径

3)生成的客户端代码里面涉及到web service调用的主要有一个ServiceLocator和一个PortType类,

先new出一个ServiceLocator实例,然后通过该实例的getCSB_Through_ServicePort()方法得到一个PortType实例,通过这个PortType实例就可以直接调用具体的web service了。

 


 

### Java 调用短信接口示例 #### 准备工作 为了成功调用短信接口,需先完成一些准备工作。这包括下载必要的接口文件并设置好开发环境。 - **获取依赖** - 需要确保项目中有相应的 jar 包支持短信功能的调用[^3]。 对于某些特定的服务提供商,比如阿里云,则可以在 Maven 的 `pom.xml` 文件中添加如下依赖来引入 SDK: ```xml <!--阿里短信业务api--> <dependency> <groupId>com.aliyun</groupId> <artifactId>aliyun-java-sdk-core</artifactId> <version>4.6.0</version> </dependency> ``` #### 创建项目结构 在 Eclipse 或其他 IDE 中新建一个 Web 动态项目,并按照以下步骤操作: - 导入之前准备好的 jar 包到项目的库路径下; - 新建包用于存放自定义工具类和其他辅助资源; #### 编写发送逻辑 接下来就是核心部分——编写实际用来触发短信发送请求的代码片段。这里给出一个简单的例子作为参考: ```java import com.alibaba.fastjson.JSONObject; // ... other imports ... public class SendSms { private static final String ACCESS_KEY_ID = "your-access-key-id"; private static final String ACCESS_KEY_SECRET = "your-access-key-secret"; public void send(String phoneNumber, String templateCode, Map<String,Object> params){ DefaultProfile profile = DefaultProfile.getProfile("cn-hangzhou", ACCESS_KEY_ID, ACCESS_KEY_SECRET); IAcsClient client = new DefaultAcsClient(profile); SendSmsRequest request = new SendSmsRequest(); request.setPhoneNumbers(phoneNumber); // 设置电话号码 request.setSignName("签名名称"); // 替换成自己的签名名字 request.setTemplateCode(templateCode); // 使用指定模板编码 JSONObject jsonParam = (JSONObject) JSONObject.toJSON(params); request.setTemplateParam(jsonParam.toJSONString()); try{ SendSmsResponse response = client.getAcsResponse(request); System.out.println(response.getMessage()); } catch(ClientException e){ e.printStackTrace(); } } } ``` 此段程序展示了如何通过阿里云提供的 API 来执行一次基本的短信发送任务。需要注意的是,在正式环境中应当妥善保管访问密钥信息,并遵循服务商的安全指引进行配置[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值