所以我有以下内容:
public interface MyService {
@PreAuthorize("hasPermission(T(Name).OBJ, T(Action).GET)")
MyObj getObj(String id);
}
@Service
public class MyServiceImpl implements MyService {
@Override
@Transactional
public MyObj getObj(String id){
return dao.get(id);
}
}
@Controller
public class MyController {
@Resource(name="myServiceImpl")
private MyService service;
public MyObj getObj(String id){
return service.getObj(id);
}
}
调用该方法时getObj(id)
,首先将所有内容包装在事务中,然后检查授权。是否可以保留此配置并首先让 Spring 检查授权,然后在用户获得授权时创建事务?
我花了很多时间寻找答案,但找不到任何东西。