中国电信北研院实习后端一面

权限系统如何设计数据库表?用户表,角色表,权限表
一个java文件的运行过程
uuid和自增id的区别,用作索引的区别?
判断集合是否为空的工具类
@autowired和@resource的区别
替换String字符串的方法;replace(char oldChar, char newChar)
全部评论
1. 在设计权限系统时,数据库表的设计是核心。一个通用的方法是将用户(User)、角色(Role)、权限(Permission)进行分离,这有助于系统拓展和维护。 通过以上的设计,可以实现权限的分配和管理。例如,管理员可以为用户分配角色,角色又关联了具体的权限。这样,当用户登录系统之后,系统可以通过查询角色关联表和角色权限表来确定用户访问的资源和可执行的操作。 2. 程序员编写java源代码,经过编译器编译成class文件。class文件交由虚拟机执行。 3. uuid和自增id是两种不同的数据标识符,他们在唯一性,生成方式还有性能方面有所区别: 唯一性:uuid具有128位,可以确保在全球范围内是唯一的。uuid的生成方式通常基于时间、机器MAC、随机数等因素生成。自增id是由数据库自动生成的,通常是整数类型,从1开始增加; uuid理论上在全球范围内可以确保唯一性,自增id在单一数据库实例中可以确保唯一。 生成uuid为了确保唯一性,因此需要更多的计算来保证。自增id由于是数据库自动生成的速度比较快。 用途:uuid常用于需要高度唯一的场景,如数据库主键、网络服务中的对象表示等。自增id主要作为索引键。 总结:uuid的字符串比较长,做索引可能会占用更多存储空间,并且在比较和搜索时会有性能开销。自增id通常占用较少的存储空间,并且在索引结构中可以快速定位,因为数值是连续的,所以在性能方面通常优于uuid。 4. 使用集合的isEmpty()方法、Optional类 5. 所属不同、注入方式不同、作用范围不同(Autowired能作用于构造方法,Resources不能)
点赞 回复 分享
发布于 03-17 15:11 重庆

相关推荐

评论
点赞
4
分享
牛客网
牛客企业服务