首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

求大神帮忙,JSP+Servlet 有关问题

2013-04-21 
求大神帮忙,JSP+Servlet 问题大神帮忙啊,简单介绍一下jsp核心内容如下:%@ page languagejava import

求大神帮忙,JSP+Servlet 问题
大神帮忙啊,简单介绍一下jsp核心内容如下:


<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>   
    <title>测试</title>   
  </head>
  
  <body>
  <form action="/test/testServlet" method="post">
    请在下面的文本区域,写一段代码,计算1*2*3*4*5的结果<br/>
    <textarea rows="8" id="context" ></textarea><br/>
    <input type="submit" value="提交代码">
    </form>
  </body>
</html>

怎么在servlet中将文本域中的代码执行,并获得它执行的结果,在后台打印出来。 servlet jsp web J2EE action
[解决办法]
可以考虑在servlet中调用cmd命令javac java
也可以找找有没有直接的库编译执行字符串形式的java文件
[解决办法]
Java 7 Applet Remote Code Execution

你上网查查相关资料吧,也许对你有帮助
[解决办法]
这样可以不?


<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>   
    <title>测试</title>   
  </head>
   
  <body>
      <form action="/test/testServlet" method="post">
        请在下面的文本区域,写一段代码,计算1*2*3*4*5的结果<br/>
        <textarea rows="8" id="context" >
        <%
        int i = 1*2*3*4;
        System.out.println(i);
        %>
        </textarea><br/>
        <input type="submit" value="提交代码">
    </form>
  </body>
</html>

[解决办法]
想实现一个类似“在线编程”的功能吗?

我支持一楼的想法。。。

因为代码提交的时候,一切早就都已经编译完了。

要把你当参数传的这一小段代码重新编译才行。
[解决办法]
      InputStream ins = null;;
       String[] cmd = new String[] { "cmd.exe", "/C", "ipconfig" };   
        try {
       
            Process process = Runtime.getRuntime().exec(cmd);
             ins = process.getInputStream(); //cmd 的信息


             
             BufferedReader reader = new BufferedReader(new InputStreamReader(ins));   
                String line = null;   
                while ((line = reader.readLine()) != null) {   
                    System.out.println(line);  //输出 
                } 
                
                int exitValue = process.waitFor();   
                System.out.println("返回值:" + exitValue);  
                process.getOutputStream().close(); //不要忘记了一定要关
                
        } catch (Exception e) {
            
            e.printStackTrace();
        } 

热点排行