• EJB杂项


    一、Session Bean 生命周期中可用的Annotation

    @PreConstruct    @PostConstruct   @PreDestroy  @PrePassive  @PostActive  @Init  @Remove 


    二、Stateful Session Bean 必须实现接口


    三、拦截器

    @Interceptors  @AroudInvoke 


    四、FetchType  (LAZY、EAGER)

    @Basic (fetch=FetchType.LAZY)


    五、实体Bean状态


    状态

    定义

    主键

    上下文关联

    操作

    瞬时

    对象被new之后尚未保存到数据库,

    一旦服务器停止,JVM会回收它所占

    的内存资源,此时对象没有与session关联

     

    托管

    在数据库中已有数据与之对应,

    且与session相关联

    A.调用persist(), 实体从游离转变到托管,最后变成持久化状态.
    B.调用find()或Query执行查询, 实体从持久变成托管.
    C.调用refresh(),  游离实体将被重新加载,变成托管状态.
    D.调用merge(),   将游离实体变成托管实体.

    游离

    数据库中有数据与之对应

    但不在session的管理范围, 

    它的属性与数据库中持久化的实体不同步

    实体从托管变成游离的情况有:
    A.当一个事务结束,实体超过持久化上下文作用域,实体变成游离态
    B.当复制实体对象或序列化时,实体将变成游离态
    C.调用clear方法时,所有的实体将强制转化为游离态

    删除

    实体从数据库删除后的状态

     


    六、持久化操作

    find:          数据库--> 托管

    persist : 持久化新建 实体

    flush:  同步到数据库中

    merge:  插入或更新

    remove:

    refresh:

    contains:

    clear:


    七、实体Bean生命周期

    PostLoad/PostLoad、PrePersist/PostPersit、PreUpate/PostUpdate、PreRemove/PostRemove


    八、消息驱动Bean

    Queue: 1 vs 1

    Topic: 1 vs M






  • 相关阅读:
    pycharm初始配置
    个人Python笔记
    Linux硬盘分区
    Linux基础(三)
    Linux基础(二)
    linux基础之基本命令
    计算机网络基础
    计算机操作系统
    计算机基础
    vim编辑器
  • 原文地址:https://www.cnblogs.com/leeeee/p/7276113.html
Copyright © 2020-2023  润新知