Servlet成员字段可能允许一个用户查看其它用户的数据

发布于 2021-11-26 05:50:23 字数 2053 浏览 802 评论 3

@SuppressWarnings("serial")
@Scope("prototype")
@Controller(value="powerRoleAction")
public class RoleAction extends BaseAction {
 
	private String roleId;
	
	@Resource(name="powerRoleService")
	private RoleService powerRoleService;
	
	private AdtFsRoleVO adtFsRoleVO;
	
	/** 
	  * @Title: index 
	  * @Description:角色信息模块索引函数
	  * @param @return
	  * @return String
	  * @throws 
	  */
	public String index(){
		return SUCCESS;
	}
	
	/** 
	  * @Title: getItems 
	  * @Description:获得角色列表 
	  * @param 
	  * @return void
	  * @throws 
	  */
	public void getItems(){
		Pagination pagination = null;
		try{
			if(adtFsRoleVO==null){
				adtFsRoleVO =new AdtFsRoleVO();
			}
			pagination = this.powerRoleService.getPageList(adtFsRoleVO, page, rows, sort, order);
		}catch(Exception e){
			e.printStackTrace();
		}
		List<AdtFsRoleVO> roleList = pagination.getList();
		JsonConfig config = new JsonConfig();   
		 config.setIgnoreDefaultExcludes(false);      
		 config.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT);    
//		 config.registerJsonValueProcessor(Date.class,new DateJsonValueProcessor("yyyy-MM-dd")); //date processor register   
		 config.setExcludes(new String[]{//只要设置这个数组,指定过滤哪些字段。   
		   
		 }); 
		try {
			String json=JSONSerializer.toJSON(roleList,config).toString();
			outJsonPlainString(response,"{"total":" + pagination.getTotalCount() + ","rows":"+json + "}");
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

公司代码扫描时报这样的错 : 类RoleAction  是独立的,因此成员字段adtFsRoleVo 可以在各个用户之间共享;导致结果是一个用户可以查看其它用户的数据。

try{
			if(adtFsRoleVO==null){
				adtFsRoleVO =new AdtFsRoleVO();
			}
			pagination = this.powerRoleService.getPageList(adtFsRoleVO, page, rows, sort, order);



说是   报这段adtFsRoleVO = new AdtFsRoleVO();的错误。。。

我是怎么看也感觉这没错,不知各位是否有很好的解决方法。。。。。。





如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

把回忆走一遍 2021-11-27 18:32:50

恩恩。。我也是觉得这是没问题的,现在有点怀疑公司代码扫描系统的规则了,难道基于注解开发他就扫不出来,我去试试把scope恢复到配置文件中。。

风透绣罗衣 2021-11-27 17:49:18

回复
代码检查始终是的死的。做参考就好, 不过我建议你把scope删掉,成员变量也删掉,用method内变量来处理就好。。。

南冥有猫 2021-11-27 13:07:32

回复
恩恩。。我去试试

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文