权限控制 控制单个类的个别属性的读写操作
实体类有对应的数据库表,实体类对应的表关联属性表(属性表里有对应的类表的标识,也有对应实体的id),属性表有对应的属性值表  这个在代码上要怎么实现 暂时有点想不通 大家一起来讨论下哈 

解决方案 »

  1.   

    控制到字段读写就蛋疼了,真要做就有两个地方可以入手
    1.sql,过滤掉具体需要控制权限的字段,跟具体持久化框架相关
    2.java代码去掉,具体跟你框架相关,但场景较多,如果方便还是改sql的好
      

  2.   

    权限控制 控制单个类的个别属性的读写操作
    实体类有对应的数据库表,实体类对应的表关联属性表(属性表里有对应的类表的标识,也有对应实体的id),属性表有对应的属性值表  第一步:设置一张权限表,包含:用户、属性、表名 三个主要字段
    第二步:实体类里面属性全部设置成private,禁止外部修改
    第三步:默认set方法中设置成private,重写set方法,增加一个用户名参数
    第四步:根据实体类名跟属性名,用户名去查对应权限表,查询到就去调用默认set方法修改值,查询不到,则提示无权限简单思路,不知道符不符合你的要求
      

  3.   

    楼上说用对set方法私有化那个 我觉的您说的方法不可行。您这样只是在代码层进行了不可修改的限制。前端传对象过来不需要后台修改,对数据库修改。就没起到权限控制的效果
      

  4.   

    1、建立一个角色表,创建一个管理属性的读写操作角色,example:  属性管理
    2、建立一个用户角色关联表,存储用户分配的角色关系,表字段:用户Id,角色Id
    3、在应用层controller处理表数据操作的时候根据此用户的权限是否有无,进行该字段的读写操作如果所有字段可以在后台进行管理操作,可以考虑属性权限表进行处理。