您的位置:首页 > 游戏 > 游戏 > 工业设计作品集欣赏_西安公司网站建设服务商_免费建站有哪些_深圳网站搜索优化

工业设计作品集欣赏_西安公司网站建设服务商_免费建站有哪些_深圳网站搜索优化

2024/12/22 22:22:27 来源:https://blog.csdn.net/baozhengw/article/details/144345381  浏览:    关键词:工业设计作品集欣赏_西安公司网站建设服务商_免费建站有哪些_深圳网站搜索优化
工业设计作品集欣赏_西安公司网站建设服务商_免费建站有哪些_深圳网站搜索优化

一、回顾

        在前面的30篇文章中介绍了基于SpringBoot架构的基础开发,包括多模块项目结构搭建、Swagger+Knife4j 项目接口文档生成工具、SpringBoot连接数据库、Alibaba Druid连接池、整合Redis、接口响应包通用类、Thymeleaf、Freemarker 页面模版引擎的整合、自定义错误页、全局异常处理、在项目中引入mybatis-plus、Spring Security安全框架、JWT、Oauth2 Server端和客户端的开发、常用工具类开发、定时器开发、RabbitMQ消息中间件、JAVA Mail发送邮件、国际化开发、Beetl框架的开发及Beetl国际化的实现等等。这些技术已经被整合到我们的基础架构里,接下来我们开始进行真正的项目开发,首先我们开始设计项目的数据库。

        项目数据库采用OpenJWeb快速开发平台的数据库。OpenJWeb快速开发平台开发于2009年,后面在实际项目中开发了B2C、CMS、在线培训等子系统,虽然OpenJWeb使用的SSH框架,但是数据库是可以完全服用的,特别是用户、角色、权限管理,在设计的时候就完全符合RBAC角色权限模型,而且完全适用于Spring Security,并支持多租户模式的应用场景。

二、数据库设计之子系统划分

        OpenJWeb的数据库设计,主要包括系统管理、快速开发(现在流行低代码的称呼)、CMS内容管理、B2C电商平台、在线培训、在线招聘等。

        其中系统管理子系统的数据库表结构以comm_作为前缀,电商以b2c_作为前缀,CMS以cms_作为前缀,在线招聘以hr_作为前缀。

三、数据库结构设计及DDL下载

        数据库表结构的DDL脚本在主工程的sql目录下的db-mysql.sql,大家可以在github上下载完整项目,github地址:GitHub - openjweb/cloud at masterOpenJWeb is a java bases low code platform. Contribute to openjweb/cloud development by creating an account on GitHub.icon-default.png?t=O83Ahttps://github.com/openjweb/cloud/tree/master

        另外我把这个SQL文件上传到资源库,仅需1个积分就可下载。如果不想消费1积分的话可以在Github上下载项目。这个数据库有大约500个左右的数据库表,如果做项目开发的话,可以节省大量的数据库设计的时间。CSDN中点下面的链接可下载数据库表结构DDL文件:

https://download.csdn.net/download/baozhengw/90104728icon-default.png?t=O83Ahttps://download.csdn.net/download/baozhengw/90104728

四、数据库表结构清单

        openjweb平台将表名、表字段名分别放在了comm_table_def和comm_column_def中了,下面是从comm_table_def中查到的表结构清单:

内容管理博客日志表cms_blog
内容管理博客基本信息表cms_blog_info
内容管理网站栏目基本信息cms_category
内容管理栏目新闻订阅表cms_cate_subscribe
当前Web应用网站栏目-信息关系cms_cat_inf_rel
内容管理信息表cms_info
内容管理信息分页存储cms_info_page
内容管理关键词表cms_keywords
内容管理错敏词分析统计表cms_mis_json_result
内容管理错敏词扫描明细表cms_mis_scan_detail
内容管理错敏词扫描计划表cms_mis_scan_plan
内容管理错敏词库管理cms_mis_words
内容管理网站视频cms_video
内容管理信息访问日志cms_visit_log
内容管理专题信息表cms_zhuanti
内容管理专题插件设置表cms_zhuanti_portlet
内容管理专题模板表cms_zhuanti_templ
基础平台相册表comm_album
基础平台API_KEY管理comm_api_key
基础平台应用申请表comm_app_apply
基础平台应用功能明细comm_app_fun_list
基础平台微应用邀请码表comm_app_invite_code
基础平台微应用邀请码明细表comm_app_recommend
基础平台注入攻击日志comm_attack_log
基础平台权限基本信息表comm_auth
基础平台条码种类管理comm_barcode_cls
基础平台单据号生成配置comm_bill_rules
基础平台单据流水号记录comm_bill_rules_detail
基础平台网络攻击IP表comm_blocks_ip
基础平台BUG记录comm_bug_log
基础平台通用按钮定义表comm_buttons
基础平台表字段基本信息表comm_column_def
基础平台公司基本信息comm_company
基础平台单位权限管理comm_com_auth
基础平台企业资金余额表comm_com_balance
基础平台单位信息发布表comm_com_cms
基础平台数据字典(按单位)comm_com_dict
基础平台单位会员表comm_com_member
基础平台单位参数设置表comm_com_parm
基础平台企业商户充值表comm_com_recharge
基础平台个人通讯录comm_contact_person
基础平台评论表comm_criticize
基础平台通用日报表comm_daily_report
基础平台每日签到表comm_daily_sign
基础平台数据权限定义表comm_data_auth
基础平台数据权限编码表comm_data_auth_code
基础平台角色数据权限表comm_data_auth_role
基础平台用户别数据权限表comm_data_auth_user
基础平台数据扩展表comm_data_ext
基础平台数据源定义comm_data_source
基础平台删除记录约束表comm_del_constraint
基础平台部门基本信息comm_dept
基础平台部门权限关系表comm_dept_auth
基础平台机构设备设施清单comm_dept_equ
基础平台部门领导任职记录表comm_dept_header_exp
基础平台动态表单定义表comm_dform_def
基础平台动态表单定义明细表comm_dform_def_detail
基础平台数据字典基本信息comm_dict
基础平台数据字典类型comm_dict_type
基础平台脏数据管理comm_dirty_data_manager
基础平台行政区划comm_division
基础平台编辑页字段定义comm_editpage_def
基础平台个人邮件群组comm_email_groups
基础平台企业员工档案comm_employee
基础平台异常日志表comm_exception_log
基础平台快递公司列表comm_express_com
基础平台字段校验器comm_field_validator
基础平台字段-校验器关系表comm_field_validator_rel
基础平台敏感词表comm_filter_words
基础平台会计期comm_fin_period
基础平台页面按钮定义表comm_form_buttons
基础平台功能定义comm_function
基础平台代码生成策略设置comm_gencode_conf
基础平台日志历史表comm_hist_logs
基础平台行业编码comm_industry
基础平台注入攻击字典表comm_inject
基础平台IP地址解析表comm_ip_table
基础平台JMS消息表comm_jms_log
基础平台JSON数据字典comm_json_data
基础平台多语词库comm_lang_words
基础平台列表页字段定义comm_listpage_def
基础平台站内短信comm_localsite_sm
基础平台数据约束关系表comm_logic_constraints
基础平台用户登录日志comm_login_log
基础平台登录界面样式管理comm_login_ui
基础平台系统日志表comm_logs
基础平台全文检索处理队列comm_lucene_queue
基础平台个人邮箱列表comm_mail_list
基础平台主明细表关系表comm_master_detail_rel
基础平台消息表comm_message
基础平台微应用表comm_micro_app
基础平台手机网页图标配置comm_mobile_icon
基础平台应用方案表comm_myapp_module
基础平台用户自定义应用comm_my_app
基础平台个人银行账号管理comm_my_bank_card
基础平台软件操作手册模板comm_my_word_template
基础平台网上银行参数配置comm_netbank_config
基础平台在线客服管理comm_online_consult
基础平台组织结构人员关系comm_org_emp_rel
基础平台时段设置表comm_period_set
基础平台弹出式窗口定义comm_popup
基础平台Portlet设置表comm_portlet_info
基础平台产品序列号管理表comm_product_ctrl
基础平台机构/人员工作单位comm_psn_company
基础平台作品表comm_psn_works
基础平台查询模板comm_query_template
基础平台分享营销推荐关系表comm_rcmd_relate
基础平台授权下载数控制comm_record_download_ctrl
基础平台通用数据关系表comm_record_rel
基础平台表记录或表字段序列号管理comm_record_serial
基础平台报表定义comm_report_def
基础平台表单按钮设置comm_rep_button_def
基础平台报表表单定义comm_rep_form_def
基础平台动态报表查询条件设置comm_rep_query
基础平台表单标签页设置comm_rep_tabs
基础平台角色基本信息comm_roles
基础平台角色权限关系表comm_role_auth
基础平台角色审批表comm_role_check
基础平台实时分润结算费率表comm_settle_rate
基础平台长短链接转换comm_short_url
基础平台专家(艺术家)管理comm_specialist
基础平台专家分类comm_specialist_cls
基础平台单点登录账号管理comm_sso_account
大数据中台comm_sso_apicomm_sso_api
大数据中台comm_sso_api_relcomm_sso_api_rel
大数据中台comm_sso_appcomm_sso_app
大数据中台comm_sso_app_relcomm_sso_app_rel
基础平台单点登录设置表comm_sso_config
基础平台星座基本信息comm_star
基础平台基础策略设置表comm_strategy_cfg
基础平台子系统基本信息comm_sub_system
基础平台系统邮箱列表comm_system_mail
基础平台系统参数表comm_system_parms
基础平台表基本信息comm_table_def
基础平台标签分类表(HR用)comm_tags
基础平台标签明细(HR用)comm_tag_detail
基础平台任务主表comm_task_head
基础平台任务处理队列comm_task_queue
基础平台测试其他数据库建表comm_test1
基础平台第三方登录设置表comm_third_login_set
基础平台树形结构数据字典comm_tree_dict
基础平台后台页面框架管理comm_ui_frame
基础平台后台皮肤样式管理comm_ui_skin
基础平台上传图片管理comm_upload_pic
基础平台用户基本信息comm_user
基础平台用户自定义数据授权comm_userdef_data_auth
基础平台自定义搜索器子表comm_userdef_queryd
基础平台自定义搜索器主表comm_userdef_querym
基础平台用户权限关系表comm_user_auth
基础平台网站用户余额表comm_user_balance
基础平台用户数据字典comm_user_dict
基础平台用户位置管理comm_user_location
基础平台用户自定义模块comm_user_module
基础平台用户自定义表字段comm_user_module_field
基础平台网站用户充值记录comm_user_recharge
基础平台用户角色关系表comm_user_role
基础平台用户自定义系统表comm_user_sys
基础平台虚拟币币种兑换率表comm_virtual_currency
基础平台通用访问统计表comm_visit_count
基础平台通用访问明细表comm_visit_detail
基础平台WebService管理comm_webservice
基础平台网站屏蔽规则设置comm_web_filter_config
基础平台网站运行状态监控表comm_web_listen_conf
基础平台中外文字词对照表comm_word_trans
基础平台自定义应用工作台页面设置comm_workhome_set
微信微信关键词回复weixin_keyword
微信微信小程序场景码表weixin_micro_scene
微信微信图文消息表weixin_news_message
微信微信场景二维码扫码记录weixin_scene_log
微信微信服务账号设置weixin_service_account
微信微信服务号菜单设置weixin_service_menu

五、多租户的RBAC用户角色权限数据库设计

        如果大家需要查看详细的数据库设计,在下载DDL脚本以后,执行

select b.sys_nm,a.table_name_cn,a.table_name   from comm_table_def  a,comm_sub_system b where a.sys_code = b.sys_code  order by a.sys_code

        查看数据库表结构清单。执行下面的SQL查看数据库表结构说明:

select a.table_name,a.table_name_cn,b.* from comm_table_def a,comm_column_def b where a.serial_no=b.table_serial_no order by a.sys_code,a.table_name,b.column_name

        基于多租户的RBAC用户角色权限的数据库表包括:

        (1)单位基本信息表 comm_company (单位即独立的租户,主键pk_id)。

        (2)部门基本信息表 comm_dept,comm_dept.com_id=comm_company.pk_id

        (3)用户基本信息表 comm_user ,comm_user.com_id=comm_company.pk_id且用户表与

                部门表的关联:comm_user.dept_id=comm_dept.pk_id,用户表的login_id对

                应SpringSecurity框架的username。主键是user_id

        (4)角色表 comm_roles,存储系统中的角色。

        (5)comm_auth:这个是权限资源表,菜单ID和资源ID都存储在这个表中。这个表里有

                 AUTH_ID,可对应Spring Security框架的的AUTHORITY ID,auth_resource是资源

                 URL,支持通配符,是SpringSecurity框架控制的URL资源。

        (6)comm_role_auth:角色权限关系表,存储角色及权限的关系。

        (7)comm_user_role:存储用户及角色的关系。通过用户表、角色表、用户角色关系表、

                角色权限管理表关联,可以查询用户拥有的具体权限。

               用户权限关系表:原来设计有comm_user_auth,但是这个表对性能影响太大,故不采

               纳,包括之前也有部门权限管理表,也因为性能问题最终不再使用。

               对于多租户的角色权限管理,上面是一套完整的数据库结构,为了方便权限查询,所以

       基于上面的数据库表结构定义了一个VIEW视图,DDL脚本中的是通过Navicate导出来的,

       所以可读性不如下面的原始view脚本:

create  view v_user_auth  as
select a.user_id,a.login_id,b.auth_id,b.comm_code,b.auth_name,b.auth_resource,b.pic_file,b.sort_no,b.menu_url,b.menu_sort_no,b.layui_name,b.layui_jump,b.is_layui
from comm_user a,comm_auth b , comm_user_role d,comm_role_auth e
where  a.user_id = d.user_id
and  a.com_id='C0001' 
and a.is_in_use='Y'
and d.role_id = e.role_id
and e.auth_id = b.auth_id
and b.data_flg ='Y' union
select a.user_id,a.login_id,b.auth_id,b.comm_code,b.auth_name,b.auth_resource,b.pic_file,b.sort_no,b.menu_url,b.menu_sort_no,b.layui_name,b.layui_jump,b.is_layui
from comm_user a,comm_auth b , comm_user_role d,comm_role_auth e,comm_com_auth f
where a.user_id = d.user_id
and a.com_id=f.com_id 
and a.is_in_use='Y'
and d.role_id = e.role_id
and e.auth_id = b.auth_id
and b.data_flg ='Y'
and  b.comm_code = f.auth_code
;

        在上面的脚本中,定义了权限视图v_user_auth,这个权限视图是支持多租户下的用户,C0001表示默认租户的,非C0001公司表示其他租户。这个视图在互联网项目下性能也还可以,如果加上用户权限关系表comm_user_auth的话就严重影响性能了。这个视图返回的有些字段例如图片等是为了给后台菜单呈现使用。auth_id对应资源ID,auth_resource是URL资源。另外is_in_use='Y'表示只有有效用户才有授权。

        openjweb的这套数据库结构可以作为项目实战、学生毕业设计的数据库结构使用。后面我们将基于实际项目开发相应的功能,本文的数据库结构是后面项目实战的基础。

        关于电商、在线培训、在线招聘的表结构因为数量太多,大家需要了解的话可下载项目或者资源包,导到数据库中查看。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com