浏览 1201 次
锁定老帖子 主题:小型WEB服务器程序解析2
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-02-29
后面的请求字符串(queryString)是需要进行解析的 那么我们可以先把解析这个字符串的方法完成: Private void parseParameter(String queryString){ Try{ //传入的两个参数是需要解析的字符串和解析的字符 java.util.StringTokenizer stk=new StringTokenizer (queryString,"&"); //把解析后id字符串装入到一个Map中间,形成一个名值对 While(stk.hasMoreElements()){ String temp=stk.nextToken(); String tempArray[]=temp.split("="); If(tempArray==2) { paraMap.put(tempArray[0],tempArray[1]);} } } Catch(Exception e){} /** 存放请求参数的表 */ private Map<String, String> paraMap = new java.util.HashMap(); } 这个方法就完成了把请求字符串解析:Public staticString replace(String resourceStr,String fromStr,Strinf toStr) { java.lang.String destStr=""; Int intFromLen=fromStr.length(); Int intPos; While((intPos=resourceStr.indexOf(fromStr))!=-1){ strDest = strDest + strSource.substring(0, intPos); strDest = strDest + strTo; strSource = strSource.substring(intPos + intFromLen); } strDest =strDest +strSource ; Return strDest ; } 技巧:最后我们可以在HttpServer启动的时候 直接用一个外部程序来启动浏览器,只需要在启动服务器后加上一段代码,所以在MAIN()里面可以这样来写: HttpServer server=new HttpServer (); Server.start(); System.out.println("simple server is starting......"); Try{ java.lang.Process startIEProcess=Runtime.geRuntime.exc("Explorer http://localhost:"+port);} Catch(Exception e) { ef.printStackTrace(); } 总结:这个简单的WEB服务器让我在写代码的时候 更加深入的理解的面向对象的思路,其实在每完成一个功能实现的时候 都可以从代码中体会到语法 方法 思路的解析 我在分析问题的时候 思路越来越清晰 虽然还不够严谨 但是慢慢会更好! 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |