`
java_hanyu
  • 浏览: 71717 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

EJB3.0学习笔记(一)

阅读更多

EJB(Enterprise JavaBean企业级的JavaBean)

企业级应用的架构

Host/Terminal(主机/终端,终端不具备处理能力,数据由主机处理)
C/S(Client/Server客户端/服务器端)
Multi-layered(多层架构)

EJB的功能
1,远程调用 RMI
2,负载均衡,将访问均衡到各个服务器中
3,透明的故障修复
4,集群(多台相同的系统服务器,有代理服务器均衡到后台的服务器)
5,后台集成
6,事务(全局/局部)全局事务(分布式事务)局部事务(在同一数据库联接内的事务)
7,动态的重部署(在不停止原系统的情况下,部署新的系统)
8,系统管理
9,多线程处理
10,面向消息的中间件(异步的调用编程)
11,管理对象的生命周期
12,资源池
13,安全
14,缓存

EJB的应用(主要用于处理商业逻辑),EJB是一个标准,是开发和部署服务器端的组建的标准。
SOA(面向服务的架构)和EJB的关系
服务,一组组件所提供的功能。
SOAP(简单对象访问协议)
WSDL(web服务描述语言)(Web Services)

写一个EJB的步骤
1,配置EJB的运行环境
2,写商业接口
3,写Bean类,实现商业接口(Bean类不能同时实现远程接口和本地接口)
4,编译文件
5,提供部属文件,EJB3.0中使用了注释不用写标准部署描述(ejb-jar.xml),系统调优用的厂商部署描述是需要写的。
6,打jar包,部署到服务器中

EJB3.0使用了JAVA SE 5.0 中的注释新特性,只要在方法上写EJB规范的注释,就可以不用来写标准的部署表述,ejb-jar.xml这个要放到jar文件的mate-inf文件夹里。
<?xml version="1.0" encoding="UTF-8"?>
<ejb-jar xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" metadata-complete="true" version="3.0" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd">
<enterprise-beans>
  <session>
    <display-name>HelloBean</display-name>
    <ejb-name>HelloBean</ejb-name>
    <business-remote>test.HelloRemote</business-remote>
    <ejb-class>test.HelloBean</ejb-class>
    <session-type>Stateless</session-type>
    <transaction-type>Container</transaction-type>
    <security-identity>
        <use-caller-identity/>
    </security-identity>
  </session>
</enterprise-beans>
</ejb-jar>

写EJB客户端的步骤
1,运行客户端前要加上在SUN的服务器文件夹中的lib下的javaee.jar和appserv-rt.jar
2,配置系统的JNDI的环境
3,写测试类,注意在测试类中也要有商业接口

在厂商的部署描述中可以配置EJB的实例池,可以一次创建多个EJB的实例。
EJB的类型
1,SessionBean(Statless/Statfull)
    无状态的SessionBean是不会保存的信息的和状态,无状态的SessionBean是可以重用的,而不是被立刻销毁
    有状态的SessionBean只为一个用户来服务。
2,MDB(Message Driver Bean)消息驱动Bean,可以进行异步的编程
3,Entity Bean 访问数据库,已经被JPA(JAVA持久化API)替代。
4,JPA基于ORM方式来实现对数据库的访问

无状态SessionBean

商业接口
@Remote
public interface HelloRemote {
    public String hello();
}

Bean类,Bean类即可以实现商业接口,也可以不实现,但是其中的方法签名要和接口中相同,不过最好还是实现商业接口避免书写错误
@Stateless
@Remote(test.HelloRemote.class)
public class HelloBean implements HelloRemote {
    public String hello() {
        return "Hello World";
    }
}

注意:EJB一定要先部署到服务器,EJB需要部署环境才能运行

EJB客户端
public class Cilent {
    public static void main(String[] args) throws NamingException {

        System.setProperty("jndi.factory","com.sun.jndi.cosnaming.CNCtxFactory");
        System.setProperty("jndi.provider.url","corbaloc::localhost:3007/NameSpace");
        Context ctx=new InitialContext();
        HelloRemote hello=(HelloRemote)ctx.lookup("test.HelloRemote");
        System.out.println(hello.hello());
        System.out.println(hello.helloword("lichen"));
    }
   
}

注意:在写客户端时,要引入javaee.jar和appser-rt.jar还要引入已经编译好的EJB的jar文件。
分享到:
评论

相关推荐

    EJB3.0 学习笔记

    **EJB3.0 学习笔记** EJB(Enterprise JavaBeans)是Java EE平台中的核心组件,用于构建可扩展的、安全的、事务处理的分布式应用程序。EJB3.0是EJB的一个重大更新,引入了许多改进,使得开发过程更为简化,降低了...

    ejb3.0+Weblogic+Jboss安装配置及入门例子

    提供的文档"ejb3.0+Weblogic+Jboss安装配置及入门例子.doc"和"基于weblogic的EJB学习笔记.htm"应该包含详细的安装指南、配置步骤以及基础的EJB编程示例。"基于weblogic的EJB学习笔记-JSP编程-华夏名网资讯中心 虚拟...

    达内EJB3.0总结

    EJB3.0是EJB规范的一个重要版本,它在EJB2.1的基础上进行了大量的简化和改进,使得开发过程更加高效,同时也降低了学习曲线。 EJB3.0引入了以下几个关键特性: 1. **注解驱动**:在EJB3.0中,开发者可以使用注解...

    EJB3.0 - 学习笔记

    EJB 3.0 版本引入了许多改进,简化了API,降低了学习曲线,使其更易于使用。 在MVC(模型-视图-控制器)架构中,EJB 主要用于开发业务层。它负责处理数据和业务逻辑,而视图层则展示数据,控制器则协调视图和模型...

    ejb3.0_培训笔记(达内).

    EJB(Enterprise JavaBeans)是Java EE(Enterprise Edition)平台中的核心...在实际工作中,EJB 3.0的培训笔记(如达内的培训资料)可以帮助初学者快速掌握这些概念和实践技巧,从而更好地融入到Java EE的开发环境中。

    ejb3.0的讲义一起看

    **ejb3.0详解** EJB(Enterprise JavaBeans)是Java EE平台中的核心组件,用于构建企业级应用。EJB 3.0是其第三个主要版本,它在前两个版本的基础上进行了重大改进,旨在提高开发效率,简化API,并引入了POJO...

    EJB概述 学习笔记

    **EJB概述** Enterprise JavaBeans(EJB)是Java平台企业版(Java EE)的核心组成部分,主要用于构建可扩展、安全且事务处理...学习EJB可以帮助理解企业级应用的复杂性,同时也能更好地评估和选择现代化的开发方案。

    EJB学习笔记.doc

    【EJB学习笔记】 EJB,全称为Enterprise Java Beans,是Java平台上的一个标准,用于开发和部署服务器端的分布式组件。它基于Java语言,为创建高效能、安全且可扩展的企业级应用提供了框架。EJB规范由Java ...

    ejb3课堂笔记,适合初学者

    - **EJB3.0 编程模型**: - **注解的广泛使用**: 例如`@Stateless`、`@Stateful`、`@Singleton`等注解用于定义EJB类型。 - **生命周期管理**: 容器管理EJB实例的创建、销毁等生命周期事件。 - **依赖注入**: 通过`...

    EJB学习笔记

    本学习笔记将深入探讨EJB的概念、架构、类型以及如何在实际项目中应用它们。 EJB是一种服务器端的组件模型,它为开发人员提供了面向对象的方法来创建分布式的企业级应用。EJB容器负责管理组件的生命周期、提供安全...

    EJB学习笔记.rar

    从最初的EJB 1.0到EJB 2.x,再到EJB 3.0,其复杂性和学习曲线逐渐降低。EJB 3.0引入了注解,极大地简化了代码,并且与JPA、JSF等其他Java EE技术更好地集成。最新的EJB 3.2版本继续优化了API,提高了开发效率。 **...

    EJB学习资料

    有《Jboss EJB3.0实例教程》和《EJB3.0实例教程》两本pdf书籍,以及两本外文pdf书籍及源码,分别为ejb-3_0-fr-spec-persistence.pdf和ejb-3_0-fr-spec-simplified.pdf,以及EJB课堂笔记.doc和EJB基础.chm、EJB学习...

    ejb 学习笔记4

    ### EJB学习笔记4:深入理解实体与JPA #### 实体的概念与作用 实体,在企业级Java开发中,特别是EJB(Enterprise JavaBeans)框架下,指的是具有持久化能力的POJO(Plain Old Java Object)类。不同于实体Bean...

    JavaEE5学习笔记05-EJB之会话Bean总结

    ### JavaEE5学习笔记05-EJB之会话Bean总结 #### EJB(Enterprise JavaBeans)简介 EJB(Enterprise JavaBeans)是Java EE平台的一部分,用于开发和部署可重用的服务组件。EJB规范定义了如何编写、部署以及管理企业...

    j2ee学习笔记.rar

    本学习笔记将聚焦于Java EE的核心技术和组件,包括Struts、JSTL、Spring以及EJB 3.0,这些都是在实际开发中广泛使用的框架和工具。 首先,Struts是Apache软件基金会的一个开源项目,主要作为MVC(Model-View-...

    EJB随堂笔记正式版(达内).rar

    EJB 3.0引入了注解,大大减少了XML配置,使得EJB更加易用。EJB 3.1和3.2继续优化,支持轻量级的会话Bean和更灵活的部署选项。 总的来说,EJB是Java EE框架中处理企业级服务的核心组件,它提供了强大的功能,如事务...

    程祖红达内EJB课堂笔记完全版.doc

    2. 第一个EJB:学习EJB的编程步骤,特别是EJB3.0的编程模型。 3. 会话Bean:掌握两种会话Bean(Stateful和Stateless)的创建和使用。 4. 会话Bean作为Web服务:学习如何将EJB发布为Web服务。 5. 实体基础:理解JPA...

    AnyFo - EJB 3葵花宝典.doc

    在技术总述部分,笔记首先阐述了EJB 3.0作为Java EE平台的核心组件之一,是如何简化企业级应用开发的。EJB 3.0引入了许多改进,如注解驱动的编程模型,降低了开发者的门槛,使得开发更加高效和直观。 开发环境的...

Global site tag (gtag.js) - Google Analytics