我使用Spring框架使用RESTFUL webservices。使用webservices返回的数据在用户界面上显示一些信息。有一个webservice,它从数据库中获取用户名和角色。对于特定用户,我希望所有的Web服务以####,####
的形式显示数据,用于名字,姓氏; ##/##/####
出生日期等等。由于我使用JDBC连接到数据库,这就是我在想的事情:
我应该考虑传递一个额外的参数(可能为所有其他用户发送值0
或1
; 0
,为我要隐藏的用户发送1
每个GET
Web服务的信息),以便在从JDBC代码部分的数据库中获取数据时,我可以检查该标志是否设置为1
或0
基于此,我可以在JDBC代码中执行类似的操作:
// Code for a case when flag is set to `0`. Hence retrieving information from the database.
while(rs.next()) {
EmployeeList empList = new EmployeeList();
empList.setEmpId(empId);
empList.setEmployeeName(rs.getString("name"));
employeeList.add(empList);
}
// Code for a case when flag is set to `1`. Hence hiding information and not retrieving information from the database.
while(rs.next()) {
EmployeeList empList = new EmployeeList();
empList.setEmpId(empId);
empList.setEmployeeName("####,######");
employeeList.add(empList);
}
我想知道,如果这是实现我的任务的适当方式,还是有其他方法?
编辑:有关我的要求的更多说明:
我在UI中使用jqxWidget来显示我从JSON格式的RESTFUL Web服务获取的信息。例如,让我们考虑this example和屏幕截图,以便更好地了解我的要求:
1)假设我从JSON响应中获取了所有信息,我将在jQXWidget中填充,如上面的屏幕截图所示。
2)在上面的小部件中,我想隐藏说,例如,名字,姓氏和数量,如下所示:
First Name = XXXXX
Last Name = XXXXX
Quantity = ####
在我的应用程序中,如果用户单击特定行,则会显示一个新页面,其中包含一些其他信息。单击后,将调用新的Web服务集,这些Web服务将First Name
,Last Name
和Quantity
作为输入参数。我担心的是,如果我以某种方式将First Name
替换为XXXXX
,将Last Name
替换为XXXXX
,将Quantity
替换为####
,则用户点击窗口小部件的任何一行,即下一组Web服务
将作为输入获得XXXX
和####
,最终将失败。如果我的理解到目前为止不正确,请纠正我。
感谢
我使用的是Spring 4.2.5版本。
答案 0 :(得分:0)
这取决于您想要实现的隐藏信息类型。通常,您不应手动执行此操作。
您可以使用基于角色的授权。确切的细节取决于您使用的Web服务框架。
对于spring MVC,你可以使用类似的东西: