呵呵,一个比较麻烦的方法:1、先把“&&”替换成 “and”把“||” 替换成“or”。类似的做一些处理。用replaceAll可以做到。2、然后写一个sql: String a="7>8 && 9<10";String strSQL = "select 2-1 as result where "+ a;结果拼出来的sql文为: select 2-1 as result where 7>8 and 9<10然后执行这个sql文 用rs = stmt.execQuery(strSQL) 然后判断有没有rs,用if(rs.next()),如果有,说明a的逻辑值为真,反之为假。
java zk.eval.Eval "7>8 && 9<10" 就OK了
acefr()没有数据库你不是死定了??呵呵
没有数据库只有把公式传给一个页面了,在页面上eval了再提交回来.acefr大哥你说呢?
just an idea; 首先将"7>8 && 9<10";放到 public class Test{ public static boolean test(){ return /*字符串放到这里*/ ; } } 存为Test.java,调用java.lang.Compiler编译成Test.class,然后调用Test.test();
String a="7>8 && 9<10";String strSQL = "select 2-1 as result where "+ a;结果拼出来的sql文为:
select 2-1 as result where 7>8 and 9<10然后执行这个sql文 用rs = stmt.execQuery(strSQL)
然后判断有没有rs,用if(rs.next()),如果有,说明a的逻辑值为真,反之为假。
就OK了
首先将"7>8 && 9<10";放到
public class Test{
public static boolean test(){
return /*字符串放到这里*/ ;
}
}
存为Test.java,调用java.lang.Compiler编译成Test.class,然后调用Test.test();
BeanShell是什么???
我沒有用過,能否詳細說明?