需要学习的:SSH 或者 SSM
EJB(业务层和持久层)
一.三层架构:
表示层 业务层 持久层
Servlet JSP Service JDBC+DAO
Java Bean
Spring Hibernate
Strnts1 myBatis
Strnts2
Spring MVC
表示层--业务层--持久层--数据库--持久层--业务层--表示层;
通过分层,可以将每一层任意的进行扩展和替换;
分布式:把一个项目分包给其他公司,每个公司做的项目块都是属于这整个项目里面的,只是负责的区域不同,他们之间也许会存在交互;
Web应用的缺陷:事务处理;
企业级应用(现在企业级应用应当具有如下需求):
并发支持;
事务支持;
交互支持;
集群支持;
安全支持;
分布式支持;
Web支持;
Sun公司提出了一个解决方案,叫EJB(企业级的Java Bean),是sun的Java服务器端组件模型;设计目标与核心应用是部署分布式应用程序,现存在7/8年了;
只有一些商业化的软件才提供了EJB 的支持;
EJB到现在经历了三个版本是变化,1.0;2.0;3.0;不过他有一个致命的缺陷:
复杂度:编写EJB 的时候,复杂度使我们无法避免的 ,它的复杂度是很高的;也不易修改;
EJB的组件必须依赖于EJB 的容器;
Java EE 把EJB分为三类;会话Bean、实体Bean、消息驱动Bean;
Java EE 核心技术简介:
javaEE只是规范;为企业级应用提供了一整套服务、应用程序接口AP和协议技术:
JavaMail(邮件服务);
RMI-IIOP;
Java事务API(JTA;是JavaEE强大之处之一;)和Java事务服务(JTS);
JPA;
IDL;
JMS;
STAX;
Web Service;
JNDI;(命名目录接口,是JavaEE强大之处之一;)
EJB开发的问题:
编辑、编译、调试周期长;
编码泷长、繁琐;
必须编写数据传输对象;
POJO(简单的Java对象)Plain Old Java Objects
“轻量级”框架(所有轻量级的框架都是民间的):
与重量级框架所具有的特点相反,可以简化我们的开发;
“重量级”框架:
编写繁琐、依赖性高、周期长等;这些都是重量级的特点;
EJB这是典型的重量级组件
持久层框架:
Hibernate;
myBatis;
两者的区别:
Hibernate(封装的更为彻底,适用于不喜欢写SQL语句的程序员)/ myBatis(相对于Hibernate框架来说封装的不是那么彻底,适用于喜欢写SQL语句的程序员);
Spring框架(最最重要的框架
可以降低耦合;
O/P Mapping的优点:
提高生产率;
可维护性;
更好性能;
Hibernate的映射文件 *.hbm.xml(*是名字)
申请头里面是Hibernate-mapping
生成ID的方式,increment表示获取表中最大的id值+1;
Hibernate核心接口:
Configuration(配置接口)
Session Factory(会话工厂接口;主要用于得到Session)
Session(会话接口)Hibernate提供的一次会话的过程;
Transaction(事务接口)
Query(查询接口)
hibernate对bean对象的三种状态:
瞬时状态(new出来的就是瞬时状态);
持久状态(进行save()、update()、get()(增改)时,这时候bean会和数据库产生关联,此时做任何操作,都将直接影响到数据库的数据);
游离状态(关闭close);
瞬时状态和游离状态最终会被垃圾回收站所回收;
连接池:用来缓存数据库连接的;
先开一些连接放在连接池里,就不用打开连接了,就可以从里面取出一些连接来用,用完又放回去,这样可以减少打开和关闭连接,这样间接性的提高了连接池的效率;
活动连接:正在被使用的就叫活动连接;
空闲连接:在里面没有被使用的就叫空闲连接;
等待时间;
第三方的连接池:
C3P0
Proxool
JAVAEE基础
最新推荐文章于 2020-05-28 20:24:43 发布