小弟在做项目的时候现在要将程序中上传的文件和数据进行加密存储,底层加密可以用C++来编写,我想知道 我的java程序如何调用,最好有demo给我提供,感激不尽。

解决方案 »

  1.   

    先在java中写一个native的方法,javah生成头文件,用C++实现这个头文件,生成标准DLL,这样调用java中的native 方法时就会执行dll加密了
      

  2.   

    1、Java类中申明方法: public native void m();
    2、使用javah 命令生成 .h文件,从中得到c++中对应Java  m方法的方法。
    3、建c++类,在m方法中坐加密处理。
    4、把c++达成dll。
    5、dll文件需要存放在java  path 下。
    这样java就不能跨平台了!!!
      

  3.   

    JNA - http://jna.dev.java.net
      

  4.   

    我写好了, 但是总是报这个错是为什么
    java.lang.UnsatisfiedLinkError: C:\JNI\JavaSkyNet.dll: 由于应用程序配置不正确,应用程序未能启动。重新安装应用程序可能会纠正这个问题。
    at java.lang.ClassLoader$NativeLibrary.load(Native Method)
    at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1778)
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1703)
    at java.lang.Runtime.loadLibrary0(Runtime.java:823)
    at java.lang.System.loadLibrary(System.java:1030)
    at com.skynet.TestDLL.<clinit>(TestDLL.java:16)
    Exception in thread "main"