摘要:
前面提到了,web服务器响应一般由状态行,一个或多个响应报头(其中一个必须为Content-Type),一个空行和关联文档组成,要让servlet发挥最大的效力,你不仅需要知道如何生成文档(事实上以后都是用jsp来完成这个工作的),更重要的是要知道 有效地利用状态行和响应报头如前所述,HTTP响应报头的设置,经常是和状态代码的设置结合一起的,例如文档发生移动的状态代码300到307都伴随一个Location头,401(Unauthorized)代码经常包括伴随WWW-Authenticate的报头。即使在设置正常的状态代码时,指定报头也是十分重要的。响应报头可以用来:指定cookie,提供页面 阅读全文
摘要:
前面已经看到,来自浏览器的请求,由一个HTTP命令(GET或POST),0或多个请求报头,一个空行以及一些查询数据(POST请求)组成:GET /servlet/SomeName HTTP/1.1Host: ...Header2: ......HeaderN:(Blank Line空行)......(查询数据)web服务器对请求的响应,一般由一个状态行,一些响应报头,一个空行和相应的文档构成,典型的响应形式如下:HTTP/1.1 200 OK (状态行)Content-Type: text/htmlHeader2: ......HeaderN: ...(Blank Line 空行)<!D 阅读全文
摘要:
创建高效的servlet的关键之一,就是要了解如何操纵HTTP超文本传输协议。请求报头是指浏览器发送到服务器的HTTP信息,它不同于前面提到的表单数据,它是有浏览器间接设定的的。一个典型的HTTP请求如下,它可能是用户向位于http://www.somebookstore.com/servlet/Search的servlet提交书籍搜索时产生的:GET /servlet/Search?keywords=servlets+jsp HTTP/1.1Accept: image/gif, image/jpg, */*Accept-Encoding: gzipConnection: Keep-Alive 阅读全文
摘要:
常常会看到这样的URL:http://host/path?user=Marty+Hall&origin=bwi&dest=sfo它是服务器程序从web页面获取信息的最常见形式----表单数据跟在url后,GET请求即采用这种形式,表单数据也可以在单独的行里发送(POST请求)topics:单个请求参数的读取全部请求参数的读取缺失和异常数据的处理过滤请求参数中的特殊字符用请求参数的值自动填充数据对象表单提交不完整的应付1,在servlet中读取表单数据1)单个值的读取getParameterrequest.getParameter("Param1"),不管数据 阅读全文
摘要:
3.1,servlet的基本结构 1 import java.io.*; 2 import javax.servlet.*; 3 import javax.servlet.http.*; 4 5 6 public class ServletTemplate extends HttpServlet { 7 public void doGet(HttpServletRequest request, 8 HttpServletResponse response) 9 throws ServletException, IOException {10 11 // Use "request&qu 阅读全文
摘要:
1,使用系统的类这里举了个例子,使用GregorianCalendar类和Calendar类来写日历日期方面的应用View Code 1 import java.util.*; 2 3 public class CalendarTest 4 { 5 public static void main(String[] args) 6 { 7 // construct d as current date 8 GregorianCalendar d = new GregorianCalendar(); 9 10 int today = d.get(Calendar.DAY_OF_MONTH);11 i 阅读全文
摘要:
1,输入输出:1) 从控制台读取输入Scanner in = new Scanner(System.in);附录:也可以去看看Scanner的其他构造函数:构造方法摘要Scanner(Filesource) 构造一个新的 Scanner,它生成的值是从指定文件扫描的。Scanner(Filesource, StringcharsetName) 构造一个新的 Scanner,它生成的值是从指定文件扫描的。Scanner(InputStreamsource) 构造一个新的 Scanner,它生成的值是从指定的输入流扫描的。Scanner(InputStreamsource, Stringchars 阅读全文
摘要:
在项目里面用到的,在一个文件夹下找到所有的msml格式的文件,用String返回它们的绝对路径,都放在一个list里。文件夹下可能还有文件夹,msml文件可能放在任何一级的文件夹下,这里实际上写了一个最基本的递归文件夹去找某个符合要求的选项的方法。package meta.util;import java.io.File;import java.util.ArrayList;public class ScanDir { private ArrayList<String> filelist = new ArrayList<String>();//放在一个list中 pub 阅读全文
摘要:
1,安装Myeclipse和Tomcat在Tomcat安装目录的conf下有个server.xml,可以指定服务器端口。2,不要将服务器的部署目录作为开发场所,应该在单独的目录下开发3,如何用Myeclipse创建servlet项目并进行部署:(部署完后在Myeclipse的workplace和Tomcat的webapps下各有一份项目)如果不用myeclipse,则写一个servlet,编译,把class放到WEB-INF的classes下面,再修改web.xml,很麻烦别人给的步骤:1.创建一个“web project”,假设名字为A。 2.右键单击“src”,————>new —— 阅读全文
摘要:
1.不要看到别人的回复第一句话就说:给个代码吧!你应该想想为什么。当你自己想出来再参考别人的提示,你就知道自己和别人思路的差异。2.初学者请不要看太多太多的书那会误人子弟的,先找本系统的学,很多人用了很久都是只对部分功能熟悉而已,不系统还是不够的。3.看帮助,不要因为很难而自己是初学者所以就不看;帮助永远是最好的参考手册,虽然帮助的文字有时候很难看懂,总觉得不够直观。4.不要被对象、属性、方法等词汇所迷惑;最根本的是先了解最基础知识。5.不要放过任何一个看上去很简单的小问题--他们往往并不那么简单,或者可以引伸出很多知识点;不会举一反三你就永远学不会。6.知道一点东西,并不能说明你会写脚本,脚 阅读全文