java web工程如何做成桌面版
?? ?大体分为以下几个步骤,一步步讲:
?
?? ?1,首先把正常的web工程打包成war包,使用eclipse的到处功能即可;
?
?? ?2,建立一个普通的java工程,建立一个含有main方法的启动类,使用嵌入式jetty启动war包工程;
?
?? ?启动类内容如下:
?
?
public static void main(String[] args) throws Exception {
// Jetty HTTP Servlet Server. ?
Server server = new Server();
BoundedThreadPool threadPool = new BoundedThreadPool();
?
// 设置线程池 ?
threadPool.setMaxThreads(100);
server.setThreadPool(threadPool);
?
// 设置连接参数 ?
Connector connector = new SelectChannelConnector();
?
// 设置监听端口 ?
connector.setPort(8080);
?
// 为服务设置连接器 ?
server.setConnectors(new Connector[] { connector });
WebAppContext context = new WebAppContext();
?
// 设置contextPath如:http://localhost:8000/test... ?
context.setContextPath("/");
context.setAttribute("jetty.home", ".");
?
// 启动的war包的位置 ?
context.setWar(Main.class.getClassLoader().getResource("h2.war").toString());
server.addHandler(context);
server.setStopAtShutdown(true);
server.setSendServerVersion(true);
server.start();
?
// 将服务添加到连接池中 ?
server.join();
?
}
?
3,使用fat jar 打包工具进行打包,具体使用方法参见http://hi.chinaunix.net/?uid-21326783-action-viewspace-itemid-39242,会形成一个独立的jar包(含有引用j的ar包),然后执行这个文件,就可以启动服务器了。
?
剩下的事情就是把jre也打包进去,做成一个exe文件了,未完待续。
?
4,打包参见http://hi.baidu.com/jsoftware/blog/item/c483eadd2d98b5315882dde6.html?及附近的相关文章。
?
完了。
1 楼 javachs 2010-09-06 这个不错,用tomcat可以吗 2 楼 xihuyu2000 2010-09-06 没有试验tomcat,应该大同小异吧。个人认为jetty在嵌入式方便优于tomcat