复习笔记

javaweb项目相关:

 一个javaweb项目中必须有WEB-INF文件夹,且此文件夹名必须大写,此文件夹内部必须有web.xml文件。

web.xml文件是Web项目的配置文件,修改了此文件后,服务器必须重启才能生效。

在J2EE的Web应用中,编译后的class文件存放的目录为class目录

在Tomcat上的  webapps 目录用于存放所发布的应用程序。

为保证JSP页面不出现中文乱码,我们应该将页面的编码模式设置为utf-8或者gbk

在端口为8888的Tomcat中访问Hello项目下的login.jsp文件时,在浏览器地址栏应输入:http://localhost:8888/Hello/login.jsp

servlet相关:

doPost()专门用于处理post请求

doGet()专门用于处理get请求

Service()既可以处理post请求也可以处理get请求

init() 用于servlet初始化的方法,在其生命周期中只能调用一次。

destroy()用于servlet对象被销毁时调用,在其生命周期中只能调用一次。

servlet处理请求的方法是以线程的方式进行的,即单实例多线程模式

在部署Servlet时,web.xml文件中,应有以下标记:


<servlet>

    <servlet-name>servlet对象名</servlet-name>

    <servlet-class>servlet类型</servlet-class>

  </servlet>



  <servlet-mapping>

    <servlet-name> servlet对象名</servlet-name>

    <url-pattern>/在页面中应用的地址</url-pattern>

  </servlet-mapping>

MVC模式相关:

Servlet处于MVC模式中的Controller层。且一个Servlet中可以调用多个业务层的方法。

一个业务层的方法中,也可以调用多个DAO层的方法。

但是一个DAO层的方法中只能调用一个JDBC操作方法。

JavaBean在MVC模式中充当这Model层的内容。

 

MVC中M,V,C各代表什么意思

(1)M---Model---模型,分为实体Bean和业务Bean两种,分别用来封装实体数据和提供业务逻辑的处理方法;

(2)V---View---视图---负责提供输入表单并提交到控制器层,并从属性范围中获取到控制器的处理结果,做显示输出;

(2)C---Controller---控制器---负责获取视图层的客户端输入,调用业务层的业务逻辑方法,并将业务层的处理结果保存到属性范围中,最后跳转到指定页面;

 

 jsp中的内置对象

request: 请求对象,可以获得表单输入的数据,其数据类型为ServletRequest接口,

response:响应对象,将处理结果响应给客户,可以回写代码,也可以以服务器跳向的方式做出响应。

session:存储在服务器端,可进行页面间共享数据。session的id值会存储在cookie中.

request和session的区别:session可以跨多个页面共享,request仅仅在本次请求结束前有效;request想延长有效期则必须使用转发,session可通过过期时间来设置其最大有效时间。

在session过期或服务器被重启后,被服务器清除。

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

  1. request.getRequestDispatcher()是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址;服务器内部转发,整个过程处于同一个请求当中。
    response.sendRedirect()则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接。这样,从浏览器的地址栏中可以看到跳转后的链接地址。不在同一个请求。重定向,实际上客户端会向服务器端发送两个请求。
    所以转发中数据的存取可以用request作用域:request.setAttribute(), request.getAttribute(),重定向是取不到request中的数据的。只能用session。

  2. forward()更加高效,在可以满足需要时,尽量使用RequestDispatcher.forward()方法。(思考一下为什么?)

  3. RequestDispatcher是通过调用HttpServletRequest对象的getRequestDispatcher()方法得到的,是属于请求对象的方法。
    sendRedirect()是HttpServletResponse对象的方法,即响应对象的方法,既然调用了响应对象的方法,那就表明整个请求过程已经结束了,服务器开始向客户端返回执行的结果。

  4. 重定向可以跨域访问,而转发是在web服务器内部进行的,不能跨域访问。

 

用户在某购物网站购物,当关闭浏览器窗口,再打开新的浏览器窗口时,发现购物车中的商品全部丢失了,这说明关闭浏览器窗口,会导致session属性范围中的数据丢失,此说法对吗? 此说法不正确,因为购物车中的商品是保存在session范围中,而标识每一个用户的是以内存cookie的形式存放在客户端浏览器中,用户关闭浏览器,只会导致JSessionId丢失,下次再打开浏览器,服务器会发送新的JSessionId给浏览器,而这个新的JSessionId所关联的session属性范围中,肯定不会有以前的购物车信息,以前的购物车信息会

 

  jsp中标记的含义

表达式标签:<%=   %>

注释标签:<% --     --%>

小脚本标签:<%       %>

page指示符的language属性的作用是定义jsp页面中使用的脚本语言。

Http缺省的请求方法是Get。

在jsp中,taglib指令用来声明jsp欲使用的标签库

 Cookie相关:

            Cookie存储在客户端,如果没有设置过期时间,则cookie属于会话级别即内存cookie

            操作cookie的方法有:

            addCookie:添加cookie

            getCookies:获得客户端传来的所有cookie

            setMaxAge:设置cookie的过期时间。(设置cookie的有效期)

Cookie分为内存cookie和持久化cookie,如果想实现免登录功能,应使用后者。    

SmartUpload组件相关:

upload()方法:用于将文件上传到服务器端,并封装成File对象数组

saveAs()方法:是属于File对象的,用于将文件保存到服务器指定位置。

用SmartUpload类中的setAllowedFileList(“jpg,bmp,gif”)方法,可以设置只允许上传jpg,bmp,gif三种格式的文件

连接数据库相关:

            java.sql.Connection 接口:是数据库连接的对象的类型

            java.sql.DriverManager类:是一个管理数据库驱动的类,可以实例化Connection类型的连接对象。

            java.sql.Statement接口:用于执行完整的sql语句,并返回执行结果。

            java.sql.PreparedStatment接口:用于执行预处理的sql语句,并返回执行结果。所谓预处理的sql语句为,可变的数据部分以?号占位,在执行前通知PreparedStatement对象,那个位置的问号以何数据填充。

            java.sql.ResultSet接口:为查询结果集的类型,是调用executeQuery()方法的返回值类型。

集合相关

   单值集合:

java.util.Collection  (接口)

       |- java.util.List(接口) : 元素可以重复,有顺序,元素是根据下标定位的

              |- java.util.ArrayList(类)

              |- java.util.Vector (类)

              |- java.util.LinkedList(类)

       |- java.util.Set(接口):元素不可以重复,无顺序

              |-  java.util.HashSet(类)

              |-  java.util.TreeSet(类)

双值集合:键|值 的形式存储数据

java.util.Map(接口): key|value   ,   key不可重复,  value可重复, 无序

      |- java.util. HashMap(类)

      |- java.util.TreeMap(类)

      |- java.util.HashTable(类)

其中java.util.Map接口最适合购物车模型

数据库知识点:

MySql数据库实现分页数据查询时,需要用到 limit函数

一对多关系的数据库设计方法为将一方的主键作为外键,加入到N方的表中

一对多关系的类设计方法为将一方的类作为属性,加入到N方类中

 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JSP100选择题 适合考前练习 1 J2EE 中,()类的()方法用于创建对话。(选择一项) a) HttpServletRequest、getSession b) HttpServletResponse、newSession c) HtttpSession、newInstance d) HttpSession、getSession 2 给定一个 Servlet 的doGet方法中的代码片段,如下: request.setAttribute(“name”,”zhang”); response.sendRedirect(“http://localhost:8080/servlet/MyServlt”); 那么在 MyServlet 中可以使用()方法把属性 name的值取出来。(选择一项) a) String str=request.getAttribute(“name”); b) String str=(String)request.getAttribute(“name”); c) Object str=request.getAttribute(“name”); d) 无法取出来 3.在Servlet里,能实现重定向的方法有()。(选择两项) A.运用javax.servlet.http.HttpServletRequest接口的sendRedirect方法 B.运用javax.servlet.http.HttpServletResponse接口的sendRedirect方法 C.运用javax.servlet.RequestDispatcher接口的forward方法 D.运用javax.servlet.ResponseDispatcher接口的forward方法 4.利用MyEclipse开发Servlet,下列说法正确的是( )。(只选两项) A. MyEclipse可自动产生web.xml B. MyEclipse不能自动产生web.xml,需要手工编写 C.可利用MyEclipse自带的Tomcat作为Servlet容器 D. MyEclipse没有自带Tomcat,需要自己安装配置。 5.编写Servlet 的doPost方法时,需要抛出异常为()。(只选一项) A.ServletException, IOException B.ServletException, RemoteException C.HttpServletException, IOException D.HttpServletException, RemoteException 6.有关会话跟踪技术描述正确的是()。(选择三项) A.Cookie是Web服务器发送给客户端的一小段信息,客户端请求时,可以读取该信息发送到服务器端 B.关闭浏览器意味着会话ID丢失,但所有与原会话关联的会话数据仍保留在服务器上,直至会话过期 C.在禁用Cookie时可以使用URL重写技术跟踪会话 D.隐藏表单域将字段添加到HTML表单并在客户端浏览器中显示 …………
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值