求救:SQL面试题 EJB试题

本文详细介绍了EJB架构的基本概念,包括其定义、类型、组件结构等,并通过具体实例展示了如何利用EJB进行数据库操作及事务处理。同时,文章还探讨了EJBContext的作用以及如何在实际开发中运用SessionBean和EntityBean。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

表g_applydetail(g_applyno, g_name, g_cardid)
g_applyno   g_name  g_cardid
001         张三    350124
002         李四    370103
003         王五    430105
004         张三    350124
找出同一个g_cardid出现记录个数大等于2的g_cardid及出现的次数?

select g_cardid, num=count(g_cardid) from g_applydetail group by g_cardid having count(g_cardid)>1

 

 create table g_applydetail(g_applyno char(3), g_name nvarchar(10), g_cardid varchar(10))
insert g_applydetail select '001',         '张三',    '350124'
union all select '002',         '李四',    '370103'
union all select '003',         '王五',    '430105'
union all select '004',         '张三',    '350124'

select g_cardid, num=count(g_cardid)
from g_applydetail
group by g_cardid
having count(g_cardid)>1

---result
g_cardid   num        
---------- -----------
350124     2

(1 row(s) affected)

select g_cardid, count(g_cardid) as count
from g_applydetail
group by g_cardid
having count(g_cardid)>=2

select g_cardid,  count(g_cardid) as count from g_applydetail group by g_cardid having count(g_cardid)>1

 

EJB试题
选择填空:
   每道选择题可能有多个选项,选出全部正确答案得分,否则不得分。
1.EJB是:
A. 服务器端产品                 B. 服务器端组件开发架构
C. 特殊类型的JavaBean           D. 用于实现商业逻辑
2.EJB架构主要使用的设计模式是:
A. Proxy                         B. Strategy
C. Delegate                       D. Responsibility Chain
3.EJB的类型主要有:
A. Command Bean                 B. Data Access Bean
C. Session Bean                   D. Entity Bean
E. Java Bean                      F. Message-Driven Bean
4.Session Bean的组成可以包括:
A. Home interface                 B. A thread class
C. Remote interface                D. Primary key class
E. Local home interface             F. Local interface
G. ejb-jar.xml                     H. application.xml
I. Bean class
5.Entity Bean的组成可以包括:
A. Home interface                 B. web.xml
C. Remote interface                D. Primary key class
E. Local home interface             F. Local interface
G. ejb-jar.xml                     H. ejb.xml
I. Bean class
6.Session Bean按是否跟踪客户状态分:
A. State Session Bean              B. Stateless Session Bean
C. BMT Session Bean              D. CMT Session Bean
E. Stateful Session Bean
7.Entity Bean根据数据持久性的处理方式分:
A. BMT Entity Bean               B. BMP Entity Bean
C. CMP Entity Bean               D. CMT Entity Bean
8.Entity Bean的事务处理方式可采用:
A. BMP                        B. BMT
C. CMT                        D. CMP
9.Session Bean和Message-Driven Bean的事务处理方式可采用:
A. BMT和CMP                 B. BMT和CMT
C. BMP和CMP                 A. BMP和CMT
10.申明方式的事务处理的属性有:
A. Supports                     B. Should
C. NotSupported                 D.Required
E. Maybe                       F. RequiresNew
G. Mandatory                    H. Never


11.Local interface引入的目的是:
A. 本地客户程序才能调用EJB    B. 为了性能
C. 解决Session Bean与Enity Bean之间的交互
12.对于Session Bean和Entity Bean, 为远程用户定义的home interface必须继承___________, component interface必须继承________;为本地客户定义的home interface必须继承___________, component interface必须继承________;Session Bean的bean class必须实现__________, Entity Bean的bean class 必须实现___________。
A. EJBLocalObject               B. EJBHome
C. SessionBean                  D. EJBOBject
E. EntityBean                   F. EJBLocalHome
13. Message-Driven Bean的Bean Class必须实现_________和________; bean class中服务方法的签名是_________。
A. onMessage                   B. MessageListener
C. MessageDrivenBean
14. 对于Session Bean和Entity Bean, 无论是remote home或是local home都必须定义create方法, 该方法都会抛出的异常是________, remote home中create方法还会抛出异常________。EntityBean的home interface中findByPrimaryKey必须抛出异常________。
A. FinderException               B. RemoteException
C. CreateException

15. Session Bean的home interface中可定义:
A. create method(s)               B. Home method(s)
D. finder method(s)              E. ejbSelect method(s)
16.Entity Bean的home interface中可定义:
A. create method(s)               B. Home method(s)
D. finder method(s)              E. ejbSelect method(s)
17.EJBContext是EJB与EJB Container沟通的桥梁,在EJBContext中定义了与安全相关的两个方法是________和________, 与事务相关的三个方法是________、________和________, 与EJB的组成相关的两个方法是________和________, 与定时服务相关的方法是________。
A.  getEJBLocalHome               B. getRollbackOnly
C.  getCallerPrincipal                D. getEJBHome
E.  isCallerInRole                   F. setRollbackOnly
F.  getTimerService
18. 有状态Session Bean的bean class中实现了两个方法________和________用来完成状态的swap in/out。
19.Entity Bean的bean class中实现了两个方法________和_______来同步内存与数据库的数据。
20.Entity Bean的home interface中的create方法会对应bean class中的________和_________方法。
21. Entity Bean的home interface中的getTotal方法会对应bean class中的________方法。
22. 以下是对CMP Entity Bean Account的部分描述:
<entity>
  <ejb-name>AccountEJB</ejb-name>
  <local-home>model.entity.AccountLocalHome</local-home>
  <local>model.entity.AccountLocal</local>
  <persistence-type>Container</persistence-type>
   <prim-key-class>java.lang.String</prim-key-class>
   <reentrant>false</reentrant>
   <cmp-version>2.x</cmp-version>
   <abstract-schema-name>Account</abstract-schema-name>
     <cmp-field><field-name>id</field-name></cmp-field>
     <cmp-field><field-name>name</field-name></cmp-field>
<cmp-field><field-name>balance</field-name> </cmp-field>

</entity> 
a.写出根据名字查找帐户的java.util.Collection findByName(String name)对应的ejb query语句:_____________________________________________
b.写出统计所有Account的balance之和的double ejbSelectTotalBankValue()对应的ejb query语句:
C. 写出查找比某一个人钱多的所有帐户的java.util.Collection findRicherThan(String name)对应的ejb query 语句:

23.画出Stateless Session Bean的状态转化图(Statechart diagram),标明状态名和转化所调用的方法

 

 


24. 画出Entity Bean的状态转化图(Statechart diagram),标明不同状态转化所调用的方法

 

 

 

25.在Entity Bean的关系管理中,________关系需要casecade delete, ________不能用级连删除。
A. Aggregation                 B. Composition
26.在编写Message-Driven Bean的实践中,我们使用如下的编程努力来防止有毒消息的产生:
A. 用Container管理事务       B.用Bean管理事务
C. 不抛出异常                D.只抛出RuntimeException
27.对DataSource的引用属于________, 对TopicConnectionFactory的引用属于________, 对Queue的引用属于________, 远程客户访问EJB属于________, Session Bean往往通过JNDI查找Entity Bean的Local Home属于________。对基本数据类型的封装类型的对象通过JNDI获得使用________.
A. Environment entry           B. Resource environment reference
C. EJB local reference         C. Resource reference
D. EJB reference
28.在weblogic console上以__________________________的顺序配置JMS
A. 配置JMS Servers                 B. 配置Connection Factories
C. 配置Destionations                D. 配置JMS Stores

 

29.在weblogic上可以部署的模块有:
A. Javabean module                  B. Web module
C. Enterprise application module        D. EJB module
E. Resource adapter moudle
30.weblogic与EJB相关的部署描述文件有:
A. ejb-jar.xml                     B. weblogic-ejb-jar.xml
C. weblogic.xml                   D. weblogic-cmp-rdbms-jar.xml
实验题:
1.在weblogic上配置一个DataSource,它的JNDI name是jdbc/accountDB, 通过该数据源可以连接到oracle/pointbase中的一个数据库。该DataSource将会作为CMP Enity Bean的数据源。
2.按以下参数配置weblogic JMS:
Type                      JNDI Name
----------------------------------------------------------
TopicConnectionFactory       jms/TCFactory
QueueConnectionFactory      jms/QCFactory
Topic                      jms/customerTopic
Queue                     jms/customerQueue
3.对于银行中的帐户管理:一个用户可以开设多个帐户,对于每个帐户可以有存款(deposit)和取款(withdraw)的操作。对帐户的每个操作都必须记录下来。每个这些操作由出纳(Teller)来完成。相应的实体的属性用java类型表示如下:
 Customer: 
customerid:  int     //标识
name: String
address: String
Account:
accountid:  int       //标识
customer:  Customer
balance:  BigDecimal
TransRecord:
account:  Account
amt:      BigDecimal
transType:  String{“deposit” | “withdraw”}
transid:     java.sql.TimeStamp      //标识
任务:
a.写出建表的sql脚本
b.编写三个CMP Entity Bean: CustomerEJB, AccountEJB和TransRecordEJB和一个Session Bean: TellerEJB来实现以下的功能:
createCustomer
createAccount
deposit
withdraw
c.写一个简单的客户端验证以上功能
d.以上功能必须能够演示
4. 编写一个JMS的客户端CustomerJMSClient,将一个Customer类型对象发送到一个Topic 目的地jms/customerTopic;一个MDB CoutomerMDB正好处理此目的地上的消息,它将获取的Customer对象的属性转化为一个串,然后将这个串发送到一个Queue目的地jms/customerQueue, CustomerJMSClient从这个Queue上接收到返回消息后将结果打印到控制台。所有程序必须能够演示。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值