我正在尝试编写一个简单的Web服务,它将获取参数并返回三个不同的参数。
我可以通过以下代码实现这一点。但问题是setter方法也包含在web服务中。例如,我想保护"setTransactionID"在webservice方法中被排除在外。如何修改代码?
package OKS;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;
@WebService
public class CheckCredit {
@WebMethod
public Result GetResult(@WebParam(name="username") String username,@WebParam(name="password") String password) {
Result res= new Result();
if ((username!=null)&&(password!=null)) {
if ((username.equals("xyz"))&&(password.equals("123"))) {
res.setResultType(1);
res.setTransactionID("tr12128");
res.setCredit(1220);
} else {
res.setResultType(0);
res.setTransactionID("cr12128");
res.setCredit(0);
}
} else {
res.setResultType(0);
res.setTransactionID("er12128");
res.setCredit(0);
}
return res;
}
}
结果类别
package OKS;
public class Result {
int resultType;
String TransactionID;
int Credit;
public void setResultType(int resultType) {
this.resultType = resultType;
}
public void setTransactionID(String transactionID) {
TransactionID = transactionID;
}
public void setCredit(int credit) {
Credit = credit;
}
public int getResultType() {
return resultType;
}
public String getTransactionID() {
return TransactionID;
}
public int getCredit() {
return Credit;
}
}
此服务编译良好,工作正常。但它也包括WebService中的setter方法。如何排除setter方法?
我认为您只是不想在输出中获得TransactionId。如果是,则不只是在get方法上使用@XmlTransient属性。