博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Stand-alone remote client demo
阅读量:4925 次
发布时间:2019-06-11

本文共 3247 字,大约阅读时间需要 10 分钟。

RandomQuoteBean.java

 

ExpandedBlockStart.gif
View Code
 1 
/*
 2 
 * To change this template, choose Tools | Templates
 3 
 * and open the template in the editor.
 4 
 
*/
 5 
package beans;
 6 
 7 
import java.util.Random;
 8 
import javax.ejb.Stateless;
 9 
10 
/**
11 
 *
12 
 * 
@author
 teemu
13 
 
*/
14 @Stateless
15 
public 
class RandomQuoteBean 
implements RandomQuoteBeanRemote {
16 
17     
private String[] quotes = 
new String[]{
18         "640K ought to be enough for anybody. --Bill Gates in 1981",
19         "The Internet is so big, so powerful and pointless that for some people it is a complete substitute for life. --Andrew Brown",
20         "I think there is a world market for maybe five computers. --Thomas Watson in 1943",
21         "Computers are useless.  They can only give you answers. -- Pablo Picasso",
22         "Never trust a computer you can’t throw out a window. -- Steve Wozniak",
23         "There are two major products that come out of Berkeley: LSD and UNIX.  We don’t believe this to be a coincidence. --Jeremy S. Anderson",
24         "The bulk of all patents are crap.  Spending time reading them is stupid.  It’s up to the patent owner to do so, and to enforce them. -- Linux Torvalds",
25         "There’s an old story about the person who wished his computer were as easy to use as his telephone.  That wish has come true, since I no longer know how to use my telephone. --Bjarne Stroustrup"
26     };
27 
28     @Override
29     
public String getRandomQuote() {
30         Random r = 
new Random(System.currentTimeMillis());
31         
return (quotes[r.nextInt(quotes.length-1)]);
32     }
33 }

 

 

RandomQuoteBeanRemote.java

 

 

ExpandedBlockStart.gif
View Code
 1 
/*
 2 
 * To change this template, choose Tools | Templates
 3 
 * and open the template in the editor.
 4 
 
*/
 5 
package beans;
 6 
 7 
import javax.ejb.Remote;
 8 
 9 
/**
10 
 *
11 
 * 
@author
 teemu
12 
 
*/
13 @Remote
14 
public 
interface RandomQuoteBeanRemote {
15 
16     String getRandomQuote();
17     
18 }

 

 

 

RandomQuoteClient.java

 

 

ExpandedBlockStart.gif
View Code
 1 
/*
 2 
 * To change this template, choose Tools | Templates
 3 
 * and open the template in the editor.
 4 
 
*/
 5 
package client;
 6 
 7 
import beans.RandomQuoteBeanRemote;
 8 
import java.util.Scanner;
 9 
import java.util.logging.Level;
10 
import java.util.logging.Logger;
11 
import javax.naming.Context;
12 
import javax.naming.InitialContext;
13 
import javax.naming.NamingException;
14 
import javax.naming.NoInitialContextException;
15 
16 
/**
17 
 *
18 
 * 
@author
 teemu
19 
 
*/
20 
public 
class RandomQuoteClient {
21 
22     
/**
23 
     * 
@param
 args the command line arguments
24 
     
*/
25     
public 
static 
void main(String[] args) {
26         RandomQuoteBeanRemote bean;
27         Context context;
28         
try {
29             
30             
//
 locate the bean by using JNDI
31 
            context = 
new InitialContext();
32             Object obj = context.lookup("java:global/RandomQuoteApplication-ejb/RandomQuoteBean");
33             bean = (RandomQuoteBeanRemote) obj;
34             
35             System.out.println("Input a number indicating how many random quotes will be fetched from the bean (server).");
36             Scanner reader = 
new Scanner(System.in);
37             
38             
//
 request and print given number of quotes from the bean
39 
            
int i = reader.nextInt();
40             
for(
int j=0; j<i; j++)
41                 System.out.println(bean.getRandomQuote());
42             
43         } 
catch (NoInitialContextException nicex) {
44             nicex.printStackTrace();
45         } 
catch (NamingException nex) {
46             nex.printStackTrace();
47         }
48        
49     }
50 }

 

 

 

 

转载于:https://www.cnblogs.com/jinrize/archive/2012/04/18/2455603.html

你可能感兴趣的文章
C++ push方法与push_back方法
查看>>
Spring4笔记8--Spring与JDBC模板(IoC应用的例子)
查看>>
B. Batch Sort
查看>>
构建应用层服务
查看>>
《沉静领导》读书笔记zz
查看>>
沉浸式
查看>>
CentOS6.5下Ambari安装搭建部署大数据集群(图文分五大步详解)(博主强烈推荐)...
查看>>
weekend110(Hadoop)的 第三天笔记
查看>>
io流和序列化
查看>>
观察者模式
查看>>
【Window Power Shell】介绍与使用
查看>>
数据库 外连接于内连接
查看>>
NHibernate系列文章二十一:延迟加载
查看>>
shell 编程(1)
查看>>
asp.net 项目在 IE 11 下出现 “__doPostBack”未定义 的解决办法
查看>>
ef core 2.0 执行update-database命令时提示__EFMigrationsHistory doesn’t exist
查看>>
在项目中使用log4net记录日志
查看>>
计算几何----线段交
查看>>
重载函数的参数匹配与转换
查看>>
A. Kirill And The Game
查看>>