zoukankan      html  css  js  c++  java
  • java(二)Web部分

    2.1.1讲一下http getpost请求的区别?

    GET和POST请求都是http的请求方式,用户通过不同的http的请求方式完成对资源(url)的不同操作。GET,POST,PUT,DELETE就对应着对这个资源的查 ,改 ,增 ,删 4个操作,具体点来讲GET一般用于获取/查询资源信息,而POST一般用于更新资源信息

    1、Get请求提交的数据会在地址栏显示出来,而post请求不会再地址栏显示出来.

    GET提交,请求的数据会附在URL之后(就是把数据放置在HTTP协议头中),以?分割URL和传输数据,多个参数用&连接;POST提交:把提交的数据放置在是HTTP包的包体中。 因此,GET提交的数据会在地址栏中显示出来,而POST提交,地址栏不会改变

    2、传输数据的大小

    http Get请求由于浏览器对地址长度的限制而导致传输的数据有限制。而POST请求不会因为地址长度限制而导致传输数据限制。

    3、安全性,POST的安全性要比GET的安全性高。由于数据是会在地址中呈现,所以可以通过历史记录找到密码等关键信息。

    2.1.2 说一下你对servlet的理解?或者servlet是什么?

    ServletServer Applet),全称Java Servlet 是用Java编写的服务器端程序而这些Sevlet都要实现Servlet这个接口。其主要功能在于交互式地浏览和修改数据生成动态Web内容Servlet运行于支持Java的应用服务器中。

    HttpServlet 重写doGet和doPost方法或者你也可以重写service方法完成对get和post请求的响应

    2.1.3简单说一下servlet的生命周期?

    servlet有良好的生存期的定义,包括加载实例化初始化处理请求以及服务结束。这个生存期由javax.servlet.Servlet接口的init,servicedestroy方法表达。

    加载Servletclass---->实例化Servlet----->调用Servletinit完成初始化---->响应请求(Servletservice方法)----->Servlet容器关闭时(Servletdestory方法)

    Servlet启动时,开始加载servle即生命周期开始。Servlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求对应的doXXX方法(doGetdoPost)等,当服务器决定将实例销毁的时候(服务器关闭)调用其destroy方法。

    2.1.4 Servlet APIforward() redirect()的区别?

    1、forward是服务器端的转向而redirect是客户端的跳转。

    2、使用forward浏览器的地址不会发生改变。而redirect会发生改变。

    3、Forward一次请求中完成。而redirect重新发起请求。

    4、Forward是在服务器端完成,而不用客户端重新发起请求,效率较高。

    2.1.5 JSPServlet有哪些相同点和不同点?

    JSPServlet技术的扩展,所有的jsp文件都会被翻译为一个继承HttpServlet的类。也就是jsp最终也是一个Servlet.这个Servlet对外提供服务。

    ServletJSP最主要的不同点在于JSP侧重于视图,Servlet主要用于控制逻辑。

    Servlet如果要实现html的功能,必须使用Writer输出对应的html,比较麻烦。而JSP的情况是JavaHTML可以组合成一个扩展名为.jsp的文件,界面展示比较方便而嵌入逻辑比较复杂。

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

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

    response 网页传回用户端的回应

    pageContext 网页的属性是在这里管理

    session 与请求有关的会话期

    application servlet正在执行的内容

    out 用来传送回应的输出

    config servlet的构架部件

    page JSP网页本身

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

    四大作用域:pageContext request session application 可以通过jstl从四大作用域中取值.

    Jsp传递值request session application cookie也能传值

    2.1.7说一下sessioncookie的区别?你在项目中都有哪些地方使用了?

    Session和cookie都是会话(Seesion)跟踪技术Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。但是Session的实现依赖于Cookie,sessionId(session的唯一标识需要存放在客户端).

    cookie session 的区别:

    1cookie数据存放在客户的浏览器上,session数据放在服务器上。

    2cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗
       考虑到安全应当使用session

    3session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面,应当使用COOKIE

    4、单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20cookie

    5、所以个人建议:
       登录信息等重要信息存放为SESSION
       其他信息如果需要保留,可以放在COOKIE,比如购物车

    购物车最好使用cookie,但是cookie是可以在客户端禁用的,这时候我们要使用cookie+数据库的方式实现,当从cookie中不能取出数据时,就从数据库获取。

     

    2.1.8MVC的各个部分都有哪些技术来实现

    M(Model) 模型 javabean

    V(View) 视图  html jsp volicity freemaker

    C(Control) 控制器 Servlet,Action

    Jsp+Servlet+javabean 最经典mvc模式,实际上就是model2的实现方式,就是把视图和逻辑隔离开来

    Model1的方式 jsp+service+dao

    MOdel2的方式 jsp+servlet+service+dao

    使用struts2springmvc这样的mvc框架后,jsp+核心控制器+action+javabean

     

     

  • 相关阅读:
    Js特效之放大镜(淘宝商品展示)
    关于使用JavaScript实现图片点击切换(附带改变导航图片 方案二)
    关于使用JavaScript实现图片点击切换(附带改变导航图片 方案一)
    JavaScript常用的方法和函数(setInterval和setTimeout)
    When to use dequeueReusableCellWithIdentifier vs dequeueReusableCellWithIdentifier: forIndexPath
    iOS 7.1 安装 企业应用 提示 无法下载应用程序
    Git忽略规则及.gitignore规则不生效的解决办法
    Core Animation 学习
    AutoLayout那些坑
    欲善其事必先利其器---Xcode插件
  • 原文地址:https://www.cnblogs.com/popo669/p/10402942.html
Copyright © 2011-2022 走看看