1、jsp和servlet有什么区别?
jsp是一种基于java的服务器端Web页面设计技术,用于创建含有动态生成内容的Web页面。servlet是运行在Web服务器端的小程序,是jsp出现前java中用于构建Web应用的一项很重要的技术。实际上,jsp页面运行前会由jsp容器将其翻译成servlet,真正在服务器端运行的是servlet。
servlet的应用逻辑是在java文件中,并且完全从表示层的html中分离出来,而JSP得情况是java和html可以组合成一个扩展名为jsp的文件。jsp侧重于视图,servlet主要用于控制逻辑。(此处摘于答案)
2、jap有哪些内置对象?作用分别是什么?
- request(请求对象):接收客户端发送来的请求消息。
- response(响应对象):向客户端发送数据。
- session(会话对象):记录客户端和服务器端会话信息。
- application(应用程序对象):用于多个程序或者多个用户之间共享数据。
- out(输出对象):向客户端发送数据。
- page(页面对象):指jsp页面本身
- config(配置对象):用于获取配置信息。
- exception(异常对象):用于访问异常对象。
- pageContext(页面上下文对象):提供了对jsp所有对象和命名空间的访问。
3、jsp的四种作用域?
- page:代表一个页面相关的对象和属性。
- request:代表与客户端发出的一个请求相关的请求和属性。一个请求可能跨越多个页面,设计多个web组件,需要在页面显示的临时数据应可以置于此作用域。
- session:代表与某个用户与服务器建立的一次会话相关的对象和属性。跟某个用户相关的数据应该放在用户自己的session中。
- application:代表整个web应用程序相关的对象和属性,它实质上是跨域整个web应用程序,包括多个页面、请求和会话的一个全局作用域。
4、session和cookie的区别?
cookie存储在客户端,session存储在服务器端。
5、如果客户端禁止cookie,session还能用吗?
可以使用,session只是依赖cookie存储sessionid,如果cookie被禁用了,可以使用URL中添加sessionid的方式保证session能正常使用。