传智播客java学习--jpa进阶_ejb初步

我今天学习了徐老师讲的ejb3的知识,我做了简单的笔记:

 

       上午讲的是jpa的知识,下午讲的是EJB3的知识:

       JPQL语句:hibernate的HQL语句一样。

简单查询:

  Query query = em.createQuery("SELECT c FROM Customer c");

  return query.getResultList();

命名查询

  @Entity

  @NamedQuery(name = "findCustomerByName",

              query = "SELECT c FROM Customer c

                                WHERE c.name

                                LIKE :name ")

 

       分页:

  query = em.createNamedQuery("findCustomerByName");

  query.setParameter("name", "t,om");

  query.setMaxResults(10);

  query.setFirstResult(3);

  List customers = query.getResultList();

设置参数:

  SELECT o FROM Order i WHERE i.orderNo = ?1

  query.setParameter(1, 100.00);

 

  SELECT o FROM Order i WHERE o.price = :price

  query.setParameter("price", 100.00);

单个实体检索

  query.getSingleResult();

 

查询集合:

  WHERE c.orders IS EMPTY

  WHERE CONCAT(c.fname, c.lname) = 't,om'

  SELECT c.id, c.name FROM Customer c

多态查询

  SELECT c FROM Customer c WHERE c.name LIKE :name

分组

  SELECT o.customer, COUNT(o.id) FROM Order o

                                     GROUP BY o.customer

排序

  order by

子查询

  SELECT o FROM Order I WHERE o.customer IN

  (SELECT c FROM Customer c WHERE c.name LIKE ?1)

 

 

       EJB3

EJb3提供了完整的服务器解决方案栈.如持久化、消息、轻量级调度、远程访问、web service、DI、拦截器等.我们不需要再花费时间开发类似功能.即重用.

       EJB3 类型

Session beans

Message-driven beans

Entities

每种类型的bean用于特定目的并可使用EJB服务的一个

子集.Bean类型的真正目的是防止服务的交叉装配导致

的超载.Session Bean和消息驱动Bean用于构建业务

逻辑,他们驻留在容器中,由容器来进行管理.实体Bean

用于对Model进行建模.持久化供应商是可插拔的.

      

Session Bean

用于特定业务逻辑由客户端调用,Session名称意味着

在整个工作单元期间都可用,在服务器宕机或停止后销毁

它可为任何应用逻辑功能进行建模.

Stateful

  无需手动编码,在客户端调用时可自动保存bean状态信息.

Stateless

  可通过java rmi进行远程/本地调用,还可暴露成ws

 

Message-Driven Bean

  同Session Bean相似,也用来处理业务逻辑,不同之处在于客户端从不会直接调用消息驱动Bean.他是由

  发送到服务器的消息触发的,可用于在系统组件间进行异步消息的发送.

 

今天学的知识就是这些了,希望明天有更好的状态学习。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值