近来,公司在做卡的一个项目上需要加密之类的,所以需要java中调用c的函数,所以才研究了一下,参考了网上一些例子,自己也试了试,给出例子如下:
java 类
package com.lzg;
public class Test { static { System.loadLibrary("swdes"); } public native static String GenCvv(String psCardNo, String psExpiry, String psServiceCode); /** * * @param args * @author lzg * @time 2013-3-29 下午3:57:26 */ public static void main(String[] args) { // TODO Auto-generated method stub GenCvv("123", "1312", "1234"); } }
然后需要编译为class
javac Test.java
然后编译为.h文件
javah -classpath 工程的class路径 com.lzg.Test
然后就可以得到.h文件,你需要将.h文件交给c的同学,他们进行开发,然后生成出来.so或者.dll文件,你放入到java 中进行调用(待完善)