zoukankan      html  css  js  c++  java
  • jsp

    1、servlet缺点,为什么会出现jsp技术?

       因为Servlet当初的设计目的是用来产生网页的程序,所以所有的页面必须在Servlet中进行构造,这样做的效率在当今来说,真的很低下,所以对于Servlet来说,它是很不利于展现的,不过它很适合于对数据的处理,所以很适合于充当控制器来使用。因为Servlet构建页面实在够差,所以后来SUN推出了JSP来一改Servlet引入的尴尬。

    2、常见动态网站的技术对比

      jsp:java平台、安全性高、适合开发大型的,企业级的Web应用程序。

      .Net:.net平台、简单易学(界面化操作)。但是安全性和跨平台性差

      php:简单、高效、成本低开发周期短。特别适合中小型企业(LAMP=Linux+Apache+Mysql+Php).

    3、请求转发与请求重定向的区别?

      请求重定向:客户端行为,respon.sendRedirect(),从本质上讲等同于两次请求,前一次的请求对象不会保存,地址栏的url会改变。

      请求转发:服务器行为,request.getRequestDispatcher().forward(req,resp);是一次请求,转发后请求对象会保存,地址栏的URL不会改变。

    4、session与cookie的对比?

    session:              cookie:

    (1)服务器端保存客户信息          客户端保存

    (2)保存的是object类型           string类型

    (3)随着会话结束而销毁           可以长期保存客户端

    (4)保存重要信息(密码)          不重要的信息

    (5)保存的数据大              保存的数据少

    5、include指令与include动作的区别?

      include指令 include动作
    语法格式 <%@ include file="..."%> <jsp:include page="...">
    发生作用的时间 页面转换期间 请求期间
    包含的内容 文件的实际内容 输出内容
    转换成的servlet 主页面和包含页面转换为一个servlet 转换出两个独立的servlet
    编译时间   较慢—资源必须被解析 较快
    执行时间 稍快 较慢—每次资源必须被解析

    6、脚本元素:在一定程度上可以理解就是java的片段

       1、脚本:   <%  java代码  %>   局部变量

       2、表达式:  <%=java表达式 %>         输出变量   表达式

       3、声明:    <%! 变量、方法%>   全局变量   

    7、request对象主要用于处理客户端请求,方法有:

    String  getParameter(String name)          根据页面表单组件名称获取页面提交数据

    String[ ]  getParameterValues (String name)  获取一个页面表单组件对应多个值时的用户的请求数据

    void setCharacterEncoding (String charset) 指定每个请求的编码 在调用request.getParameter()之前进行设定,可以解决中文乱码问题

    request.getRequestDispatcher(String path)  返回一个javax.servlet.RequestDispatcher对象,该对象的forward方法用于转发请求

    request.setAttribute("key",value);

    Object    request.getAttribute("key");

    8、application对象的常用方法:

    void setAttribute(String key, Object value):以键/值的方式,将一个对象的值存放到application中

    Object getAttribute(String key):根据键去获取application中存放对象的值

     application.getRealpath("/"); 得到项目的路径

    9、session对象常用方法:

    void setAttribute(String key, Object value):以键/值的方式,将一个对象的值存放到session中

    session.setAttribute("name","zhangsan");

    Object   getAttribute(String key):根据名称去获取session中存放对象的值

    String name = (String) session.getAttribute("name");

    session.getId();    得到session的ID

    session.isNew();   判断该session是否是新的

    session.Invalidate();  销毁session

  • 相关阅读:
    华丽的NHibernate
    Linq to NHibernate入门示例
    更新部分字段 NHibernate
    Entity Framework 与 面向对象
    开源框架之TAB控件
    MEF插件系统中通信机制的设计和实现
    用CQRS+ES实现DDD
    Unit of work + Repository
    [开源]C#二维码生成解析工具,可添加自定义Logo (转)
    就是这么简单(续)!使用 RestAssuredMockMvc 测试 Spring MVC Controllers(转)
  • 原文地址:https://www.cnblogs.com/h-g-f-s123/p/6154864.html
Copyright © 2011-2022 走看看