jsp或java调用服务器exe显示在jsp界面上

jsp或java调用服务器exe显示在jsp界面上,第1张

改成out.println(line)

就通过jsp返回给客户端了哈,不过得执行完才有返回结果,所以你用exec("cmd /c start ipconfig")试试得到ip地址返回到网页看看吧,下面是jsp文件的程序部分。

<%

try {

Process p = Runtime.getRuntime().exec("ipconfig")

InputStream is = p.getInputStream()

BufferedReader reader = new BufferedReader(new InputStreamReader(is))

String line

while ((line = reader.readLine()) != null) {

%>

out.println(line)

<%

}

p.waitFor()

is.close()

reader.close()

p.destroy()

} catch (Exception ex) {

ex.printStackTrace()

}

%>

JSP的执行过程(1)客户端发出Request(请求);(2)JSPContainer将JSP转译成Servlet的源代码;(3)将产生的Servlet的源代码经过编译后,并加载到内存执行;(4)把结果Response(响应)至客户端。在执行JSP网页时,通常可分为两个时期:转译时期(TranslationTime)和请求时期(RequestTime)转译时期:JSP网页转译成Servlet类。请求时期:Servlet类执行后,响应结果至客户端。注:转译期间主要做了两件事情:将JSP网页转译为Servlet源代码(.java),此段称为转译时期(Translationtime);将Servlet源代码(.java)编译成Servlet类(.class),此段称为编译时期(Compilationtime)。.jsp不是你想象的简单htmljsp页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。所以不起服务器,是不能运行的。

详细一点,再给个简单例子如下:

String commandString = request.getParameter( "Command ")//获得命令行

Process cmd = Runtime.getRuntime().exec(commandString)//执行命令

BufferedReader bufferedReader = new BufferedReader( //获得命令行的输出流

new InputStreamReader(cmd.getInputStream()), 4096)

String stringLine

while((stringLine = bufferedReader.readLine()) != null) {

out.println( " <nobr>" + stringLine + " </nobr><br>")//将命令行的输出写到页面

}

bufferedReader.close()//关闭输出流


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/538573.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-06-25
下一篇2023-06-25

发表评论

登录后才能评论

评论列表(0条)

    保存