您的位置:首页 > 其它

J2EE企业应用开发知识点总结

2014-03-24 13:18 148 查看
1、EJB:

Enterprise java bean,是SUN的J2EE中的一套规范,并且规定了一系列的API用来实现把EJB概念转换成EJB产品。

包括会话bean(session bean)、实体bean(entity bean)、消息驱动bean(messagedriver bean)。

sessionbean用于实现业务逻辑,可以是有状态的,也可以是无状态的(问题1),当客户端发送请求时,服务器总会选择一个sessionbean为客户端服务,sessionbean可以直接访问数据库,但更多的时候是通过entitybean来访问数据库。

entitybean是域模型对象,用于实现o/r映射,负责将数据库中的表映射为内存中的entity对象。事实上,创建一个entity对象相当于在数据库中插入了一条记录,删除一个entity对象相当于删除一条记录,修改entity对象,容器会自动更新到数据库。

messagedriverbean基于jms(百科简介)消息,只能接收客户端发送的消息,并进行处理,MDB实际上是一个异步的无状态Session Bean,客户端调用MDB后无需等待,立刻返回,MDB将异步处理客户请求。这适合于需要异步处理请求的场合,比如订单处理,这样就能避免客户端长时间的等待一个方法调用直到返回结果。

问题1:是指的会话状态

无状态的会话bean不保持任何与客户端的会话状态,发给 bean的每一次请求需同时提供数据来进行请求处理。有状态的会话bean,与之相反,可以保持状态,并且该状态可以在与客户的多次会话中存在。

有状态的bean带来了支持会话状态的好处但同时付出了性能的代价。无状态bean具有更好的性能,但却又不具备与客户端的亲合力。EJB 容器可以将无状态bean放入缓冲池中,并当有用户请求无状态bean时,从中选取任意一个bean来为其提供服务。

2、JPA:

JPA全称Java Persistence API。JPA通过JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。

Hibernate3.2、TopLink 10.1.3以及OpenJPA都提供了JPA的实现。

JPA包括以下3方面的技术:

ORM映射元数据:JPA支持XML和JDK5.0注解两种元数据的形式,元数据描述对象和表之间的映射关系,框架据此将实体对象持久化到数据库表中;

API:用来操作实体对象,执行CRUD操作,框架在后台替我们完成所有的事情,开发者从繁琐的JDBC和SQL代码中解脱出来。

查询语言:这是持久化操作中很重要的一个方面,通过面向对象而非面向数据库的查询语言查询数据,避免程序的SQL语句紧密耦合。

3、spring:

spring没有太多新鲜的东西,它至少抽象了很多java EE应用常用的东西,spring充满了各种设计模式的应用,并且号称一站式解决方案,提供了设计优良的MVC框架springMVC,可以和持久层框架无缝整合等等,spring更像一个中间容器,上可和MVC框架整合,下可和持久层框架整合,struts2可以由jsf、tapestry等替代,hibernate可由ibatis、jpa、toplink等替代,但spring无可替代。

4、框架

框架就是一套基础类库,使用框架是为了可维护性和复用

5、jaas:点击打开链接

jdni:点击打开链接

6、jsp中动态包含和静态包含的区别

静态包含(jsp的编译指令):<%@ include file = "" %>

动态包含(jsp的动作指令):<jsp:inlude page = "" %>

静态包含是将被包含页面的全部代码完全融入,形成一个servlet,如果编译指令冲突的话会报错。

动态包含只是导入body部分的代码,编译指令不起作用。

动态包含可以增加额外的参数。

7、jsp的3个编译指令:page、include、taglib

8、jsp的7个动作指令:

forward:不是重新发送请求,而是用新的页面响应请求

include:动态包含

param:传递参数,同forward和include配合使用

plugin:主要用于下载服务器的javaBean和applet到客户端运行使用

useBean:

<jsp:useBean id="" class="" cope="page|request|session|application" />

id:实例化对象的名称

class:需要实例化的类

page:仅在本页面有效

request:本次请求有效

session:本次session有效

application:整个应用有效

setProperty:<jsp:setProperty name="" property ="" value="" />

getProperty:<jsp:getProperty name="" property="" />

 

9、jsp的9个内置对象

application:是javax.servlet.Servletcontext对象的实例,代表jsp属于的web应用本身,常用的方法有setAttribute、getAttribute、getInitParameter等

config:是javax.servlet.ServletConfig对象的实例,代表jsp页面的配置信息,常用方法是getInitParameter、getInitParameterNames等

out:是javax.Servlet.jsp.jspWriter对象的实例,代表jsp页面的输出流,形成html页面

pagecontext:是javax.servlet.jsp.pagecontext对象的实例,代表jsp页面的上下文,使用该对象可以访问页面间的共享数据,常用方法有getServletContext、getServletConfig

request:是javax.servlet.http.httpServletRequest对象的实例,该对象封装了一次请求,客户端的请求参数封装在这个对象中,常用方法有getParameter、getParameterValues、setAttribute、getAttribute、setCharacterEncoding等

response:是javax.servlet.http.httpservletResponse对象的实例,代表服务器对客户端的响应,常用方法有getOutStream、sendRedirect等方法

session:是javax.servlet.http.httpSession对象的实例,代表一次回话,当客户端浏览器与站点建立联系时,回话开始;当客户端关闭浏览器时,会话结束。常用方法有setAttribute、getAttribute

exception:是java.lang.throwable对象的实例,只有当页面是错误处理页面,即编译命令page中的isErroPage等于true时,该对象才可以使用,常用方法有getMessage和printStackTrack等

page:代表页面本身,能用page的地方也能用this

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: