В предыдущем разделе мы использовали Java Mail, чтобы завершить функцию отправки электронных писем покупателям, и оставили функцию, которая должна отправлять текстовые сообщения покупателям и сказать им, что порядок был сгенерирован. В этом разделе в основном представлены, как автоматически отправлять текстовые сообщения пользователям после завершения оплаты.
1. Подать заявку на функцию отправки SMS
Очевидно, что мы не можем самостоятельно отправлять текстовые сообщения сами, и мы не имеем функции создания текстовых сообщений, поэтому нам нужно полагаться на сторонних операторов. Однако, как и China Mobile, China Unicom и Telecom не предоставит нам услуги SMS, но сначала предоставит SMS -услуги некоторым операторам, а затем эти операторы предоставят нам их.
Существует оператор под названием «Китайский Net Construction SMS SMS Smerching» (официальный адрес веб -сайта). Этот оператор может предоставить нам услуги SMS. После входа на официальный веб -сайт вы можете проверить стандарты зарядки. Конечно, вы можете получить 5 бесплатных текстовых сообщений в первый раз, но бесплатные могут быть не слишком стабильными, или время отправки относительно длинное. Это зависит от персонажа, но платные в основном хорошие. Его модель прибыли состоит в том, чтобы получить текстовые сообщения от мобильного, Китая Unicom или Telecom по более низкой цене и продавать их пользователям. Конечно, есть скидки. Этот тип продукта обычно покупается крупными компаниями или услугами, которые необходимо отправлять текстовые сообщения пользователям.
Во -первых, мы регистрируем учетную запись (фактически, чтобы получить 5 бесплатных коротких сообщений для тестирования нашей программы). Чтобы прояснить процесс, я стараюсь написать его как можно более подробным. Пожалуйста, смотрите следующий интерфейс:
Вы можете заполнить любые имена и электронные письма, просто заполните свои собственные имена на своем телефоне, потому что вы получите зарегистрированное имя пользователя и пароль. После входа в систему мы видим, что есть 5 бесплатных текстовых сообщений, которые можно отправить, следующим образом:
Дружественные советы: не используйте 5 бесплатных текстовых сообщений в первый день, и вы отправите еще 5 сообщений на второй день, а затем вы не будете отправлять их ~
Затем мы нажимаем на отправку SMS на рисунке выше, и появится интерфейс SMS. Мы не хотим отправлять SMS, но устанавливаем некоторые SMS -суффиксы. То есть после того, как пользователь получает SMS, в конце есть суффикс, чтобы объяснить, откуда он происходит следующим образом:
После сохранения мы нажимаем на «интерфейс SMS API» в левом столбце, и API для отправки текстовых сообщений появится (адрес соединения также приведен здесь). Когда мы программируем, нам нужно обратиться к интерфейсу API, который они предоставляют нам, точно так же, как и ранее платежная функция, используя официальный интерфейс, предоставленный Yibao. Давайте кратко рассмотрим:
Вышеуказанное - это лишь некоторые из контента. Для получения подробной информации, пожалуйста, нажмите на ссылку, приведенную выше. Мы нажимаем на ключ на рисунке, чтобы немедленно изменить его, в основном, чтобы увидеть, что такое ключ, затем скопируйте ключ и сохранив его. Он будет использоваться при написании программы позже.
Хорошо, теперь приготовления сделаны, и API доступен. Теперь мы можем начать разработку функции SMS.
2. Проверьте, является ли сторонний сервер нормальным или нет
Перед разработкой функции SMS давайте проверим, является ли сервер, созданный China Network нормальным. Согласно данным, предоставленным страницей SMS API, мы можем использовать кодирование UTF-8 для отправки адреса интерфейса:
http://utf8.sms.webchinese.cn/?
Давайте проверим, является ли UTF8.sms.webchines.cn нормальным. Давайте напишем страницу test.jsp в проекте:
<%@ page language = "java" import = "java.util.*" pageencoding = "UTF-8"%> <! Doctype html public "-// w3c // dtd html 4.01 transitional // en"> <html> <cead> <%@ include file = "/public/head.jsp"%> </head> <comet> <%@ ulce = "/public/had.jspf". Сам-> <a href = "http://utf8.sms.webchinese.cn/?uid=username этого сайта и ключ интерфейса и smsmob = mobile number & smstext = код проверки: 8888"> Тестовый сервер </a> </body> </html>.
(Дружественное напоминание: не тестируйте несколько раз во время тестирования. Один раз достаточно. Это в основном зависит от того, является ли сервер нормальным. Вы должны оставить его для последующего тестирования несколько раз. Вы также можете неправильно написать параметр. Если возвращается отрицательное число, это означает, что сервер является нормальным. Вы можете видеть, какое отрицательное число представляет ошибку на основе параметров, предоставленных на странице API. также включены в ссылку, что определенно невозможно.)
3. Разработка функции отправки SMS
### ** 3.1 Отправить процесс процесса SMS ** Используя функцию отправки SMS, требуются следующие три пакета JAR: (Бесплатный адрес: http://download.csdn.net/detail/eson_15/9528009)-`commons-codec-14 `commons-logging-1.1.1.jar` Далее мы напишем обычный класс Java, чтобы завершить функцию отправки SMS и проверить правильность:
открытый класс sendmessagedemo {public static void main (string [] args) бросает исключение {// 1. Откройте браузер httpclient client = new httpclient (); // 2. Как создать запрос: get/post postmethod post = new postmethod ("http://utf8.sms.webchinese.cn/"); // Адрес сервера, который мы только что обратились за // 3. Установите запрошенную информацию о параметре post.setRequestHeader ("Content-type", "Application/x-Www-form-Urlencoded; charset = utf-8"); // Установить транскодирование post.setParameter ("uid", "xxxx"); // Параметры одинаковы выше. post.setParameter ("smsmob", "xxxx"); post.setParameter ("smstext", "test!"); // 4. Отправить запрос и вернуть код состояния int code = client.executemethod (post); System.out.println ("Код состояния, возвращаемый http:" + code); // Если 200, это напечатано, это означает, что он нормальный // 5. Получить информацию данных, возвращаемая сервером String Result = post.getResponseBodyAssTring (); System.out.println ("SMS -отправка результата:" + result); // Если вы вернете 1, это означает, что отправка нормальная}}}}} Затем вы можете запустить эту программу Java и отправить ее себе текстовое сообщение, чтобы проверить ее. Результаты моих испытаний следующие :! [Результаты теста] (http://img.blog.csdn.net/2016052312802066) ### ** 3.2 Encapsulate в MessageUtilimpl ** Далее мы будем использовать эту функцию в нашем собственном проекте. Мы инкапсулируем приведенный выше процесс в класс инструмента MessageUtilimpl и извлеките интерфейс следующим образом:
// Извлеченный интерфейс сообщения сообщества Public Interface MessageTil {public Abstract void sendmessage (String phonenum, String Id); // Сообщение об реализации @component ("messageUtil") Открытый класс MessageTilimpl Implaments MessageUtil {@Override public void sendmessage (String phonenum, String Id) {// 1. Откройте браузер httpclient client = new httpclient (); // 2. Как создать запрос: get/post postmethod post = new postmethod ("http://utf8.sms.webchinese.cn/"); // 3. Установить запрошенную информацию о параметре post.setRequestHeader ("Content-Type", "Application/x-Www-form-Urlencoded; charset = utf-8"); post.setParameter ("uid", "eSon_15"); post.setParameter ("Key", "0537729D0B59A7E7358B"); post.setParameter ("smsmob", "15216771570"); post.setParameter ("smstext", "test!"); // 4. Отправьте запрос и верните код состояния Try {int code = 0; code = client.executemethod (post); System.out.println («Код состояния, возвращаемый HTTP:» + code); // 5. Получить информацию данных, возвращаемая сервером String Result = post.getResponseBodyAssTring (); System.out.println («Результат отправки SMS:» + результат); } catch (Exception e) {e.printstackTrace (); бросить новое runtimeexception (e); } наконец {post.ReleAseConnection (); }}}4. Улучшить оплату
Заполните инкапсуляцию класса инструментов. Далее мы помещаем класс инструментов в базойкцию и вводим его через аннотацию @Resource для использования по действию. Ниже мы улучшим метод Backbank () в предыдущей оплате, следующим образом:
@Controller ("Payaction")@scope ("Прототип") Общедоступный класс Payaction расширяет базойкцию <объект> реализует параметры {// Сохранить нерелевантный код ... public void Backbank () {BackData BackData = (BackData) модель; System.out.println (модель); логический isok = payservice.checkbackdata (backdata); if (isok) {// 1. Обновите статус заказа, параметры передаются сами по себе в соответствии с ситуацией в базе данных и используются для тестирования Forderservice.updatestatusbyid (integer.parseint (backdata.getr6_order ()), 2); // 2. Отправить электронную почту в соответствии с строкой адреса электронной почты пользователя emailAddress = backdata.getr8_mp (). Split (",") [0]; emailutil.sendemail (emailaddress, backdata.getr6_order ()); // 3. Отправить строку текстового сообщения мобильного телефона phonenum = backdata.getr8_mp (). Split (",") [1]; messageutil.sendmessage (phonenum, backdata.getr6_order ()); System.out.println ("---- Успех !! -----"); } else {System.out.println ("---- false !!! -----"); }}} Информация, возвращаемая с Yibao, сохраняется в параметре R6_ORDE, а также электронную почту и номер телефона пользователя в параметре R8_MP. Первое - это электронная почта, а второй - это номер мобильного телефона, разделенный запятыми, поэтому нам сначала нужно получить номер мобильного телефона пользователя, а затем отправить текстовое сообщение. ОК, функция отправки текстовых сообщений пользователю после завершения оплаты завершена.
Оригинальная ссылка: http://blog.csdn.net/eson_15/article/details/51475431
Вышеуказанное - все содержание этой статьи. Я надеюсь, что это будет полезно для каждого обучения, и я надеюсь, что все будут поддерживать Wulin.com больше.