使用CXF开发WebService程序的总结(四):基于bean的客户端和服务端代码的编写
1. 在原服务端项目 ws_server中添加两个bean
1.1 添加两个类 User 和 Clazz
package com.lonely.pojo;
public class User {
private Integer id;
private String username;
private Integer classId;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public Integer getClassId() {
return classId;
}
public void setClassId(Integer classId) {
this.classId = classId;
}
public User() {
super();
// TODO Auto-generated constructor stub
}
public User(Integer id, String username, Integer classId) {
super();
this.id = id;
this.username = username;
this.classId = classId;
}
}
package com.lonely.pojo;
public class Clazz {
private Integer classId;
private String className;
public Integer getClassId() {
return classId;
}
public void setClassId(Integer classId) {
this.classId = classId;
}
public String getClassName() {
return className;
}
public void setClassName(String className) {
this.className = className;
}
public Clazz() {
super();
// TODO Auto-generated constructor stub
}
public Clazz(Integer classId, String className) {
super();
this.classId = classId;
this.className = className;
}
}
1.2 在原服务接口 HelloWs中添加一个 方法/** * 根据班级id 查看该班级下的所有学生 * * @param clazz * @return */ public List<User> findUsersByClassId(Clazz clazz);1.3 在实现类中模拟实现
@Override
public List<User> findUsersByClassId(Clazz clazz) {
// 这里模拟数据库查询
if (clazz != null && clazz.getClassId() != null) {
List<User> users = new ArrayList<>();
if (clazz.getClassId() == 1) {
users.add(new User(1, "独孤", 1));
users.add(new User(2, "呵呵", 1));
} else if (clazz.getClassId() == 2) {
users.add(new User(3, "啧啧", 2));
}
return users;
}
return null;
} 1.4 重新发布2. 客户端调用
2.1 重新生成客户端代码 使用命令 wsdl2java +地址+?wsdl
2.2 测试
package com.lonely.client;
import java.util.List;
import com.lonely.server.Clazz;
import com.lonely.server.HelloWs;
import com.lonely.server.HelloWsService;
import com.lonely.server.User;
public class HelloInvoking {
public static void main(String[] args) {
HelloWsService helloWsService = new HelloWsService();
HelloWs helloWs = helloWsService.getHelloWsPort();
// System.out.println(helloWs.sayHelloWs("dugu"));
Clazz clazz = new Clazz();
clazz.setClassId(1);
List<User> list = helloWs.findUsersByClassId(clazz);
for (User user : list) {
System.out.println(user.getUsername() + ":" + user.getClassId());
}
}
} 2.3 查看结果,至此 基于 普通bean的调用完成
浙公网安备 33010602011771号