资源简介
Java源文件在线编辑, 并编译运行, 输出运行结果示例

代码片段和文件信息
package com.ding.javarun;
import java.io.BufferedReader;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.io.PrintWriter;
import java.io.Writer;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.net.InetSocketAddress;
import java.net.URI;
import java.net.URLDecoder;
import java.nio.charset.Charset;
import java.util.Arrays;
import java.util.HashMap;
import java.util.linkedList;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import javax.tools.JavaCompiler;
import javax.tools.JavaCompiler.CompilationTask;
import javax.tools.SimpleJavaFileobject;
import javax.tools.StandardJavaFileManager;
import javax.tools.ToolProvider;
import com.sun.net.httpserver.HttpExchange;
import com.sun.net.httpserver.HttpHandler;
import com.sun.net.httpserver.HttpServer;
/**
* Java online executor.
* Your can post simple Java source code to server compile and run it at remote server!
*
* How to show result:
* 1. put JDK/lib/tools.jar to your JDK/jre/lib folder!!!
* 2. run the JavaSourceHttpServer.main() to start up server
* 3. http://localhost:8080/coder
* 4. write your java source code and submit it to server you‘ll get the compile and execute result!
*
* @author David Ding
* @email dingxw92@foxmail.com
*
*/
public class JavaSourceHttpServer {
private static final int PORT = 8080;
private static final String FLAG_RESULT = “flag_result“;
private static final String UTF8 = “utf-8“;
private static Charset UTF8_CS;
private static StringBuilder HTML_WELCOME;
private static StringBuilder HTML_EXECUTOR;
public static void main(String[] args) throws Exception {
Locale.setDefault(Locale.US); // set environment as English
UTF8_CS = Charset.forName(UTF8); // set all the character code as UTF-8
HTML_WELCOME = loadHtml(“welcome.html“); // welcome HTML page your can input your java source code here
HTML_EXECUTOR = loadHtml(“result.html“); // here show you the online java source execute result.
HttpServer server = HttpServer.create(new InetSocketAddress(PORT) 0); // listening on port
server.createContext(“/coder“ new WelcomeHandler()); // coder/welcome page
server.createContext(“/result“ new ExecutorHandler()); // executor/result page
server.start();
System.out.println(“********************************“);
System.out.println(“** Java HTTP server startup **“);
System.out.println(“********************************“);
}
/**
* Load the template HTML page
* @param html file
* @return
* @throws IOException
*/
private static StringBuilder loadHtml(String html) throws IOException {
File htmlFile = new File(html);
if (!htmlFile.exists()) {
htmlFile = new File(“src/“ + html);
}
if (!h
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 232 2017-02-03 09:26 JavaOnlineRunner\.classpath
文件 6 2017-02-03 09:26 JavaOnlineRunner\.gitignore
文件 392 2017-02-03 09:26 JavaOnlineRunner\.project
文件 1793 2017-02-03 14:15 JavaOnlineRunner\bin\com\ding\javarun\JavaSourceHttpServer$ExecutorHandler.class
文件 1381 2017-02-03 14:15 JavaOnlineRunner\bin\com\ding\javarun\JavaSourceHttpServer$StringSourceJavaob
文件 1264 2017-02-03 14:15 JavaOnlineRunner\bin\com\ding\javarun\JavaSourceHttpServer$WelcomeHandler.class
文件 9205 2017-02-03 14:15 JavaOnlineRunner\bin\com\ding\javarun\JavaSourceHttpServer.class
文件 438 2017-02-03 13:40 JavaOnlineRunner\bin\result.html
文件 540 2017-02-03 13:55 JavaOnlineRunner\bin\welcome.html
文件 9402 2017-02-03 14:15 JavaOnlineRunner\src\com\ding\javarun\JavaSourceHttpServer.java
文件 438 2017-02-03 13:40 JavaOnlineRunner\src\result.html
文件 540 2017-02-03 13:55 JavaOnlineRunner\src\welcome.html
目录 0 2017-02-03 13:55 JavaOnlineRunner\bin\com\ding\javarun
目录 0 2017-02-03 10:36 JavaOnlineRunner\src\com\ding\javarun
目录 0 2017-02-03 13:55 JavaOnlineRunner\bin\com\ding
目录 0 2017-02-03 09:24 JavaOnlineRunner\src\com\ding
目录 0 2017-02-03 13:55 JavaOnlineRunner\bin\com
目录 0 2017-02-03 09:24 JavaOnlineRunner\src\com
目录 0 2017-02-03 13:55 JavaOnlineRunner\bin
目录 0 2017-02-03 10:33 JavaOnlineRunner\src
目录 0 2017-02-03 09:26 JavaOnlineRunner
----------- --------- ---------- ----- ----
25631 21
相关资源
- 微博系统(Java源码,servlet+jsp),适
- java串口通信全套完整代码-导入eclip
- jsonarray所必需的6个jar包.rar
- 三角网构TIN生成算法,Java语言实现
- java代码编写将excel数据导入到mysql数据
- Java写的cmm词法分析器源代码及javacc学
- JAVA JSP公司财务管理系统 源代码 论文
- JSP+MYSQL旅行社管理信息系统
- 推荐算法的JAVA实现
- 基于Java的酒店管理系统源码(毕业设
- java-图片识别 图片比较
- android毕业设计
- java23种设计模式+23个实例demo
- java Socket发送/接受报文
- JAVA828436
- java界面美化 提供多套皮肤直接使用
- 在线聊天系统(java代码)
- 基于Java的图书管理系统807185
- java中实现将页面数据导入Excel中
- java 企业销售管理系统
- java做的聊天系统(包括正规课程设计
- Java编写的qq聊天室
- 商店商品管理系统 JAVA写的 有界面
- JAVA开发聊天室程序
- 在linux系统下用java执行系统命令实例
- java期末考试试题两套(答案) 选择(
- JAVA3D编程示例(建模、交互)
- Java 文件加密传输
- java做的房产管理系统
- 基于jsp的bbs论坛 非常详细
评论
共有 条评论