?
ejb中的3種bean:
?
?
什么是會(huì)話bean?
編寫第一個(gè)ejb3的會(huì)話bean:
步驟:
1.ejb企業(yè)級(jí)開(kāi)發(fā)是面向接口編程的,我們完成第一個(gè)HelloWorld的例子,首先寫接口,也就是遠(yuǎn)程接口(服務(wù)器端)
package cn.com.xinli.ejb3;
public interface HelloWorld
{
public String sayHello(String name);
}
?
?
2.在寫接口的實(shí)現(xiàn)類(服務(wù)器端)
package cn.com.xinli.ejb3.impl;
import javax.ejb.Remote;
import javax.ejb.Stateless;
import cn.com.xinli.ejb3.HelloWorld;
/*表明這個(gè)ejb是無(wú)狀態(tài)的會(huì)話bean*/
@Stateless
/*聲明這個(gè)ejb的遠(yuǎn)程接口是HelloWorld,必須要寫這個(gè)注解,不寫調(diào)用的時(shí)候會(huì)報(bào)錯(cuò)*/
@Remote(HelloWorld.class)
public class HelloWorldBean implements HelloWorld
{
public String sayHello(String name)
{
return name+",你好,世界!";
}
}
?
3. 開(kāi)發(fā)客戶端
jndi 環(huán)境 信息說(shuō)明:
?
?
package cn.com.xinli.ejb3.test;
import java.util.Hashtable;
import java.util.Properties;
import javax.naming.Context;
import javax.naming.InitialContext;
import cn.com.xinli.ejb3.HelloWorld;
public class EjbClient
{
?public static void main(String[] args)
?{
??Hashtable evn = new Hashtable();
??evn.put(Context.PROVIDER_URL, "127.0.0.1:1099");
??evn.put(Context.INITIAL_CONTEXT_FACTORY, "org.jnp.interfaces.NamingContextFactory");
??
//??Properties properties=new Properties();
//??properties.setProperty("java.naming.factory.initial", "org.jnp.interfaces.NamingContextFactory");
//??properties.setProperty("java.naming.provider.url", "localhost:1099");
?
??try
??{
???InitialContext context=new InitialContext(evn);
???/**
??? * ejb3比ejb2有可地方比較好,就是在jndi查找的時(shí)候不用我們?cè)趯慹jb-jar.xml
??? * 只要我們按照jndi名字的查找規(guī)范就可以找到遠(yuǎn)程接口了
??? *
??? */?????????????????????????????????????????????
???HelloWorld helloword=(HelloWorld)context.lookup("HelloWorldBean/remote");
???System.out.println(helloword.sayHello("huxl"));
??} catch (Exception e)
??{
???// TODO Auto-generated catch block
???e.printStackTrace();
??}
??
?}
}
?
4.部署服務(wù)器端,就是吧項(xiàng)目打成一個(gè)jar包放在jboss的D:\jboss-4.2.3.GA\server\default\deploy下
?
5.結(jié)果:
?
huxl,你好,世界!
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元

