jsp调用jni方法
我的环境:
--------
1. java编译器:eclipse 3.0.2
2. web服务器: tomcat 4.1.24
3. C编译器: VC6.0
4. 操作系统: win2k
5. java源文件目录: d:\study\src
6. java编译后的class文件目录: d:\study\bin
7. tomcat目录: d:\tomcat41
1.编写java文件:
//Util.java
package com.jni;
public class Util
{
public native static int add( int x, int y );
static
{
System.loadLibrary( "Util" );
}
}
编译这个文件,生成Util.class文件.
2.生成对应的头文件:
打开一个dos窗口,进入存放class文件的目录:
d:\>cd d:\study\bin
d:\study\bin\>javah com.jni.Util
这样,会在d:\study\bin目录下生成com_jni_Util.h文件.
3. 编写c文件:
在VC6.0中:File->New->Projects->Win32 Dynamic-link Library,Project name 为Util, 创建一个empty DLL project.
把2所生成的com_jni_Util.h文件和C:\j2sdk1.4.2\include目录下的jni.h, C:\j2sdk1.4.2\include\win32目录下的jni_md.h复制到Util工程目录下.
(C:\j2sdk1.4.2为我的jsdk的安装路径).
在Util工程中创建一个c源文件,名为Util.c.
//Util.c
#include "com_jni_Util.h"
JNIEXPORT jint JNICALL Java_com_jni_Util_add
(JNIEnv *env, jclass jc, jint x, jint y)
{
return x+y;
}
4. 生成Util.dll:
编译3中的Util.c文件后,会生成Util.dll文件.
5. 生成jar包:
把Util.class文件打成jar包,名为myutil.jar.
6. 编写jsp文件:
//test.jsp
<%@ page import="com.jni.Util" %>
<html>
<head></head>
<body>
<h3>5+7=<%=Util.add( 5, 7 )%></h3>
</body>
</html>
7. 把myutil.jar包复制到d:\tomcat41\common\lib目录下;
把Util.dll文件复制到d:\tomcat41\bin目录下(也可以是环境变量path的所设定的任何一个目录下);
把test.jsp复制到d:\tomcat41\webapp\test目录下.
8. 启动tomcat.
9. 在ie中输入: http://localhost:8080/test/test.jsp.
如果你能看到: 5+7=12 就成功了.
相关文档:
总的来讲,JavaSever PagesTM(JSP)和 微软的Active Sever Pages(ASP)在技术方面有许多相似之处。两者都是为基于WEB应用实现动态交互网页制作提供的技术环境支持。同等程度上来讲,两者都能够为程序开发人员提供实现应用程序的编制与自带组件设计网页从逻辑上分离的技术。而且两者都能够替代CGI使网站建设与发展变的较为 ......
在jsp中,如果在url中传递中文时会出现乱码,在网上关于这一问题的解决方法五花八门,但都不是很奏效!其实解决方法非常简单: 第一步:编码(以传递的参数为str为例) 在传递数据前将str进行编码Java.net.URLEncoder.encode(str) 第二步:解码 在获取数据端将得到的数据进行解码 new String(str.getBytes("ISO8859_1"))
......
说明:基于Eclipse 3.2 + Tomcat 4.0编译完成
1.完成你自己的Tag Class,javax.servlet.jsp中提供一个Tag接口类
TagSupport 和 BodyTagSupport两个类,你自己的Tag Class必须
extends其中一个。本例中HrefTag Class extends TagSupport类,并
完成了doStratTag方法的重写,主要代码如下:
public int doStartTag(){
J ......
JSP彩色验证码
生成有4个随机数字和杂乱背景的图片,数字和背景颜色会改变,服务器端刷新(用history.go(-1)也会变)
原型参考ALIBABA http://china.alibaba.com/member/showimage
产生验证码图片的文件-----image.jsp
<%@ page contentType="image/jpeg" import="java.awt.*,java.awt.image.*,java.util.*,java ......