码迷,mamicode.com
首页 > 编程语言 > 详细

四 java web考点

时间:2014-08-27 16:08:18      阅读:278      评论:0      收藏:0      [点我收藏+]

标签:des   blog   http   os   java   使用   io   strong   for   

一、GET和POST区别(参考Servlet&JSP学习笔记)

<form>中method属性默认为GET。

1、使用POST的情况

GET跟随URL之后,请求参数长度有限,过长的请求参数或文件上传这类大数据的操作,用POST。

GET请求参数会出现在地址栏,敏感信息或保密信息,用POST。

有些浏览器根据地址栏缓存数据,地址栏相同时直接通缓存中取得旧数据,不会向服务器发送请求,这里一般使用POST。

POST用于非幂等操作(如增删改)。

2、使用GET的情况

POST请求参数不会出现在地址栏,无法添加到浏览器的书签之中,希望用户按照不同的请求参数可以设置书签,用GET。

GET用于幂等操作(如查询)。

注:幂等操作指的是,只是取得数据,而不改变服务器上的数据。

二、解释一下什么是Servlet,并说说Servlet的生命周期和基本结构

1、Servlet概念(参考Servlet&JSP学习笔记)

  Servlet是一个JAVA类,通过web容器(如tomcat)的加载、初始化,受到容器的管理才成为一个Servlet。没有了容器,Servlet就只是一个JAVA类,无法响应客户端请求。

  Servlet运行在容器中,容器有JVM启动。每次请求到达,由容器开启一个线程,并决定由那个Servlet来处理该请求。如果多个请求到达,则启动多个线程,而不是重启JVM进程。所以大幅度减轻性能负担。

2、Servlet生命周期

Servlet的生命周期分为以下阶段:

(1)加载(实例化):启动web容器时,或第一次访问该Servlet时(默认)进行加载(实例化);

(2)初始化:实例化后,容器调用其init()方法进行Servlet初始化;

(3)处理请求:请求到达时,调用其service()方法。service方法自动调用与请求对应的doGet()或doPost()方法;

(4)结束:结束服务时(容器关闭时),容器调用其destroy()方法。

3、Servlet类写法

bubuko.com,布布扣

三、Servlet api中forward和redirect的区别(参考Servlet&JSP学习笔记)

1、RequestDispatcher的forward()方法——服务器端跳转

  request.getRequestDispatcher("some.do").forward(request,response);//相对URL

  forward()会将请求转发至指定URL,请求的转发在容器中进行,而非通过HTTP响应通知浏览器进行重定向(Redirect)。浏览器不知道请求被转发,因此地址栏不变。

  若打算访问应用程序WEB-INF中的文件,可以采用此法。

  这种方法比服务器端跳转高效,并且有助于隐藏实际链接,所以尽量使用此法。但有些情况,如需要跳转到其他服务器上的资源,就必须使用sendRedirect()。

 

2、HttpServletResponse的sendRedirect()方法——客户端跳转

  response.sendRedirect("http://openhome.cc");

  sendRedirect()可以要求浏览器重新请求另一个URL,又称为重定向(Redirect),使用时可以指定绝对URL或相对URL。这个方法会在回应中设置HTTP状态吗301以及Location标头,浏览器接收到这个标头后,会重新使用GET方法请求指定的URL(包含刚才请求的所有参数),因此地址栏会变。由于是利用HTTP状态码与标头重定向的,所以此方法必须在响应未确认输出前执行,否则抛异常。

 

四、JSP和Servlet的异同,两者之间有何联系

1、区别

  Servlet侧重于控制逻辑,主要用于java程序逻辑的定义,应避免在Servlet中直接产生页面输出(如直接编写HTML)。

  JSP是Servlet技术的扩展,本质上是Servlet,但JSP是java和HTML组合的一个.jsp文件,侧重于视图。

2、联系

  JSP会被web容器转译为Servlet的".java"源,编译为".class"文件,然后加载到容器中,所以最后提供服务的还是Servlet实例。

 

五、Request对象的主要方法有哪些?request.getAttribute()与request.getParameter()的区别

六、jsp有哪些内置对象?作用分别是什么?分别有什么方法?

七、jsp有哪些动作?作用分别是什么?(非重点)

八、jsp的常用指令

九、jsp中动态包含、静态包含的区别

十、两种跳转方式是什么,有什么区别?

十一、页面间对象传递的方法

 

十三、MVC

十四、编码

十五、实战

 

四 java web考点

标签:des   blog   http   os   java   使用   io   strong   for   

原文地址:http://www.cnblogs.com/seven7seven/p/3939460.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!