频道直达 - 专题 - 新闻 - 技巧 - 组网 - 开发 - 安全 - web编程 - 图像 - 操作系统 - 数据库 - 教育 - 旅游 - 健康 - 时尚 - 驱动 - 软件 - 游戏 - 多媒体 - ERP - 讨论组

在JavaScript程序中整合Java函数

来源:yesky 作者:wayne 出处:巧巧读书 2005-11-22 进入讨论组
上一页 1 2 3 4 5 6 7 8 下一页 

  Servlet参数

  为了让JinJ正常运行,还应当能够为JinJ servlet设置一些全局参数,这也是我们在编程是应当注意到的问题。对于JSWDK, Servlet属性是参数'initparams'的一部分;对于Tomcat,则应当编辑系统中的web.xml

  1)需要设置JinJ servlet的路径,参数名是servlet,就像这样:

    http://your_host:port/servlet/JINJ

  2) 需要设置存放HTML页的根目录,参数名是root,其值就像这样: /home/webpages (或c:\webpages) (默认值是一个空的字符串)。 例如,如果你的根目录是:/home/webpages,并且你使用http://host/servlet/JINJ?myfile.htm 的话,那你的真实的文件名是/home/webpages/myfile.htm

  3) 需要设置你定义的Java对象的文件的完全目录,参数名是objects,其值只是一个存放在你的服务器中的一个文件的文件名。

  4) 需要设置用于java applet的codebase,参数名是codebase,定义了存放applet的类的路径,比如http://your_host/ 。

  以下为Tomcat中web.xml 中的相应设置:

<servlet>
<servlet-name>JinJ</servlet-name>
<servlet-class>JinJ</servlet-class>
<init-param>
<param-name>servlet</param-name>
<param-value>http://your_host/servlet/JinJ</param-value>
</init-param>
<init-param>
<param-name>root</param-name>
<param-value>path_to_the_root_directory</param-value>
</init-param>
<init-param>
<param-name>objects</param-name>
<param-value>path_to_your_objects_file</param-value>
</init-param>
<init-param>
<param-name>codebaset</param-name>
<param-value>http://your_host/</param-value>
</init-param>
</servlet>



  在编程时还应当注意实现读取对象文件中所包含的对象,或创建新的Java对象

  1. 在初始化JinJ Servlet时将创建一些Java对象,因此你必须在某个文本文件中定义这些对象,并且在参数objects中设置这个文件的路径,这是一个文本文件,每一行描述了一个元素(空行和以#或//开头的行将被忽略),使用下面的格式来描述参数:

   object_name=new class_name(list_of_parameters);

  换句话说,它很象每次调用类构造器的new操作符,object_name 是就是某个你将在JavaScript中使用到的标识符,例如:

  file://数据池

  A=new dbPool(5);

  file://哈希表

  B=new java.util.Hashtable();

  或者使用你自己定义的包和类:c=new myPackage.myClass(true);

  然后在JavaScript中,你就可以使用它们了,如A.connect(),其中connect() 是类dbPool的一个函数,或者使用B.put('key',value)

  注意

  1)你的类应当放在你的CLASSPATH指定的目录下面。

  2)你可以使用类名作为对象名 (不过这必须在没有重名的情况下,因为对象名必须是唯一的),如:dbPool=new dbPool();

  2. 为了更优化程序,应当在编程的时候就预建一些对象组成标准化库,通过标准化库,你可以在运行中创建/删除对象的实例,查看存在的对象等。

  下面就是我们需要实现的标准化库(预定义的对象) ,对象名是JinJ,所以服务器端名为JinJ的实例将会被自动创建,这给类中有下面几个函数:



public boolean create(String object_name,String class_name,list_of_constructors_parameters);
public void delete(String object_name);
public boolean exists(String object_name);
public String id();
public int random(int n1, int n2);

public String rewriteURL(document,String id_name);
public String rewriteURL(document,String id_name,String id_value);



  create(创建):能够让你在运行时创建某个对象的实例:

  参数为:

   - 新的对象名
   - 类名
   - 参数列表 (如果你使用默认构造函数的时候,可以为空)。

  返回值:

   - 根据创建的接过返回true 或 false

  例如:


<script language="JavaScript">
<!--
创建myHash 作为一个新的哈希表Hashtable -->
java.JinJ.create("myHash","java.util.Hashtable");

<!-- 使用myHash -->
java.myHash.put('key1','shop1');
</script>

delete:让你删除任何对象的实例。
参数为:
- 对象名

例如:
<script language="JavaScript">
<!-- 删除myHash -->
java.JinJ.delete("myHash");
</script>

exists:查看对象的实例是否存在。
参数为:
- 对象名
返回值:
true 或 false

例如:
<script language="JavaScript">
if (java.JinJ.exists("myHash")=='false')
{
<!--创建myHash 作为一个新的哈希表Hashtable -->
java.JinJ.create(myHash,"java.util.Hashtable");

<!--使用myHash -->
java.myHash.put('key1','shop1');
}
</script>

id: 返回唯一的标示符,比如你可以在支持session的程序中使用这个函数。
Random: 从给定的数域中返回随机值:
例如:
<script language="JavaScript">
var sessionId=java.JinJ.id();

<!-- 从1到10中的随机数 -->
var randValue=java.JinJ.random(1,10);
</script>

rewriteURL:能够让你使用session。你可以用<a href="some_url? id_name=id_value">你的链接</a>来替代<a href="some_url">你的链接</a>这同样适用于任何形式的动作。你可以只设置一个参数名,参数值将自动生成,也可以同时设置参数名和参数值:
例如:
<script language="JavaScript">

<!--添加sessionId=某个值到这个链接 -->
java.JinJ.rewriteURL(document,'sessionId');

<!-- 添加 id=12345 到这个链接-->
java.JinJ.rewriteURL(document,'id',12345);

</script>

  我们还要能够分析读入Java函数的参数,对于一个参数我们必须知道它的数据类型,为了简单起见,我们就认为有四种数据类型整型,浮点型,布尔型其余的全归于字符串型,你可以看到,这在程序中都有相应的解释。

  例如:



<!-- 我们假定A(int,float,String,boolean) -->
 java.myClass.myFunc(2, 5.6, a123, true);


  
  为了保证你传递的参数是一个字符串型的值的话,请你使用"或者',如:



<!--总是作为字符串型数据传递-->
java.myClass.myFunc("256");

http://www.qqread.com/java/e820899060.html 更多文章 更多内容请看Java环境安装配置Java编程开发手册专题,或进入讨论组讨论。
上一页 1 2 3 4 5 6 7 8 下一页 
收藏此文】【 】【打印】【关闭
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
巧巧读书宗旨
相关专题
讨论组问题推荐
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选
巧巧电脑频道编辑信箱  告诉我们您想看的专题或文章