服务器端从客户端(浏览器)获得数据的方式有两种,即get和post.
想必楼主对http协议也有所了解,http的get方法是将你要传输的数据放在url后的,也就是我们常用的test.jsp?name=aaa&age=10这种格式,数据都是可以通过url就可以看到了,你在网页中的属性就能看到这个url,这是get方法,由于受到http协议的限制,这种方式传输数据有大小限制,1024,为了能够传输更多的数据,你可以采用post,post是将数据放到了http的Content中,这就不受http协议的影响了,而且传输的数据不能直接被看到(登陆的用户名和密码可不能用get哦)。大量的数据或是文件上在数据,都只能用post来传而且get方法提交的页面能够通过history.back()回退,但post的数据就不能,回退时告诉已经过期,应为你已经post出去了,就不能取回来了。
简单的说,get是通过http header来传输数据,有数量限制,而post则是通过http body来传输数据,没有数量限制.
servlet就是专门用来处理http请求的,所以对应不同数据传输方式的两种方法就是doGet()和doPost().
在里面直接写 html代码不能显示到页面上,不过可以用以下代码实现:
PrintWriter out=response.getWriter();
out.println("");
out.println("
你向服务器发请求提交数据只有 两种方式 Get或者是Post方式
服务器将根据你请求的方式作出响应。
至于你的问题是 Servlet的本身的问题 :
你在深入的了解下 Servlet吧 ,具体怎么讲我忘记了。
Java对最早对网站的支持都是 Servlet的, 包括页面的显示,他用 Servlet的内置 out对象来将文本输出然后供浏览器解析 。回头在多看看书只有自己理解了人们才能在给你将更多的要不你也就不理解了。
以下是参考 :
Java Servlet 与 JSP(JavaServer Pages) 的比较:
JavaServer Pages(JSP)是一种实现普通静态HTML和动态HTML混合编码的技术,JSP并没有增加任何本质上不能用Servlet实现的功能。但是,在JSP中编写静态HTML更加方便,不必再用println语句来输出每一行HTML代码。更重要的是,借助内容和外观的分离,页面制作中不同性质的任务可以方便地分开:比如,由页面设计者进行HTML设计,同时留出供Servlet程序员插入动态内容的空间。
二.javax.servlet.http提供的HTTP Servlet应用编程接口。
HTTP Servlet 使用一个 HTML 表格来发送和接收数据。要创建一个 HTTP Servlet,请扩展 HttpServlet 类, 该类是用专门的方法来处理 HTML 表格的 GenericServlet 的一个子类。 HTML 表单是由
你说的是doget()和dopost()吗?
根据html不同的请求方式,就会调用不同的方法--get请求则servlet调用doget(),post请求则调用dopost(),但是一般只写一个doget()或dopost(),另一个dopost()(或doget())再调用doget()(或dopost())。
。。。
两个方法作用相同,区别是用get时,request传参显示在地址栏,而post不显示。
里面写html的代码就能显示到页面上
不过要这么写:
request.setCharacterEncoding("utf-8");
response.setContentType("text/html");
response.setCharacterEncoding("utf-8");
PrintWriter out = response.getWriter();
out.println("");
out.println("");
out.println("
都能显示的
这样显示:
PrintWriter out = response.getWriter();
out.println("");
out.println("