前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JavaWeb相关面试题!

JavaWeb相关面试题!

作者头像
框架师
发布2019-09-19 17:08:43
5900
发布2019-09-19 17:08:43
举报
文章被收录于专栏:墨白的Java基地墨白的Java基地
  • 简述Servlet和JSP的关系

答∶JSP是以另外一种方式实现的Servlet,Servlet是JSP的早期版本,在JSP中,更加注重页面的表现,而在Servlet中则更注重业务逻辑的实现。

因此,当编写的页面显示效果比较复杂时,首选是JSP。或者在开发过程中,HTML代码经常发生变化,而Java代码则相对比较固定时,可以选择JSP。而我们在处理业务逻辑时,首选则是Servlet。 同时,JSP只能处理浏览器的请求,而Servlet则可以处理一个客户端的应用程序请求。因此,Servlet加强了Web服务器的功能。

  • 简述Servlet的生命周期。(企业笔试题)

答∶Servlet运行机制和Applet类似,Servlet是载服务器端运行的,但是Applet是在客户端运行的。Servlet是javax.servlet包中HttpServlet类的子类,由服务器完成该子类的创建和初始化。

Servlet的生命周期主要由3个过程组成。

1、init()方法:服务器初始化Servlet。

2、service()方法:初始化完毕,Servlet对象调用该方法相应客户的请求。

3、destroy()方法:调用该方法消灭Servlet对象。

其中,init()方法只在Servlet第一次被请求加载的时候被调用一次,当有客户再请求Servlet服务时,Web服务器将启动一个新的线程,在该线程中,调用service方法相应客户的请求。

  • jsp有哪些内置对象?作用分别是什么?

答∶JSP共有以下9种基本内置组件(可与ASP的6种内部组件相对应):

request

用户端请求,此请求会包含来自GET/POST请求的参数

response

网页传回用户端的回应

pageContext

网页的属性是在这里管理

application servlet

正在执行的内容

config servlet

构架部件

session

与请求有关的会话期

out

用来传送回应的输出

page JSP

网页本身

exception

针对错误网页,未捕捉的例外

  • jsp有哪些动作?作用分别是什么?

答∶JSP共有以下6种基本动作

jsp:include

在页面被请求的时候引入一个文件。

jsp:useBean

寻找或者实例化一个JavaBean。

jsp:setProperty

设置JavaBean的属性。

jsp:getProperty

输出某个JavaBean的属性。

jsp:forward

把请求转到一个新的页面。

jsp:plugin

根据浏览器类型为Java插件生成OBJECT或EMBED标记

  • MVC的各个部分都有那些技术来实现?如何实现?

答∶MVC是Model-View-Controller的简写。"Model" 代表的是应用的业务逻辑

(通过JavaBean,EJB组件实现), "View" 是应用的表示面(由JSP页面产生),

"Controller" 是提供应用的处理过程控制(一般是一个Servlet),通过这种设计模型把应用逻辑,处理过程和显示逻辑分成不同的组件实现。这些组件可以进行交互和重用。

  • 转发和重定向的区别

答∶

forward方式:request.getRequestDispatcher("/somePage.jsp").forwardrequest, response);

redirect方式:response.sendRedirect("/somePage.jsp");forward是服务器内部重定向, 程序收到请求后重新定向到另一个程序,客户机并不知道;redirect则是服务器收到请求后发送一个状态头给客户,客户将再请求一次,这里多了两次网络通信的来往。当然forward也有缺点,就是forward的页面的路径如果是相对路径就会有些问题了。

forward 会将 request state , bean 等等信息带往下一个 jspredirect 是送到 client 端后再一次 request ,所以资料不被保留.使用 forward 你就可以用 getAttribute() 来取的前一个 jsp 所放入的 bean 等等资料

  • 使用HTTP协议将客户端的请求传送到服务器端有哪两种方式?请简述它们的区别

答∶1) get是从服务器上获取数据,post是向服务器传送数据。

2) 在客户端,Get方式在通过URL提交数据,数据在URL中可以看到;POST方式,数据放置在HTML HEADER内提交。

3) 对于get方式,服务器端用request.getQueryString()可以获取GET请求参数的变量值,对于post方式,服务器端用request.getParameter获取提交的数据。

4) GET方式提交的数据最多只能有1024字节,而POST则没有此限制。

5) 安全性问题。正如在(1)中提到,使用 Get 的时候,参数会显示在地址栏上,而 Post 不会。所以,如果这些数据是中文数据而且是非敏感数据,那么使用 get;如果用户输入的数据不是中文字符而且包含敏感数据,那么还是使用 post为好。

  • jsp主要内置对象有?

答∶

request

response

out

exception

session

application

config

pageContext

page

  • 请简述Cookie, Session 和Application它们的区别

答∶1) Cookie会在客户端硬盘上创建Cookie文件

2) Session大部分情况下会在服务器端硬盘上写入Cookie文件

3) Cookie安全性最低

4) Application 表示Servlet上下文环境,在整个WEB应用中只有一个Application对象,用于存储些全局性的数据

  • 三个Statment区别,用法

答∶Statment,基本的;PreparedStatement是可编译的,提高效率,callablestatment,存储过程

  • 什么是mvc模式?

答∶是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。

模型

model

视图

view

控制器

controller

Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。通常模型对象负责在数据库中存取数据。

View(视图)是应用程序中处理数据显示的部分。通常视图是依据模型数据创建的。

Controller(控制器)是应用程序中处理用户交互的部分。通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-09-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 框架师 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档