日期:2014-05-20  浏览次数:20821 次

怎样将字符串转换为可执行的java语句(在线等待)
我想将字符串转换为可执行的java语句或表达式

如,  
  String   aa   =   new   String( "aa ")
这条语句存储在数据库的表中.

我想将其直接转换为可执行的java代码,   请问如何实现

小弟在线等待,请高手指点~~~~~~~再次谢过

------解决方案--------------------
没看明白什么意思,帮顶
------解决方案--------------------
貌似不行
------解决方案--------------------
呵呵,如果可以这样的话,java就是动态语言了。
------解决方案--------------------
java能运行的是.class(或者变态一点,你直接输入二进制码也行),你从数据库中读出来,这是源代码阿,你要人工编译为二进制代码,然后写入你的.class中,最后重新加载这个.class文件吗?可是就算重新加载也不行啊。
------解决方案--------------------
JAVA是需要先编译再执行的啊,只是存上代码有什么用啊,在数据库的表当中也不会经你生成.class文件

------解决方案--------------------
比较困难,需要做一个编译器了...
不过如果是javascript代码,java是可以执行的
------解决方案--------------------
不可能的吧...看明白你的意思了

你的意思是把些此执行语句放在数据库中....读出来..然后执行它??

感觉不可能实现...因为读出来的那句都没有经过编译..JVM无法识别
------解决方案--------------------
String s= "String aa = new String( "aa ") ";

s.toJava();

哈哈 (纯属搞笑)
------解决方案--------------------
就我目前所知,我认为Java不适合这种事情。
也许可以用以下办法,但我没测试过,也绝对绝对不推荐,如果楼主感兴趣,可以试试。

把类的代码放在字符串里,存在一个文件里(路径要设好),当然,文件名要根据字符串中类的名字来设置。然后用java.lang.Runtime.exec()执行javac和java命令,执行代码。
------解决方案--------------------
好象不大可能,没有编译,虚拟机不会运行