当前位置:  编程技术>软件工程/软件设计
本页文章导读:
    ▪权限设计理解      ----我的分析 菜单表 m1001  update update.action  .. m1002  delete delete.action  .. m1003  add    add.action  ...   用户表 u1001 zhangsan u1002 lisi 角色表 r1001 管理员 r1002 普.........
    ▪通用Makefile模板      ################################################################################################################ # # 通用Makefile模板 # 自动将src目录下中的.c文件编译,生成所有.o文件保存在bin/objs下 # 修改TARGETS和CC.........
    ▪svn+git实现离线提交且不需要导出所有版本      前言:使用svn差不多2年了,在公司svn使用也比较顺利,但是离线提交这个是svn的一个痛。然后发现了git这个东东, 实现方式:出差时检出svn最新版本,然后在该文件夹内初始化git并提交为git.........

[1]权限设计理解
    来源: 互联网  发布时间: 2013-11-19

----我的分析

菜单表
m1001  update update.action  ..
m1002  delete delete.action  ..
m1003  add    add.action  ...  

用户表
u1001 zhangsan
u1002 lisi

角色表
r1001 管理员
r1002 普通管理员


--角色授权表(角色,和模块)
r1001 m1001     --这个联合主键的意识是(角色表的管理员具有修改模块的权限)
rl001 m1002     --这个联合主键的意识是(角色表的管理员具有删除模块的权限)
rl002 m1003     --这个联合主键的意识是(角色表的系统具有添加模块的权限) 


--角色用户表 (这个表实现了授权)
u1001 rl001  --说明zhangsan是管理员具有删除和修改模块的权限
ul002 rl002  --说明lisi是普通管理员具有添加模块的权限

以上已经实现了授权,不过有时候关联的权限过多,比如有这样的需求授权普通管理员,只要他有修改模块的权限,
比如我添加一个用户叫王五
给他授权为管理员,如果按以上设计他就不止有修改的权限了,而且他也是删除的权限,此时
就不能满足需求了,不是不能满足需求(比如要删除脚色表管理员对应的删除模块的权限)

一下设计解决此问题

--用户授权表:存储用户的授权信息(这个表实现了一步到位的授权)
u1001 m1001

用户直接和模块发生关系 这说明了用户张三直接单独拥有了修改模块的信息

注意:不是管理员张三

作者:Name_xiaoai 发表于2013-4-27 20:38:07 原文链接
阅读:68 评论:0 查看评论

    
[2]通用Makefile模板
    来源: 互联网  发布时间: 2013-11-19
################################################################################################################
#
#				通用Makefile模板
#			自动将src目录下中的.c文件编译,生成所有.o文件保存在bin/objs下
#			修改TARGETS和CC以及CFLAGS和LDFLAG即可完成工程的配置
#				by jieen 		2013-4-27				
#
#################################################################################################################
PROJECT_TOP_DIR=$(shell cd ../; pwd)
PROJECT_BIN_DIR=$(PROJECT_TOP_DIR)/bin
PROJECT_SRC_DIR=$(PROJECT_TOP_DIR)/src
PROJECT_INC_DIR=$(PROJECT_TOP_DIR)/inc
PROJECT_LIB_DIR=$(PROJECT_TOP_DIR)/lib
PROJECT_OBJ_DIR=$(PROJECT_BIN_DIR)/objs
MKDIR := mkdir -p

CC := gcc
TARGETS = opxl

CFLAGS := -g -I$(PROJECT_INC_DIR)
LDFLAG := -L$(PROJECT_LIB_DIR)

src :=$(wildcard $(PROJECT_SRC_DIR)/*.c)
dir := $(notdir $(src))
PROJECT_OBJ := $(patsubst %.c,%.o,$(dir) )
	
PROJECT_ALL_OBJS := $(addprefix $(PROJECT_OBJ_DIR)/, $(PROJECT_OBJ))
	
all:$(PROJECT_SRC_DIR) $(PROJECT_ALL_OBJS)
	$(CC) $(CFLAGS) $(PROJECT_ALL_OBJS) -o $(PROJECT_BIN_DIR)/$(TARGETS) $(LDFLAG)

$(PROJECT_OBJ_DIR)/%.o : $(PROJECT_SRC_DIR)/%.c
	$(MKDIR) $(PROJECT_OBJ_DIR)
	$(CC) -c $(CFLAGS) $< -o $@
clean:
	rm -fr $(PROJECT_OBJ_DIR)
	rm -fr $(TARGETS)	

作者:lqrensn 发表于2013-4-27 19:25:21 原文链接
阅读:76 评论:0 查看评论

    
[3]svn+git实现离线提交且不需要导出所有版本
    来源: 互联网  发布时间: 2013-11-19
前言:使用svn差不多2年了,在公司svn使用也比较顺利,但是离线提交这个是svn的一个痛。然后发现了git这个东东,
出于兴趣专门买了版本git权威指南来学习,刚开始觉得git很好很灵活,越往书后面看越觉得太灵活了,灵活来不利于推广了。
不过里面有一个功能很使用git-svn,可以实现svn和git的联合使用,但是从git检出到svn的会很久(git会导出svn的所有版本然后转换为git的格式),这导致用户体验相当不好。

背景:需要实现出差的时候文件修改记录仍然保留,并且能离线提交

实现方式:出差时检出svn最新版本,然后在该文件夹内初始化git并提交为git的第一个版本,把.svn改为tempsvn并把tempsvn添加到忽略文件夹。出差后使用方法同svn类似,修改后提交最基本的几乎不用另外培训(懂git的人知道要玩花样想怎么玩就怎么玩),出差回来后,把关键版本提交到svn,使用方法:git更新到指定版本,把.git改为tempgit,tempsvn改为.svn,更新然后提交。

结论:这样可以实现git和svn结合使用且速度有保障,而且将修改记录全部保留,目前感觉比较完美。

首先安装git
msysgit:https://code.google.com/p/msysgit/downloads/list
msysgit的bin目录需要添加到path的环境变量里面并重启
tortoisegit:https://code.google.com/p/tortoisegit/wiki/Download?tm=2(选择安装,如果不使用图像界面可以不安装)

git svn切换工具V1.0下载地址:(csdn下载链接还没有生成,稍后修改)http://www.scmeye.com/forum.php?mod=viewthread&tid=3326&page=1&extra=#pid15816

压缩包内包含64位和32位的安装包。


使用方法:

  • 使用svn检出版本库
  • “初始化git“,并把tempgit添加到svn的忽略列表并提交
  • “2git”,提交git并把tempsvn设置为忽略文件,然后提交
  • 然后就正常使用git功能
  • 需要提交svn时,git更新到需要提交的版本,然后选择"2svn",更新提交
  • 需要将多个git版本提交到svn重复“2git”更新到需要版本,“2svn”提交

作者:nicaiwa 发表于2013-4-29 13:28:13 原文链接
阅读:64 评论:0 查看评论

    
最新技术文章:
▪主-主数据库系统架构    ▪java.lang.UnsupportedClassVersionError: Bad version number i...    ▪eclipse项目出现红色叉叉解决方案
▪Play!framework 项目部署到Tomcat    ▪dedecms如何做中英文网站?    ▪Spring Batch Framework– introduction chapter(上)
▪第三章 AOP 基于@AspectJ的AOP    ▪基于插件的服务集成方式    ▪Online Coding开发模式 (通过在线配置实现一个表...
▪观察者模式(Observer)    ▪工厂模式 - 程序实现(java)    ▪几种web并行化编程实现
▪机器学习理论与实战(二)决策树    ▪Hibernate(四)——全面解析一对多关联映射    ▪我所理解的设计模式(C++实现)——解释器模...
▪利用规则引擎打造轻量级的面向服务编程模式...    ▪google blink的设计计划: Out-of-Progress iframes    ▪FS SIP呼叫的消息线程和状态机线程
▪XML FREESWITCH APPLICATION 实现    ▪Drupal 实战    ▪Blink: Chromium的新渲染引擎
▪(十四)桥接模式详解(都市异能版)    ▪你不知道的Eclipse用法:使用Allocation tracker跟...    ▪Linux内核-进程
▪你不知道的Eclipse用法:使用Metrics 测量复杂度    ▪IT行业为什么没有进度    ▪Exchange Server 2010/2013三种不同的故障转移
▪第二章 IoC Spring自动扫描和管理Bean    ▪CMMI简介    ▪目标检测(Object Detection)原理与实现(六)
▪值班总结(1)——探讨sql语句的执行机制    ▪第二章 IoC Annotation注入    ▪CentOS 6.4下安装Vagrant
▪Java NIO框架Netty1简单发送接受    ▪漫画研发之八:会吃的孩子有奶吃    ▪比较ASP和ASP.NET
▪SPRING中的CONTEXTLOADERLISTENER    ▪在Nginx下对网站进行密码保护    ▪Hibernate从入门到精通(五)一对一单向关联映...
▪.NET领域驱动设计—初尝(三:穿过迷雾走向光...    ▪linux下的块设备驱动(一)    ▪Modem项目工作总结
▪工作流--JBPM简介及开发环境搭建    ▪工作流--JBPM核心服务及表结构    ▪Eclipse:使用JDepend 进行依赖项检查
▪windows下用putty上传文件到远程Linux方法    ▪iBatis和Hibernate的5点区别    ▪基于学习的Indexing算法
▪设计模式11---设计模式之中介者模式(Mediator...    ▪带你走进EJB--JMS编程模型    ▪从抽象谈起(二):观察者模式与回调
▪设计模式09---设计模式之生成器模式(Builder)也...    ▪svn_resin_持续优化中    ▪Bitmap recycle方法与制作Bitmap的内存缓存
▪Hibernate从入门到精通(四)基本映射    ▪设计模式10---设计模式之原型模式(Prototype)    ▪Dreamer 3.0 支持json、xml、文件上传
▪Eclipse:使用PMD预先检测错误    ▪Jspx.net Framework 5.1 发布    ▪从抽象谈起(一):工厂模式与策略模式
▪Eclipse:使用CheckStyle实施编码标准    ▪【论文阅读】《Chain Replication for Supporting High T...    ▪Struts2 Path_路径问题
▪spring 配置文件详解    ▪Struts2第一个工程helloStruts极其基本配置    ▪Python学习入门基础教程(learning Python)--2 Python简...
▪maven springmvc环境配置    ▪基于SCRUM的金融软件开发项目    ▪software quality assurance 常见问题收录
▪Redis集群明细文档    ▪Dreamer 框架 比Struts2 更加灵活    ▪Maven POM入门
▪git 分支篇-----不断更新中    ▪Oracle非主键自增长    ▪php设计模式——UML类图
▪Matlab,Visio等生成的图片的字体嵌入问题解决...    ▪用Darwin和live555实现的直播框架    ▪学习ORM框架—hibernate(二):由hibernate接口谈...
▪(十)装饰器模式详解(与IO不解的情缘)    ▪无锁编程:最简单例子    ▪【虚拟化实战】网络设计之四Teaming
▪OSGi:生命周期层    ▪Javascript/Jquery——简单定时器    ▪java代码 发送GET、POST请求
▪Entity Framework底层操作封装(3)    ▪HttpClient 发送GET、POST请求    ▪使用spring框架,应用启动时,加载数据
▪Linux下Apache网站目录读写权限的设置    ▪单键模式的C++描述    ▪学习ORM框架—hibernate(一):初识hibernate
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3