问题描述
现任公司老大给个艰巨任务,java开发的web不用tomcat(其他的都不用),就是基于http协议,自己搞个端口,监听。拦截用户请求的数据,并在后台处理,让后返回个HTML页面到浏览器里,响应给用户。哪位大虾告诉我该如何实现啊,现在是一点头绪都没有。一直都是把WEB项目配置在TOMCAT下的啊。哎,不能怪我们老大折磨人啊,要我了解底层的东西!急,急。。谢谢啦!
解决方案
解决方案二:
自己写个类似tomcat的小型框架呗,呵呵帮顶
解决方案三:
用socket实现http协议网上搜索一下很多的
解决方案四:
从网上找个基于socket的编程实现方式,看看
解决方案五:
擦。。。这不为难人吗?得从rfc重新看起。。。
解决方案六:
看看tomcat或者jetty的源码不就知道了啊
解决方案七:
JAVAWEB开发不放在WEB/EJB容器里放哪?
解决方案八:
eclipse的jetty插件远程的方式启动一个项目:先监听4000端口,在启动服务,我们这个公司是这么干的。
解决方案九:
额,晕,还有这样的哦
解决方案十:
奇怪的需求,想知道为什么有这样的需求。帮顶goodluck
解决方案十一:
好为难,用socket呢。。
解决方案十二:
光一两个人是实现不了这任务的,这需要一批人!估计是你老板看你太闲了!
解决方案十三:
没事找事,他还不如让你们用记事本编程呢?
解决方案十四:
还真没试过web开发不用tomcat的,真有想象力!
解决方案十五:
引用11楼bao110908的回复:
光一两个人是实现不了这任务的,这需要一批人!估计是你老板看你太闲了!
呵呵,必须的。
解决方案:看下网络编程相关的资料
解决方案:造轮子
解决方案:额……有现成的不用?是不是你们老大想要让你学东西呀~哈哈,是的话说明他挺看重你的,你就去学呗!
解决方案:估计想要你了解WEB容器的实现原理吧
其他方案:
1.如何开设端口监听?2.怎么在后台拦截用户在页面输入的信息,假如HTTP://WWW.BAIDU.COM/index.html?id=1?3.如何根据用户请求把相应结果通过静态的HTML返回给客户的浏览器?我刚进公司,还在实习啊(才来2个礼拜),小公司没那么多人手啊,我一个人搞,就今天一天时间了!!!不需要时间TOMCAT那么强大的功能,只要处理些简单的用户请求,然后响应给用户个页面。小弟新人,望各位大虾赐教啊!谢谢啦!大家不要吝啬啊。。。。
解决方案:有个玩意叫做http.jar,可以满足你的要求,是sun写的,可以去搜搜
解决方案:
解决方案:这儿有简单例子
解决方案:直接给他彪起来,老子就是要用tomcat你不用,你来搞
解决方案:如果是jdk1.5,可以直接下载http.jar
解决方案:各位说的都有道理啊。我先用wj594594520说的SOCKET类试试。然后再看下TICMY说的HTTP.JAR谢谢各位啦,大家继续讨论哈!
解决方案:额,大牛啊TIMCY你自己写的HTTP.JAR!你直接传个给我多方便啊,
解决方案:http://kayo.javaeye.com/blog/358313大牛们看下是不是像这样的,还缺点什么吗?
解决方案:他写的是Http客户端,不是服务器如果你只想使用最简单的HttpServer,可以使用JDK1.6中自带的HttpServerserver=com.sun.net.httpserver.HttpServer.create();server.start();这个功能就比较简单,不过你领导是吃饱了撑的。自己写一个Web服务器根本不是一个简单的活。
解决方案:靠,你们老大无敌这样的的话,就只有两点,一个是找下socket实现监听借口,二一个就是要解析java代码你就顺着这个思路来吧。如果搞定了,发上来看看,大家学习下
解决方案:28这位兄弟,能给个详细点的示例吗?额,从没接触过这方面.哎,我们老大说了,TOMCAT不稳定啊,老让客户重启系统会很反感!。。。怎么实现来!
解决方案:兄弟们看下下面的两个有啥用啊?packagecom.test;importjava.net.*;importjava.io.*;importjavax.swing.*;publicclassServer{publicServer()throwsException{ServerSocketsocket=newServerSocket(1000);//在1000端口监听while(true){Sockets=socket.accept();while(!s.isConnected()){}newProcessor(s).start();}}publicstaticvoidmain(Stringargs[])throwsException{newServer();}}classProcessorextendsThread{Sockets=null;publicProcessor(Sockets)throwsException{this.s=s;}publicvoidrun(){try{ObjectInputStreamobj=newObjectInputStream(s.getInputStream());JOptionPane.showMessageDialog(null,(String)obj.readObject());obj.close();}catch(Exceptione){}}}packagecom.test;importjava.io.IOException;importjava.io.InputStream;importjava.net.ServerSocket;importjava.net.Socket;importjava.util.Arrays;publicclasstest{publicstaticvoidmain(String[]args)throwsIOException{ServerSocketserver=newServerSocket(2588);//端口,你是服务端while(true){Socketsocket=server.accept();finalInputStreamis=socket.getInputStream();newThread(newRunnable(){publicvoidrun(){byte[]bs=newbyte[128];try{while(is.read(bs)!=-1){//这里的bs就是数据了System.out.println(Arrays.toString(bs));}}catch(IOExceptione){}}}).start();}}}
解决方案:引用30楼lpc19880721的回复:
28这位兄弟,能给个详细点的示例吗?额,从没接触过这方面.哎,我们老大说了,TOMCAT不稳定啊,老让客户重启系统会很反感!。。。怎么实现来!
??你一个人简单的搞两天,弄出来的东西比tomcat还稳定?
解决方案:我写和老大说了,不过没说服他!所以.......只好.........写..啦..~~~~~~!
解决方案:你老大真是NC,Tomcat本身非常稳定。是自己代码有问题才会导致需要重启。最后这个项目做出来以后肯定是,用Tomcat可能2天重启一次,用自己写的一天启动2次或以上
解决方案:额,恩,啊。34楼语言很犀利啊。我就当是学东西了,呵呵!那个24楼帅哥在吗?你给的HTTP.JAR如何查看源码?
解决方案:http.jar源码:http://www.java2s.com/Open-Source/Java-Document/6.0-JDK-Modules-com.sun/net/com.sun.net.httpserver.htmjavadoc:http://download.oracle.com/javase/6/docs/jre/api/net/httpserver/spec/com/sun/net/httpserver/package-summary.html示例:http://www.java2s.com/CN/Code/Java/Network-Protocol/MinimalHTTPServerbyusingcomsunnethttpserverHttpServer.htm
解决方案:人家tomcat花了多少精力、时间、和人力,才整出来的?你要自己来开发个?
解决方案:靠强你老大真强服务器都敢让人搞无语中…………不过ticmy的方法也不错
解决方案:好激动啊,我看到希望了!我现在在浏览器输入自己的项目可以看到我自己输出的一句话了!激动死了!谢谢ticmy啦。等我整理好了,那出来大家帮忙看看哈!
解决方案:该回复于2011-02-26 09:55:06被版主删除
解决方案:有创意!
解决方案:未完,,,待续啊、现在老大让我先做C/S系统的。做完了再回来搞B/S的这个、。
解决方案:那socket就是最简单的监听端口、等待访问(Sockets=socket.accept();)、用户访问时开新线程……多线程的处理很麻烦。当提升自己的技能吧,反正是老大安排做的,又有工资拿,何乐而不为o(∩_∩)o
解决方案:该回复于2011-02-28 16:15:11被版主删除
解决方案:兄弟你是北大青鸟的吗。。。
解决方案:做javaapplication开发的朋友如果考虑新机会可以联系我的。lyysdw@hotmail.com欢迎加我的msn