文章标题

1.con.setAutoCommit(false)设置是否自动提交,默认为真。如果设置为false,表示手动提交,必须调用con.commit()才能更新数据库。一旦更新数据库,数据就写入数据库。
2.con.rollback()回滚事务。在catch中,如果一个失败就重回。
3.企业级应用需要解决并发,交互,事务,集群,安全,分布式,WEB的一系列问题。
4.EJB企业级Javabean。主要提供生命周期管理,代码产生,持续性管理,安全,事务管理,锁和并发行管理等服务。
5.J2EE是一套设计,开发,汇编和部署企业应用程序的规范。提供了企业级应用程序的平台开发,提供了多层结构,分布式,基于组件,松耦合,安全可靠,独立于平台且反应迅速的应用程序环境。
6.J2EE包含的组件技术
JSP:J2EE的web层核心技术
Servlet:J2EE的web层核心技术
JDBC:数据库访问技术
XML:跨平台的可扩展标记语言
EJB:J2EE的业务层核心技术
JNDI:JAVA命名和目录接口
JMS:JAVA消息服务
JTA和JTS:JAVA事务管理
JAVAMail:邮件收发
RMI:远程方法调用
IDL:接口定义语言,将JAVA和CORBA集成的一种技术。
7.重量级框架:启动,测试,运行都不能离开容器单独进行,依赖强。
轻量级框架:SUN提出容器提供服务,请逻辑框架提供同样的服务,用来支持POJO。通过代理方式实现服务的添加,用轻量级框架,持久层和业务层可以单独测试。

表现层(struts1.struts2.webwork.springMVC)—->业务层—->持久层(hibernate.mybatis.jdo.EJB实体bean)—->DB
8.什么事O/R Mapping?
对象-关系映像是一门非常实用的工程技术,他实现了JAVA应用中的对象到关系数据库中的表的自动的(和透明的)持久化,使用元数据(meta data)描述对象与数据库间的映射。
O/R Mapping的优点:提供生产率,可维护性,更好性能
9.hibernatete特点:
hibernate是一种开发源代码的对象/关系映射持久层框架
事务处理,生命周期管理不依赖于J2EE容器
解决数据库的方言问题
hibernate只需要操作对象就可以为完成数据的增、删、改、查等操作。使用hibernate更面向对象
轻量级,无入侵性,移植性很好
10.SSH:
struts:撑杆
hibernate:冬眠
spring:春天
11.hibernate.cfg.xml基本映射文件放在SRC中
12.hibernate应用范围
不适用范围:
批量对对象进操作时
使用数据库特定映射
表间关系很复杂时,会造成性能问题
13.主键生成策略
increment(自动增长,其主键有hibernate控制,数据库中响应的字段没有设置自动增长,不能用于集群)
identity(自动增长,对DB2,MYSQL,sql server数据库中响应的字段设置自动增长)
sequence(对Oracle数据库中相应的字段设置自动增长)
UUID:采用UUID算法生成字符串唯一标识,UUID生成策略相对来说速度较快,不需要使用数据库相关的维护表的操作,但查找相对较慢
native(根据数据集底层的描述,决定采用identity,sequence中的一个)
assigned:手动分配主键,当generator没有设置时,采用这种方式
select:使用触发器分配主键
foreign:使用另外一个相关联的对象的标识符。通常和联合起来使用。
oracle序列添加主键生成策略:


S_CUST_ID为序列名
S_CUST_ID


14.对象状态
Transient(瞬时状态)
当生成PO对象时产生,数据库中没有相应的记录,没有session对其进行管理
persistent(持久状态)
当session对象调用save() or update()时,数据库中有与之对应的记录,有session对象对之进行管理,当PO对象的值发生变化时,session对象让数据库记录与之同步
Detached(游离状态)
当session事务提交时,数据库中有与之对应的记录,从session一级缓存中清楚,session对其不再进行管理
15.hibernate中get和load的区别
1.get为立即加载,调用get方法是,会马上执行SQL将结果查询出来;load为延迟加载,调用load方法时,不会马上查询结果。而是当查询出来的对象在使用时,才发出SQL语句查询结果。
2.当查询的主键不存在时,get方法返回null,load方法会跑出“对象未找到异常”。

对延迟加载而言。一旦查询的对象不使用,不会真正的去查询数据局。这时,如果session关闭,在使用查询的对象,那么会抛出org.hibernate.LazyInitializationException。

16.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值