zoukankan      html  css  js  c++  java
  • WebService小白学习 之 处理JavaBean以及复合类型,list (4)

    上篇 WebService小白学习 之 开发WebService客户端,使用cxf工具生成文件

    本篇WebService处理JavaBean以及复合类型,list

    实现过程:

    1、在服务端项目,创建包com.gx.entity,再创建User.java,Role.java

    package com.gx.entity;
    
    public class User {
    	
    	private Integer id;
    	private String username;
    	private String password;
    	
    	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 String getPassword() {
    		return password;
    	}
    	public void setPassword(String password) {
    		this.password = password;
    	}
    	
    }
    
    package com.gx.entity;
    
    public class Role {
    	
    	private Integer id;
    	private String roleName; //角色名称
    	
    	public Role() {
    		super();
    	}
    	
    	public Role(Integer id, String roleName) {
    		super();
    		this.id = id;
    		this.roleName = roleName;
    	}
    
    	public Integer getId() {
    		return id;
    	}
    	public void setId(Integer id) {
    		this.id = id;
    	}
    	public String getRoleName() {
    		return roleName;
    	}
    	public void setRoleName(String roleName) {
    		this.roleName = roleName;
    	}
    
    }
    

    2、在IHelloWorld.java(原服务端项目的)添加方法声明getRoleByUser(User user)

    package com.gx.webservice;
    
    import java.util.List;
    
    import javax.jws.WebService;
    
    import com.gx.entity.Role;
    import com.gx.entity.User;
    
    @WebService
    public interface IHelloWorld {
    	
    	public String say(String str);
    	
    	public List<Role> getRoleByUser(User user);//通过用户获取角色
    
    }
    

    3、在HelloWorldImpl.java(原服务端项目的)添加实现方法,模拟数据

    package com.gx.webservice.impl;
    
    import java.util.ArrayList;
    import java.util.List;
    
    import javax.jws.WebService;
    
    import com.gx.entity.Role;
    import com.gx.entity.User;
    import com.gx.webservice.IHelloWorld;
    
    @WebService
    public class HelloWorldImpl implements IHelloWorld{
    
    	public String say(String str) {
    		return "hello "+str;
    	}
    
    	@Override
    	public List<Role> getRoleByUser(User user) {
    		//模拟 数据
    		List<Role> rolelist = new ArrayList<>();
    		if(user!=null){
    			if(user.getUsername().equals("sa") && user.getPassword().equals("123")){
    				rolelist.add(new Role(1, "技术总监"));
    				rolelist.add(new Role(2, "架构师"));
    			}else if(user.getUsername().equals("zj") && user.getPassword().equals("123")){
    				rolelist.add(new Role(3, "程序员"));
    			}
    		}
    		return rolelist;
    	}
    
    }
    

    4、客户端项目重新生成文件,在上篇已经说过了,忘记看这里,注意要启动服务。

    5、客户端测试Client.java

    package com.gx.webservice;
    
    import java.util.List;
    
    public class Client {
    	
    	public static void main(String[] args) {
    		
    		IHelloWorldService service = new IHelloWorldService();
    		IHelloWorld helloworld = service.getIHelloWorldPort();
    		//System.out.println(helloworld.say("zj"));
    		
    		User user = new User();
    		user.setUsername("sa");
    		user.setPassword("123");
    		List<Role> rolelist = helloworld.getRoleByUser(user);
    		for (Role role : rolelist) {
    			System.out.println(role.getId()+","+role.getRoleName());
    		}
     		
    	}
    	
    }
    

    结果:

    下篇

    WebService小白学习 之 处理一些Map等复杂类型

  • 相关阅读:
    DUILib的代码分析
    source$表坏块
    树莓派风扇自动控制随想
    给qq机器人加上bing搜索
    龙芯fedora28日常生存指南
    攻防世界 when_did_you_born
    部署PWN题Docker环境
    NPUCTF2020 EzRSA
    金融密码杯 The Art of War
    Machine Learning & Deep Learning Fundamentals
  • 原文地址:https://www.cnblogs.com/qq1995/p/10358987.html
Copyright © 2011-2022 走看看