【简答题】JavaWeb必问8道简答题

发布于 2023-01-12 15:35:54

1、说一说Servlet生命周期

servlet的生命周期是初始化(init)、服务(service)、销毁(destroy)


1.初始化(init):当第一次访问Servlet时调用init方法进行初始化,只初始化一次


2.服务(service):方法被调用时调用service方法进行服务,在项目启动期间可以进行多次服务


3.销毁(destory):当服务器关闭时调用destory方法进行销毁。只销毁一次


2、什么是jsp?jsp和Servlet有什么区别?

Servlet是服务器端的程序


JSP是服务器页面程序


JSP本质上就是一个Servlet,在访问jsp时,在服务器端会将jsp先转换成servlet,再将生产的servlet的结果响应给浏览器。


jsp相当于html页面中内嵌Java代码,侧重页面显示;Servlet是中书写Java代码,侧重逻辑控制;


3、Servlet接口中有哪些方法?


1.init(ServletConfig):初始化方法,第一次请求前执行,完成servlet初始化工作


2.service(ServletRequest,ServletResponse):执行方法,一次请求执行一次。


3.destroy():销毁方法,Servlet对象应该从服务中被移除的时候,容器会调用该方法进行销毁操作


4.getServletConfig():获得ServletConfig配置对象,包括初始化参数等。


5.getServletInfo():获得Servlet描述,一般没有用。


4、什么情况下调用doGet()和doPost()?


1、doGet():地址栏url方式访问、超链接访问、以及form表单中的method属性值为get方式访问,则调用doGet()方法

2、doPost():form表单中的method属性值为post方式访问,则调用doPost()方法

5、get请求和post请求有何区别

1. 表现形式:get在url中拼凑请求参数。Post请求参数在请求体中;

2. 安全性:get请求参数追加在路径上,可见不安全,post请求参数在请求体中,一般人不可见,较安全。

3. 数据大小:get提交数据有限,post无限。

6、forward和redirect的区别


1.地址栏是否改变:forward浏览器端网址不会发生变化,redirect浏览器端地址会变成;


2.是否可共享请求参数:forward是转发,属于同一个请求,request域中的数据可以传递;redirect是两次请求,request域中的数据不能传递;


3.是否可站外跳转:forward一般用于网站内部跳转,redirect可在站内跳转,也可跳转到其它网站。


7、JSP九大内置对象


1.request:请求对象


2.response:响应对象


3.session:回话对象


4.pageContext:页面上下文对象


5.application:类型是ServletContext,表示servlet上下文对象,可以在整个web项目中共享资源。


6.out  输出对象


7.page JSP网页本身


8.config Servlet的配置对象


9.exception 异常对象


8、讲解JSP中的四种作用域。


application:在当前web项目中有效

session:在当前会话中有效

request:在当前请求中有效

page:在当前页面有效





关注公众号,了解更多it技术(it问答网

0 条评论

发布
问题