js里面的java代码 javascript的代码
如何把java代码嵌入到javascript中
1.取得脚本解释器的管理器Manager
2.从管理器中取得js的解释器实例ScriptEngine
3.取得存储javascript变量的Bindings实例
4.把一个java.io.Reader流及Bindings传递给ScriptEngine的eval方法返回脚本运行结果,如果执行中发生错误,会抛出ScriptException异常。
例:运行javascript脚本的一个java程序
throwsIOException{ ScriptEngineManagerscriptManager=newScriptEngineManager; //从管理器中获取js的解释器//定义我们要运行的脚本文件Stringfilename=null; //通过解释器来获得存储javascript变量的Bindings的实例,使它们提供给脚本。Bindingsbindings=js.createBindings; //在map中获取和设置值的方法publicObjectget; //使用我们的name/value对(即javascript变量)Bindingsbindings=newSimpleBindings(defaults); //创建一个变量,用于存放脚本执行的内容ScriptContextcontext=newSimpleScriptContext(); //设置那些Bindings在Context中,使它们可读。但这样的变量定义的脚本不要放入我们的Map中context.setBindings(bindings,ScriptContext.GLOBAL_SCOPE); BufferedReaderin=newBufferedReader(newFileReader(filename)); Stringline; while((line=in.readLine())!=null){ line=line.trim(); if(line.length()==0)continue; //跳过空行if(line.charAt(0)==‘#‘)continue; //跳过命令intpos=line.indexOf(":"); if(pos==-1){ thrownewIllegalArgumentException("syntax:"+line); } Stringname=line.substring(0,pos).trim(); Stringvalue=line.substring(pos+1).trim(); charfirstchar=value.charAt(0); intlen=value.length(); charlastchar=value.charAt(len-1); if(firstchar==‘"‘lastchar==‘"‘){ //双引号引用的值为字符串defaults.put(name,value.substring(1,len-1)); } elseif(Character.isDigit(firstchar)){ //如果开始是一个数字try{ doubled=Double.parseDouble(value); defaults.put(name,value); } catch(NumberFormatExceptione){ //没有数字,是一个stringdefaults.put(name,value); } } elseif("true".equals(value)){ //处理布尔值defaults.put(name,Boolean.TRUE); } elseif("false".equals(value)){ defaults.put(name,Boolean.FALSE); } elseif("null".equals(value)){ //处理null值defaults.put(name,null); } elseif(firstchar==‘{ ‘lastchar==‘} ‘){ //如果值是在一对大括号之内,则执行javascript代码Stringscript=value.substring(1,len-1); Objectresult=engine.eval(script,context); defaults.put(name,result); } else{ //其它情况,刚好是一个字符串defaults.put(name,value); } } } //一个简单的类的测试程序publicstaticvoidmain(String[]args)throwsIOException,ScriptException{ Configurationdefaults=newConfiguration(); defaults.load(args[0]); Set
请问javaScript里面可以嵌套写java代码吗?
这样写是不行的,java是在
服务器端
运行的,
javascript
是在客户端运行的。你要在客户端运行
java程序
可以试试applet
在单独的js文件中如何嵌入java代码,谢谢!
可以使用jsp的脚本或表达式,如以下代码:
%
out.println(new java.uti.Data());
%
js中可以调用java代码吗
js不能直接调用java代码。
可以通过页面提交后台的方式,间接调用后台的服务java代码。
也可以通过ajax的方式,调用后台的服务java代码。
两种方式稍有差别,不过都是前后台的通信交互。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: js里面的java代码 javascript的代码
本文地址: https://pptw.com/jishu/1225.html