当前位置:首页 » 服务器技术
开发技术指南» 文章正文
    引言: 最近在公司里做了一个手机的项目,需要JAVA程序在发送短信的时候和第三方的短信服务器连接。
 

 

 ·j2se的30个基本概念    »显示摘要«
    摘要:java概述:目前java主要应用于中间件的开发(middleware)---处理客户机于服务器之间的通信技术,早期的实践证明,java不适合pc应用程序的开发,其发展逐渐变成在开发手持设备,互联网信息站,及车载计算机的开发.java于其他语言所不同的是程序运行时提供了平台的独立性,称许可以在windows,solaris,linux其他操作系统上使用完全相同的代码.java的语法与c++语法类似,c++/c程序员很容易掌握,而且java是完全的彻底的面向......
    摘要: 1. 对应string类型的对象使用println()方法时,如果对象为null,将打印null而不是引发nullpointerexception,由此引用的问题是容易造成错觉,对于以后对字符串的操作容易引起问题。 2. 引发nullpointerexception异常,主要原因是没有对对象的存在性进行验证,在jsp编程中经常出现:if (request.getparameter(“username”).equals(“xxx”))、out.prin......


Java: JNI完全手册

最近在公司里做了一个手机的项目,需要java程序在发送短信的时候与第三方的短信服务器连接。短信接口是用c++写的。琢磨了三天,大致搞懂了jni的主体部分。先将心得整理,希望各位朋友少走弯路。

【相关文章:JDBC连接数据库之十大技巧

【扩展阅读:全面接触存储路由器

首先引用一篇文章,介绍一个简单的jni的调用的过程。 【扩展信息:iSCSI技术应用详解

java以其跨平台的特性深受人们喜爱,而又正由于它的跨平台的目的,使得它与本地机器的各种内部联系变得很少,约束了它的功能。解决java对本地操作的一种方法就是jni。

java通过jni调用本地方法,而本地方法是以库文件的形式存放的(在windows平台上是dll文件形式,在unix机器上是so文件形式)。通过调用本地的库文件的内部方法,使java可以实现与本地机器的紧密联系,调用系统级的各接口方法。

简单介绍及应用如下:

一、java中所需要做的工作

在java程序中,首先需要在类中声明所调用的库名称,如下:

static {

system.loadlibrary(“goodluck”);

}

在这里,库的扩展名字可以不用写出来,究竟是dll还是so,由系统自己判断。

还需对将要调用的方法做本地声明,关键字为native。且只需要声明,而不需要具体实现。如下:

public native static void set(int i);

public native static int get();

然后编译该java程序文件,生成class,再用javah命令,jni就会生成c/c++的头文件。

例如程序testdll.java,内容为:

public class testdll

{

static

{

system.loadlibrary("goodluck");

}

public native static int get();

public native static void set(int i);

public static void main(string[] args)

{

testdll test = new testdll();

test.set(10);

system.out.println(test.get());

}

}

用javac testdll.java编译它,会生成testdll.class。

再用javah testdll,则会在当前目录下生成testdll.h文件,这个文件需要被c/c++程序调用来生成所需的库文件。

二、c/c++中所需要做的工作

对于已生成的.h头文件,c/c++所需要做的,就是把它的各个方法具体的实现。然后编译连接成库文件即可。再把库文件拷贝到java程序的路径下面,就可以用java调用c/c++所实现的功能了。

接上例子。我们先看一下testdll.h文件的内容:

/* do not edit this file - it is machine generated */

#include

/* header for class testdll */

#ifndef _included_testdll


...   下一页
 ·java入门需掌握的30个基本概念    »显示摘要«
    摘要:基本概念 1.oop中唯一关系的是对象的接口是什么,就像计算机的销售商她不管电源内部结构是怎样的,他只关系能否给你提供电就行了,也就是只要知道can or not而不是how and why.所有的程序是由一定的属性和行为对象组成的,不同的对象的访问通过函数调用来完成,对象间所有的交流都是通过方法调用,通过对封装对象数据,很大限度上提高复用率。 2.oop中最重要的思想是类,类是模板是蓝图,从类中构造一个对象,即创建了这个类的一个实例(instance)。......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE