您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 招聘面试 > JavaEE重点知识总结
JSP/SERVLET/JAVABEAN第一章JavaEE概述Java平台的版本:JavaSE:窗体、控制台应用程序JavaME:嵌入式开发——手机、移动设备JavaEE:WebApplicationJavaEE的体系结构:1、表示层(HTML、JavaScript、Ajax)2、中间层(JSP、Servlet、JSTL、JavaBean)(Struts)3、数据层(JDBC)(Hibernate)三层体系结构的优点:1、耦合性低2、扩展性好3、重用性好4、便于分工系统集成技术1、JAX-WS2、JNDIHTTP协议的提交方式1、GET——用URL传递数据2、POST——用流的方式传递数据GET和POST的区别:1、GET方式在地址栏中有数据显示,POST没有2、GET提交的数据量有限,POST没有3、GET请求的页面可以设置为书签或通过EMAIL发送,POST不行第二章Servlet基础什么是Servlet:Servlet是一个Java程序,是在服务器端运行的以处理客户端请求并做出响应的程序。Servlet类一定要继承HttpServlet,Servlet必须和Servlet容器配合运行,Servlet要嵌入容器才能运行。Web应用程序的结构:tomcat-webapps-appName:、页面和图片(可以自己组织结构,可以从客户端直接访问,jsp、html、js、jpg……)2、WEB-INF目录(必须的,其中的东西不能从客户端直接访问)a、web.xml(必须的,这个Web程序的总体的配置,是一个核心)b、classes文件夹(必须的,Servlet和JavaBean编译成Class后存放于该文件夹)c、lib文件夹(存放该程序用到的类库Jar包)Web.XML中要对Servlet进行一些配置servletservlet-nametest/servlet-nameservlet-classorg.owl.servlets.TestServlet/servlet-class/servletservlet-mappingservlet-nametest/servlet-nameurl-pattern/test/url-pattern/servlet-mappingdoPostdoGetserviceJSP在运行时需要翻译成一个Servlet程序,然后在编译成Class文件,然后才可以运行。Servlet的生命周期由Servlet容器来管理Servlet的生命周期:1、加载和实例化(构造方法):在Web容器中查找用户请求的Servlet,如果没有找到,则实例化,如果找到加载。2、初始化(init):在实例化后调用的方法,可以初始化一些资源。3、服务(service):接收请求并做出响应。根据请求的方式不同,调用doXXX方法。4、销毁(destory):主要用来销毁初始化时创建的资源,在destory方法中我们标识那些资源可以回收,并不能马上回收。加载——实例化——初始化——服务——加载——服务——加载——服务——销毁HttpServlet——基类MyServlet——派生类HttpServletms=Class.forname(org.owl.MyServlet).getInstance();容器使用Servlet的伪代码HttpServlets=container.getServlet(name);——加载if(s==null){s=Class.forname(org.owl.MyServlet).getInstance();——实例化s.init();——初始化container.setServlet(name,s);}s.service(request,response);——服务.s.destory();——销毁s=null;HttpServletRequest常用方法:getParameter方法:获得页面传过来的数据setCharacterEncoding方法:设置请求的编码字符集setAttribute,getAttribute方法:用于在request中存储一些信息,他们的生命周期就是一个请求的期间。getRequestDispatcher方法:用于获得一个RequestDispatcher对象,应用于请求转发。HttpServletResponse常用方法:setContentType方法:设置响应的字符集和格式sendRedirect方法:重定向。getWriter方法:获得向客户端输出字符信息的对象。RequestDispatcher常用方法forward方法:请求转发include方法:服务器端包含重定向:客户端发送请求到服务器端,如果服务器端需要重定向,那么将需要重定向到的地址发送给客户端,客户端再向该地址提出请求。请求转发:客户端发送请求到服务器端,如果服务器端需要请求转发,那么服务器端直接把请求传送给另一个servlet或jsp,由其向客户端返回响应。请求转发(request.getRequestDispacther(1.jsp).forword(request,response))与重定向(response.sendRedirect(1.jsp))的区别1、重定向地址栏地址改变,请求转发不变;2、重定向可以跳转到站外页面,请求转发不能;3、重定向不能保存request中的数据,请求转发可以。第三章基于Servlet的会话跟踪(一)HTTP协议无状态Session指的是在一段时间内,单个客户与Web服务器之间一连串相关的交互过程Session是通过SessionID来确认是否是一个session过程Session是一个HttpSession类的实例。通过request的getSession方法来获取Session无参数的方法和参数是true方法是一样的,获取匹配的Session,如果无匹配,返回一个新的Session对象。如果参数是false的话,如果无匹配的Session,返回null使用Session利用其setAttribute设置session,使用其getAttribute方法来获取session中的内容。结束一个Session1、关闭浏览器2、当两次访问的时间超过了Session的最大非活动时间间隔3、调用Session的invalidate方法使一个Session无效由于Session的易失性,在获取数据后要进行判断。第四章基于Servlet的会话跟踪(二)常用的集合类和接口集合类分为两种:1、Collection(单一元素的集合)2、Map(键值对的集合)Collection1、List(有序、元素可以重复)——ArrayList、LinkedList2、Set(无序、元素不能重复)——HashSet、TreeSetMap——HashMap、Properties第五章基于Servlet的MVC设计模式设计模式使一套被反复使用,成功的代码设计经验的总结。MVC设计模式1、M(Model)模型:JavaBean2、V(View)视图:JSP3、C(Controller)控制器:Servlet优点:1、各施其职、互不干涉2、有利于开发中的分工3、有利于组件的重用客户端提交请求到C,C获取客户端数据,根据不同的请求调用不同的M,并获得M的结果,根据结果的不同,选择不同的V,V将结果显示给客户端。V:显示数据,与客户端交互C:获取客户端数据;调用M;选择VM:业务逻辑;数据库访问第六章Model层开发:高级JDBC我们需要什么样的数据访问层:1、完成CRUD操作2、能够处理数据库发生的各种错误(自定义异常)3、可以灵活的修改配置(配置文件)4、提供方便使用的工具(通用DAO)5、高性能(数据库连接池)连接池:一个存放着很多连接的容器。数据源:对容器进行管理的对象JNDI:获取数据源的方式在Tomcat中配置连接池并使用:1、将驱动Jar放入Tomcat中的lib目录(如果是5.0的话,放入tomcat中的common中的lib目录);2、修改Tomcat中conf目录中的context.xml配置文件,加入一个Resource标签。3、在自己项目中的Web.xml中配置Resource-ref标签4、编写程序,获取数据源importjavax.naming.*;Contextctx=newInitialContext();DataSourceds=(DataSource)ctx.lookUp(java:comp/env/jdbc/book);Connectioncn=ds.getConnection();如果JNDI名字是jdbc/booklookUp方法中的名字应写成:java:comp/env/jdbc/book属性文件:*.properties因为Java中有一个类Properties可以用这个类的load方法直接读取*.properties文件。属性文件如何存储:键值对的方式,key=value一行一个键值对publicclassSss{privatestaticSssss=null;privateSss(){}privatesynvoidInit(){if(ss==null)ss=newSss();}publicstaticSssgetInstance(){Init();returnss;}}Sssss=Sss.getInstance();自定义异常:所有的异常的父类:ThrowableException就是Throwable的子类throw关键字用于抛出异常,throws关键字用于将方法中的异常传递给调用类来处理。自定义异常可以让我们更方便的看懂异常信息通用DAO类Result相当于C#中的DataTableResultSupport相当于C#中的DataAdapter第七章View层开发:JavaBean在JSP中的使用JavaBean实际上就是一个Java类1、封装数据2、封装业务JavaBean要满足的要求:1、公有类,公有的无参的构造方法2、属性私有(field)3、公有的Getter和Setter方法。属性,特性(property)根据Getter和Setter方法来的1、将Getter和Setter方法中的get和set去掉,剩下的部分首字母变为小写例如,getName,setName,属性名为name2、如果剩下的部分前两个字母都是大写,那么首字母不变为小写例如,getUName,setUName,属性名为UNameJSP标准动作1、useBean:(jsp:useBean/):获取或者创建JavaBean对象id必须有的,代表JavaBean的变量名class一个类型,新创建出来的JavaBean的数据类型type一个类型,获取对象以后将其转换为那种类型scope作用域,可选的参数,默认值是pageclass和type必须得有一个,不能都没有,但是可以都有,type和class可以不一样,type指定的类型一定是class指定的类型的父类或者其实现的接口。scope有四个值:从小到大——page,request,session,applicationjsp:useBeanid=testclass=org.owl.Userscope=session/Usertest=(User)session.getAttribute(test);if(test==null){test=newUser();session.setAttribute(test,test);}jsp:useBeanid=testtype=org.owl.Personscope=session/Persontest=(Person)session.getAttribute(test);if(test==null)thrownewException();jsp:
本文标题:JavaEE重点知识总结
链接地址:https://www.777doc.com/doc-4888850 .html