- 浏览: 1888443 次
- 性别:
- 来自: 合肥
文章分类
- 全部博客 (514)
- OPEN (41)
- WARN (33)
- EXPER (16)
- RESOURCE (7)
- TOOL (4)
- DWR (10)
- Struts1.x (10)
- Ibtais (18)
- MyEclipse (30)
- Sql Server (64)
- Tomcat (7)
- APACHE (4)
- JSP (18)
- SERVLET (6)
- ENGLISH (0)
- ECSide (8)
- JasperReports (7)
- JAVA (24)
- JS (42)
- XML (26)
- CVS (8)
- Mind (1)
- JQUERY (2)
- IBATIS (6)
- PROJECT (0)
- STRUTS2 (0)
- PROXOOL (0)
- SPRING (4)
- Hibernate (0)
- SSI (0)
- JBPM (11)
- FLEX (3)
- JSON (2)
- GWT (1)
- jeecms v3 (1)
- Flash (2)
- DATA (1)
- ORACLE (3)
- 查询oracle 中逗号分隔字符串中所有值 (1)
最新评论
-
小小西芹菜:
GoEasy web三步轻松实现web实时推送1. 引入goe ...
服务器推送技术 java -
kg_1997:
这个方法太棒了,可以不用to_date函数,实在是棒!!!
java/oracle日期处理 -
wodesunday:
:idea:
SQL的分段统计查询语句 -
wodesunday:
引用
SQL的分段统计查询语句 -
BlueSkator:
讲的有点浅,没有深入进去
tomcat需要的重新发布和重启服务器的几种情况
短信API基础
http://wireless.java.sun.com/midp/ttips/wma/
aiya翻译 lslzf@bjpeu.edu.cn
java的短信API是可选的包,Wireless Messaging API(WMA),让手机能够通过它来收发文本的短信息和二进制格式多媒体的信息。
WMA是基于GCF(Generic Connection FrameWork),GCF提供了输入输出的抽象的框架,该框架定义了一个可选包提供他们需要的i/o连接,GCF还是CDC的一部分。
通过WMA来传递和接受信息意味着电话通过无线的方式来传递信息,不论是GSM手机还是CDMA手机,特别是WMA支持SMS和CBS,虽然WMA信息和数据报很相似,但是WMA并不使用GCF定义的数据报借口,这种数据报接口是为了在UDP连接中使用,取而代之的是,WMA定义了一套新的接口,这套接口放在javax.wireless.messaging包中。
如果要接受和发出短信息,应用程序必须首先得到一个MessageConnection接口的一个实例,这可以使用GCF连接的工厂方法,传递给方法javax.microedition.io.Connector.open()的URL确认是使用SMS协议还是CBS协议,当然还要传递过去目的手机的号码,端口,也可以同时传递过去。
下面都是有效的URL形式:
sms://+417034967891
sms://+417034967891:5678
sms://:5678
cbs://:5678
这两种形式的短信,前面两种形式的URL建立客户端连接,这个URL一般指定设备,指定端口,如果端口不指定的话,默认的就是文本短信端口,第三种形式是在本地设备上建立一个服务连接,允许应用程序等待和应对其他设备发过来的信息,最后的形式允许应用接受网络操作的广播信息。
下面是一个简单的建立一个客户SMS连接的代码
而接受一个信息就要简单一些,在打开一个服务连接后,应用程序调用连接的receive()方法,他返回的是在指定的端口上下一个可以接受的短信,如果没有可以接受的短信,方法会一直等待倒下格的到来,或者一直到一个不同的线程来关闭这个连接。
这里是最新的WMA的实现。他的完善还有很漫长的路…
http://wireless.java.sun.com/midp/ttips/wma/
aiya翻译 lslzf@bjpeu.edu.cn
java的短信API是可选的包,Wireless Messaging API(WMA),让手机能够通过它来收发文本的短信息和二进制格式多媒体的信息。
WMA是基于GCF(Generic Connection FrameWork),GCF提供了输入输出的抽象的框架,该框架定义了一个可选包提供他们需要的i/o连接,GCF还是CDC的一部分。
通过WMA来传递和接受信息意味着电话通过无线的方式来传递信息,不论是GSM手机还是CDMA手机,特别是WMA支持SMS和CBS,虽然WMA信息和数据报很相似,但是WMA并不使用GCF定义的数据报借口,这种数据报接口是为了在UDP连接中使用,取而代之的是,WMA定义了一套新的接口,这套接口放在javax.wireless.messaging包中。
如果要接受和发出短信息,应用程序必须首先得到一个MessageConnection接口的一个实例,这可以使用GCF连接的工厂方法,传递给方法javax.microedition.io.Connector.open()的URL确认是使用SMS协议还是CBS协议,当然还要传递过去目的手机的号码,端口,也可以同时传递过去。
下面都是有效的URL形式:
sms://+417034967891
sms://+417034967891:5678
sms://:5678
cbs://:5678
这两种形式的短信,前面两种形式的URL建立客户端连接,这个URL一般指定设备,指定端口,如果端口不指定的话,默认的就是文本短信端口,第三种形式是在本地设备上建立一个服务连接,允许应用程序等待和应对其他设备发过来的信息,最后的形式允许应用接受网络操作的广播信息。
下面是一个简单的建立一个客户SMS连接的代码
import javax.microedition.io.*; import javax.wireless.messaging.*; ..... MessageConnection conn = null; String url = "sms://+417034967891"; try { conn = (MessageConnection) Connector.open( url ); // 操作这个连接 } catch( Exception e ){ // 处理异常 } finally { if( conn != null ){ try { conn.close(); } catch( Exception e ){} } }如果需要发送一个短信,则使用MessageConnection.newMessage()方法来建立一个空的信息,设定他的payload(需要发送的文本,或者是二进制数据),然后调用MessageConnection.send()方法,如下所示:
public void sendText( MessageConnection conn, String text ) throws IOException, InterruptedIOException { TextMessage msg = conn.newMessage( conn.TEXT_MESSAGE ); msg.setPayloadText( text ); conn.send( msg ); }传送二进制数据也大同小异
public void sendBinary( MessageConnection conn, byte[] data ) throws IOException, InterruptedIOException { BinaryMessage msg = conn.newMessage( conn.BINARY_MESSAGE ); msg.setPayloadData( data ); conn.send( msg ); }当然,对于在一个信息里面能够传递的数据长度是有限制,一般来说,一则SMS文本短信息限制在160个字符,或者70个汉字,这和字符编码方式有关,而二进制数据限制在140字节,WMA需要对于信息串联融合的支持,但是,这意味着在长度需要至少是限制的三倍的时候使用。可以通过使用MessageConnection.numberOfSegments()来判断一个信息能不能够被传递,如果需要传递,至少要多少节?
而接受一个信息就要简单一些,在打开一个服务连接后,应用程序调用连接的receive()方法,他返回的是在指定的端口上下一个可以接受的短信,如果没有可以接受的短信,方法会一直等待倒下格的到来,或者一直到一个不同的线程来关闭这个连接。
import java.io.*; import javax.microedition.io.*; import javax.wireless.messaging.*; MessageConnection conn = null; String url = "sms://:5678"; // 本机,不需要手机号! try { conn = (MessageConnection) Connector.open( url ); while( true ){ Message msg = conn.receive(); // 等待 if( msg instanceof BinaryMessage ){ byte[] data = ((BinaryMessage) msg).getPayloadData(); // } else { String text = ((TextMessage) msg).getPayloadText(); //进行必要的操作 } } } catch( Exception e ){ // 处理异常 } finally { if( conn != null ){ try { conn.close(); } catch( Exception e ){} } }当然,WMA就是为了处理收发短信息的,不是为了处理他们,一般来说,应用程序发给应用程序的信息应该用二进制信息来作为收发的载体,标准的DataInputStream, DataOutputStream, ByteArrayInputStream, 和 ByteArrayOutputStream类能够很好的完成需要的功能。
这里是最新的WMA的实现。他的完善还有很漫长的路…
发表评论
-
Apache FileUpload组件
2013-11-22 15:05 5465Apache FileUpload组件 在最初的 htt ... -
各种数据库对应的jar包、驱动类名和URL格式
2012-11-20 16:38 1529各种数据库对应的jar包、驱动类名和URL格式 2011 ... -
Java Web Start
2011-09-14 10:45 1361一.首先了解一下什么是java web start 1JNL ... -
The template at a glance一目了然的模板
2011-08-05 09:06 1510The template at a glance一目了然的模板 ... -
FreeMarker
2011-08-05 09:04 1140一目了然的数据模型 As you have seen, th ... -
jeecms v3
2011-07-04 15:28 1585好久没有逛jeecms的官方论坛了,今天去看了下,jeecms ... -
gwt整合ibatis
2011-07-02 09:42 2101最近整合gwt整合ibatis,常见错误 控制台报错: 一.N ... -
GWT RPC原理浅析(二)
2011-06-17 16:14 2867前一篇介绍了RPC大体的流程,核心方法是RemoteServi ... -
GWT RPC原理浅析
2011-06-17 15:26 5349GWT中前后台交互有多种方式,包括JSON,XML,RPC 其 ... -
五种开源协议
2011-04-25 14:54 1129五种开源协议(BSD,Apache,G ... -
JAVA代码调用客户端摄像头 初步探讨
2011-02-21 16:51 6771首先到sun下载最新的jmf,然后安装。 然后,说一下 ... -
tomcat部署jbpm项目 loader constraint violation
2011-02-11 14:22 1811当tomcat部署jbpm项目 时,启动项目控制台出错 ja ... -
E3.Tree参考手册
2010-12-10 09:52 3599E3.Tree参考手册 (v1.0) 目录 简介 2 系统 ... -
e3.tree 1.5 发布,很好,很强大,有截图[转]
2010-12-07 14:14 1150E3.Tree是E3平台下一个用于构造树型UI(menu,tr ... -
在Action中获取ServletContext实例
2010-11-25 13:43 37811:在Action中获取servletContext的时候可以 ... -
Bean named 'sqlMapClient' must be of type [org.springframework.orm.ibatis.SqlMap
2010-11-22 09:57 4960在整合spring2.5和ibatis2,出现了ibatis的 ... -
spring,ibatis的笔记
2010-11-22 08:51 1062在上文中,我们把iface ... -
spring,ibatis的笔记
2010-11-22 08:51 986在上文中,我们把iface ... -
后台错误处理
2010-11-17 15:10 1344后台处理 if (!isTokenValid(request) ... -
struts1 和Spring整合jar包
2010-11-17 11:33 5026struts1 和Spring整合 struts1 和Spri ...
相关推荐
这个"JAVA短信验证源码DEMO"提供了实现短信验证功能的基本框架,主要涉及Java编程语言和网络通信技术。以下是对该DEMO中核心知识点的详细解释: 1. **TCP/IP Socket通信**:TCP(Transmission Control Protocol)/...
AT命令是与短信猫交互的基础,例如`AT+CMGF`用于设置短信模式(文本或PDU模式),`AT+CMGS`用于发送短信,`AT+CMGL`用于读取短信等。编写Java代码时,你需要构造这些命令字符串并通过串口发送。 4. **Java代码实现...
Java短信服务工具类是开发过程中...以上是关于"Java短信服务工具类"的一些关键知识点,涵盖了从基础的协议理解到高级的性能优化等多个层面。理解并熟练运用这些知识点,可以帮助开发者高效、稳定地实现短信服务功能。
Java短信开发Demo主要涉及到的是Java在通信领域中的应用,尤其是短信服务的实现。在这个领域,Java程序员通常会利用第三方API或者SDK来实现短信的发送、接收以及相关的验证功能。以下是一些关键的知识点: 1. **...
Java短信猫项目是一种基于Java语言实现的短信发送与接收系统,它主要依赖于两个关键库:smslib-3.3.3.jar和log4j-1.2.13.jar。这个项目对于需要进行短信服务集成的企业或者开发者来说,是一个非常有价值的参考案例。...
【Java短信收发系统开源】是一个基于Java技术构建的短信服务平台,主要采用了JSP、Servlet和JavaBean等核心技术,用于实现短信的发送和接收功能。这个开源项目为开发者提供了一个可扩展和定制化的基础框架,方便对...
Java短信收发技术是软件开发中的一个重要组成部分,特别是在企业级应用和移动通信解决方案中。SMSLIB是一个用Java编写的开源库,它提供了短信发送和接收的功能,为开发者提供了方便的API来实现短信服务。本篇将详细...
以上就是Java短信验证的整个流程,对于初学者来说,理解并实现这个功能是掌握Web开发基础的重要一步。在实际应用中,还需要根据项目需求进行优化和调整,比如增加二次验证、语音验证等增强安全性的措施。
本示例“java短信的收发demo”提供了一个基础的实现,让我们来深入探讨其中涉及的关键知识点。 1. **短信API集成**: - `java利用飞信API发送短信.doc` 提到了飞信API,飞信是中国移动推出的一种即时通讯服务,它...
1. **comm.jar**:这是Java通信API(Java Comm API)的库文件,提供了与串行和并行端口交互的能力,是Java程序控制短信猫的基础。 2. **javax.comm.properties**:这是一个配置文件,用于配置Java Comm API的具体...
Java手机短信项目源码是一个基于Java编程语言的项目,它主要涉及了移动通信领域中短信服务的实现。这个项目可能是为了帮助开发者理解如何在Java环境下构建短信发送和接收功能,或者是一个实际应用中的部分功能模块。...
CMPP2.0短信网关发送短信代码...综上所述,基于Java实现的CMPP2.0短信网关发送短信代码是一项涉及网络通信、协议解析、多线程编程等多方面技术的工作,需要开发者对移动通信协议有深入理解,并具备扎实的Java编程基础。
1. Java Socket通信:Java Socket是网络通信的基础,它提供了两台机器间低级别的、双向通信的通道。在短信收发程序中,Socket用于建立客户端和服务器端的连接,使得程序能够通过TCP/IP协议发送和接收短信数据。 2. ...
【Java手机短信项目源码分析】 Java作为一门广泛应用于服务器端和移动设备的编程语言,其在短信服务领域的应用也非常普遍。在这个项目中,我们主要探讨的是如何利用Java技术实现手机短信的发送与接收功能。这是一份...
Java发送手机短信验证码是移动应用或网站验证用户身份的常用方法。通过这种方式,可以确保用户...`SendMsgDemo`这个文件为我们提供了一个基础的实现框架,但具体实现还需要根据实际需求和所选择的短信服务商进行调整。
1. **Java编程基础**:Java短信平台的核心是用Java语言编写,因此了解Java语法、面向对象编程、异常处理、多线程等基础知识至关重要。Java的稳定性和跨平台特性使其成为构建可靠系统的首选。 2. **网络通信协议**:...
通过实际的代码示例,学习者可以更好地理解Java ME平台下的GUI编程基础,包括如何使用Form、TextField等组件构建用户界面,以及如何通过Command和CommandListener处理用户的交互行为。这对于初学者来说是非常宝贵的...
中国移动短信网关CMPP(China Mobile Packet Protocol)3.0是一种专用于移动...通过理解以上知识点,开发者可以利用华为的中国移动短信网关CMPP 3.0 Java API,构建起与短信网关的桥梁,实现高效、稳定的短信服务应用。
Java+Demo对接中国移动云MAS短信发送-Jar是一个关于使用Java编程语言与中国移动的云MAS(Mobile Application Server)服务进行集成,实现短信发送功能的技术实践。中国移动的云MAS平台为企业提供了强大的短信服务...
Java 短信通信接口文档主要涉及了Java应用...这个Java短信通信接口文档涵盖了短信服务的基础操作,包括发送、接收、状态查询和账户管理等,为开发者提供了完整的API参考,方便集成到Java应用程序中实现短信通讯功能。