一 Ejb服务端
1 整个服务端结构
2 代码
User.java
public class User {
private int id;
private String username;
private String password;
public int getId(){
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
UserManager.java
public interface UserManager {
public void addUser(User user);
public String sayHello(String name);
}
import javax.ejb.Stateless;
import javax.jws.WebMethod;
import javax.jws.WebService;
@Stateless
@WebService
public class UserManagerBean implements UserManager{
@WebMethod
public void addUser(User user) {
System.out.println("User[username="+user.getUsername()+"已经被成功保存]");
}
@WebMethod
public String sayHello(String name) {
return "你好,"+name;
}
}
二 客户端
1 首先在jboss中发布 ejb服务端 项目,得到webservice的wsdl文件
2 新建客户端(java项目),用 jdk自带工具生成客户端代码
参考 webService学习3:客户端生成webservice代码
生成效果如下
进行测试
Client.java
import ejb.learning.User;
import ejb.learning.UserManagerBean;
import ejb.learning.UserManagerBeanService;
public class Client {
public static void main(String args[]){
UserManagerBeanService service = new UserManagerBeanService();
UserManagerBean userManagerBean = service.getUserManagerBeanPort();
String sayHelloResult = userManagerBean.sayHello("zhangsan");
System.out.println("sayHelloResult = " + sayHelloResult);
User user= new User();
user.setUsername("张三");
user.setPassword("password");
System.out.println("增加用户结果");
userManagerBean.addUser(user);
}
}
测试结果
客户端
sayHelloResult = 你好,zhangsan
增加用户结果
服务器端
22:50:28,462 INFO [STDOUT] User[username=张三已经被成功保存]