EJB学习笔记

FAQ
    

1.相比其他轻量级框架,EJB有哪些优势和弊端?
A:
优势是①分布式调用。EJB对象都是通过JNDI来查找和调用的。当然,这些对象可以是Local的也可以是Remote的。
        
②实例池管理。这个功能目前已经没有多大必要和优势。

 

2.EJB的目标说: EJB是为了让开发人员将注意力集中在业务逻辑,而非系统级的问题。那么,前者重要还是后者重要呢?前者偏重业务,例如做梳理需求的任务。后者偏重技术。

 

3.EJB除了提供AOP声明式事物,还提供了注入的功能吗?
A:
通过xml配置,例如"<resource-ref>",可以注入其他组件。

 

4.客户端都是通过JNDI获取EJB组件吗?
A:
是的。因为分布式组件以及交由EJB容器来管理是EJB的目标。不仅是SessionBeanMDB,EntityBean也是先通过JNDI查找到 Home对象实例(例如“ProductHome”),然后再通过createfindByName等方法获得EntityBean

 

5.EJB2.0 主要有哪些配置文件?分别是配置什么信息?
A: ejb-jar.xml
和厂商特定的配置文件(例如sun-ejb-jar.xml或者weblogic-ejb-jar.xml)

 

6.EJB2.0的组件如何发布成webservice
A:
需要提供wsdl文件,并定义webservices.xml文件。

 

7.JNDI有什么命名规范?

 

8.EJB组件的调用时,Local接口跟Remote接口的区别。

A: Local——客户端跟EJB容器必须在同一个vm中。
   Remote——
客户端跟EJB容器可以在不同vm中。例如用tomcat下的web应用客户端去调用weblogic下的ejb组件。

 

9.SLSB分别在EJB2EJB3中,服务器端开发和客户端调用的区别?

A  服务器端——

    Ejb2上的区别是实现的接口(javax.ejb.EJBObjectjavax.ejb.EJBLocalObject)不一样。Ejb3上的区别只是在annotation上。

    客户端调用——
    Ejb2
上的客户端调用区别在,EJBHomeEJBLocalHome。(而EJB3不需要Home接口来创建)Ejb3上的客户端调用没有区别。当然只有在同一VM中才能调用Loca接口的EJB

 

   Client的调用:
     1. SLSB
的调用(在weblogic环境下):

  Properties env = new Properties();

       env.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");

       env.put(Context.PROVIDER_URL,"t3://localhost:7001");

       return env;

 

  InitialContext ctx = new InitialContext(env);

  MySessHome home = (MySessHome) ctx.lookup("MyBisonSessionBean");

  MySess sess = home.create();

  String result = sess.foo("params");

 

2. SLSB的调用(在jboss环境下):

       Properties props = new Properties();

       props.setProperty("java.naming.factory.initial", "org.jnp.interfaces.NamingContextFactory");

       props.setProperty("java.naming.provider.url", "localhost:1099");

       props.setProperty("java.naming.factory.url.pkgs", "org.jboss.naming");   

 

       InitialContext ctx;

       try {

           ctx = new InitialContext(props);

           LocalHelloWorld helloworld = (LocalHelloWorld) ctx.lookup("LocalHelloWorldBean/local");

           out.println(helloworld.SayHello("佛山人"));

       } catch (NamingException e) {

           out.println(e.getMessage());

       }

 

 

    EAR包的包结构:
    

无论是.ear包还是.jar包 还是.war包,其下都有相应的META-INF文件夹。

其中.ear包下的META-INF文件夹下有application.xml文件。

 

 

 

 

 

资源下载链接为: https://pan.quark.cn/s/502b0f9d0e26 计算机体系结构是计算机科学与技术领域极为关键的课程,它聚焦于硬件与软件的交互以及计算系统设计优化的诸多方面。国防科技大学作为国内顶尖工科院校,其计算机体系结构课程备受瞩目。本课件汇集了该课程的核心内容,致力于助力学生深入探究计算机工作原理。 课件内容主要涵盖以下要点:其一,计算机基本组成,像处理器(CPU)、内存、输入/输出设备等,它们是计算机硬件系统基石,明晰其功能与工作模式对理解计算机整体运行极为关键。其二,指令集体系结构,涵盖不同指令类型,如数据处理、控制转移指令等的执行方式,以及 RISC 和 CISC 架构的差异与优劣。其三,处理器设计,深入微架构设计,如流水线、超标量、多核等技术,这些是现代处理器提升性能的核心手段。其四,存储层次结构,从高速缓存到主内存再到外部存储器,探究存储层次缘由、工作原理及数据访问速度优化方法。其五,总线和 I/O 系统,学习总线协议,了解数据、地址、控制信号在组件间传输方式,以及 I/O 设备分类与交互方式,如中断、DMA 等。其六,虚拟化技术,讲解如何利用虚拟化技术使多个操作系统在同硬件平台并行运行,涉及虚拟机、容器等概念。其七,计算机网络与通信,虽非计算机体系结构主体,但会涉及计算机间通信方式,像 TCP/IP 协议栈、网络接口卡工作原理等。其八,计算机安全与可靠性,探讨硬件层面安全问题,如物理攻击、恶意硬件等及相应防御举措。其九,计算机体系优化,分析性能评估指标,如时钟周期、吞吐量、延迟等,学习架构优化提升系统性能方法。其十,课程习题与题库,通过实际题目训练巩固理论知识,加深对计算机体系结构理解。 国防科大该课程不仅理论扎实,还可能含实践环节,让学生借助实验模拟或真实硬件操作深化理解。课件习题集为学习者提供丰富练习机会,助力掌握课程内容。共享
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值