框架定义在持久层,除提供ORMapping功能外加点权限控制。ORMapping的代码学习iBatis和ActiveRecord的做法,可使用任意一种,想象中xml应该这样子定义
<sqlmap name="queryTable">
select c1,c2 from table where c1=:name
</sqlmap>
调用时类似:
sqlmap.execute("queryTable",name="xxx")
ActiveRecord的类似:
t=sqlmap.select("table",id="1")
t.c1="xxxx"
t.save()#t.delete()...
权限配置:
<user-group name="group1" default="deny">
<allow>
<sqlmap name="queryTable" when="param.name=='admin' or param.name='manager'" />
<table name="table" when="param.id=1" />
<!-- 其他允许访问的对象 -->
</allow>
<deny>
<!-- 其他禁止访问的对象 -->
</deny>
</user-group>
<user-group name="group2">
<extends name="group1" />
<!-- 继承其他组 -->
</user-group>
<user id="xxxx">
<!-- 与用户组的配置一样 -->
</user>
可以在sqlmap标签上配置权限,如:
<sqlmap default="deny">
<allow>
<group name="group1" /><!-- group1以及继承group1的组拥有权限 -->
<user id="xxxx" />
</allow>
<deny />
....
</sqlmap>
针对用ActiveRecord的还可以对表中数据的权限进行分配。如某个用户可以对某个表的那些行进行更新或删除,或者对某些行的某写列拥有update权限,其他则一律没有,用户组可继承多个用户组等等。。。
用sqlmap的就只能对每条命令进行限制。
对映射对象的的任何操作如果没有权限则抛出异常。
不知道大家以为如何?
分享到:
- 2009-04-24 23:24
- 浏览 1718
- 评论(8)
- 论坛回复 / 浏览 (8 / 2515)
- 查看更多
相关推荐
一款极其轻量的JAVA持久层框架,基于 SpringJdbc + freemarker 实现,具备Mybatis一样的SQL分离和逻辑标签能力,可无缝集成springboot项目。 软件开发设计:应用软件开发、系统软件开发、移动应用开发、网站开发C++...
2.持久层采用mysql数据库,对学生、用户进行数据存储。 3.编程语言用的是Python,django框架, 4.model中,设计用户模型(ID,uname,password),学生模型(id,name,sex,age,grade); 5.control层对浏览器的请求进行...
后端框架采用了base(基础类库层)、bean(后台逻辑层)、dao(数据持久层)、web(view展示层)的四层结构,代码结构清晰,高度模块化设计,使得开发起来高效、实用、可靠,并且便于扩展和维护。
16.4.8 设计Python聊天 服务器 303 16.4.9 Python聊天服务器协议 304 16.4.10 Python聊天客户端 309 16.4.11 基于select的单线程 多任务 312 16.5 其他主题 313 16.5.1 协议设计的多种考虑 313 16.5.2 对等架构 314 ...
04 做一个最简答web框架 05 MVC模式和MTV模式 06 django的一个简单应用 07 django静态文件之static 08 django的url控制系统 09 django的urlConf补充 第50章 01 django之视图函数的介绍 02 django视图之redirec 03 ...
使用Mybatis作为持久层框架,使用pageHelper实现分页;前端使用echarts组件进行可视化展示;使用定时任务,定时监听,使用多线程接收不同客户端的数据,将数据处理后存入数据库。 ## py-client 客户端的脚本版本;...
后端框架采用了base(基础类库层)、bean(后台逻辑层)、dao(数据持久层)、web(view展示层)的四层结构,代码结构清晰,高度模块化设计,使得开发起来高效、实用、可靠,并且便于扩展和维护。 下面是该系统的...
数据持久层),网站(视图展示层)的四层结构,代码结构清晰,高度垂直设计,从而开发起来高效,实用,可靠,并且易于扩展和维护。 下面是该系统的源码结构: hjs_cms ├── bin/ ├── conf/ ├── src │ ├...
持久层框架 Hibernate Mybatis 消息中间件框架 ActiveMQ kafka 全文搜索引擎 ElasticSearch DSL语法 Kibana 微服务架构 Spring Boot Spring Cloud 开发语言 Java JavaSE JavaEE SQL Python 数据库相关 关系型数据库 ...
4.dao 持久层,对数据库进行操作,采用mysql数据库和mybatis框架 5.fastdfs 图片存储功能,将图片上传至linux,并返回url 6.interceptor 拦截器,将未登录的用户拦截至主页 7.service 服务层,将业务层操作与持久...
3. 构建一个简单应用....................................................................................60 3.1. 被支柱支撑的支柱............................................................................
物流项目 Server 端架构: Struts2+ Spring + Spring Data(简化持久层) + JPA 接口+ Hibernate(JPA 显现) 后台管理系统 页面架构 :jQuery Easyui 框架 前端互联网系统 页面架构 :BootStrap 响….zip所有源码均...
本项目前后端分离,前端基于`Vue`+`Vue-router`+`Vuex`+`Element-ui`+`Axios`,参考小米商城实现。后端基于`Node.js(Koa框架)`+...后端采取了MVC模式,根据前端需要的数据分模块设计了相应的接口、控制层、数据持久层。
股票买卖最佳时机leetcode 适合投资者 培训贸易 交易*任何上市美国股票的实时练习场。 最好的学习方法是实践。 FIT 投资者模拟可帮助您买卖股票,并管理股票投资组合*。 经验丰富的投资者可以使用FIT ...作为持久层