`
godson_2003
  • 浏览: 19343 次
文章分类
社区版块
存档分类
最新评论
阅读更多
现在正在做一个项目,关于后台管理的系统,框架采用Struts+Hibernate+Spring

原来部门同事都是用PB开发程序,数据库设计出问题了:
1.据说是不用外键关联照样可以做代码表的维护
我们一个UserInfo表中的主键在10多个表里做外键
2.复合主键需要维护
例如:
客户报文标准 pk fk
中心报文标准 pk fk
中心标准代码 pk fk
客户EDI代码  pk
发送标志     pk
这几个字段都有可能被维护
3.本来一个字段就可以做主键,非要再拉一个外键来做复合主键,理由是意义上不完整
例如:
用户代码        pk fk
发送方邮件地址  pk
本来发送方邮件地址就可以做主键了,却要拉个用户代码来做复合主键

在他们看来原来用PB开发不存在这3个问题,因为我选用了ssh框架这些问题出现了
似乎这是矛盾根源

唉,被弄糊涂了,问题是出在选用ssh框架?
分享到:
评论
7 楼 gigix 2007-10-21  
引用
在他们看来原来用PB开发不存在这3个问题,因为我选用了ssh框架这些问题出现了

那就让他们用PB来做web-based的应用好了
6 楼 fight_bird 2007-10-21  
恕我直言,原来的数据库设计方式实在差劲,基本是刚毕业的水平,这种做法确实能实现功能,但是是不规范、作坊式的,开发倒是爽了,后期一旦数据一致性出问题,或者出现垃圾数据和持续增长的非必要数据冗余,系统的性能、可维护性就是噩梦,真是无知者无畏!
5 楼 kenees 2007-10-19  
能凑或用,就凑或用,完成任务是第一的
4 楼 godson_2003 2007-10-19  
数据库表结构已经改了10多个了,其中包括字典表

我真服了
3 楼 zlzj2010 2007-10-19  
我觉得这个问题好处理
在映射方面多想想

用实体之间的关联关系表示外键,hibernate映射时指定这个关系.关系只要做到many to one 就可,不需要做倒one to many,


2 楼 laiseeme 2007-10-19  
那要改数据库设计的话 就麻烦了吧
1 楼 抛出异常的爱 2007-10-19  
业务主键与逻辑主键没有分开。PK是业务主键,一般不用来当罗辑主键

相关推荐

    B/s和C/S的区别

    在软件测试中,B/S 和 C/S 是两种常见的结构模式,了解这两种结构的区别和特点,对于软件测试的进行至关重要。本文将对 B/S 和 C/S 结构软件测试的定义、特点、测试方法和关注点进行详细的介绍。 一、C/S 结构软件...

    EJB写的工具管理系统(B/S,C/S混合)

    本项目是一个混合架构的工具管理系统,它结合了B/S(Browser/Server,浏览器/服务器)和C/S(Client/Server,客户端/服务器)两种模式,旨在为用户提供便捷的工具管理服务。该系统利用EJB(Enterprise JavaBeans)...

    在b/s开发中经常用到的javaScript技术整理

    在B/S架构开发中,JavaScript是一种非常重要的前端脚本语言,它被广泛应用于网页的交互设计、数据验证、页面特效等方面。本文将详细介绍在B/S开发中常用的JavaScript技术及其应用场景。 ### 一、验证类 #### 1. ...

    在b/s开发中经常用到的javaScript技术

    在b/s开发中经常用到的javaScript技术整理 Posted on 2006-02-17 15:55 MeiYU 阅读(377) 评论(0) 编辑 收藏 一、验证类 1、数字验证内 1.1 整数 1.2 大于0的整数 (用于传来的ID的验证) 1.3 负整数的验证 1.4 ...

    B/S GridView开发技巧

    GridView合并表头多重表头无错完美版(以合并3列3行举例) GridView突出显示某一单元格(例如金额低于多少,分数不及格等) GridView加入自动求和求平均值小计 GridView数据导入Excel/Excel数据读入GridView

    asp在线考试系统 基于B/S

    ASP在线考试系统是一种基于B/S(Browser/Server,浏览器/服务器)架构的软件应用,它允许用户通过Web浏览器进行在线答题、考试。这样的系统通常包括考生管理、试题库管理、考试安排、成绩统计等多个功能模块,旨在...

    jiaminghi/data-view dataV for vite2 vue3 windows补丁 for pnpm

    yarn npm cnpm pnpm可通用的,就是底层node_modules位置不一样而已,不过修改原理都是一样的,大家可以自行下载研究,目前仅在windows下测试,macos跟linux还未测试。 下面说下安装步骤: 1.在项目更目录中安装,...

    数组指针改错

    void mystrcpy(const char *from, char *to) { for ( ; *from!='\0'; from++, to++) *to = *from; *to = '\0'; ...//哪错了?...printf("a = %s, b=%s\n",a,b); mystrcpy(a,b); printf("a = %s, b=%s\n",a,b);

    VIP客户管系统+论文(本科毕业设计b/s)

    VIP客户管系统+论文(本科毕业设计b/s) 前台html后台c#,严格的mvc架构,数据库为sqlserver 开发环境:vs2010+sqlserver2008 还有一封比较详细的毕业论文的文档,文档中有一处错误,就是错吧类图写成e-r图,改改就...

    华为4G路由B593S-850解锁和使用说明书

    华为4G路由器B593S-850是一款针对移动宽带需求设计的高性能设备,它支持4G LTE网络,可以提供高速的无线网络连接。本篇将详细讲解这款路由器的解锁过程、PIN卡锁解除以及多用户管理,并提供一份详尽的操作指南。 一...

    基于B/S+JSP的城市公交查询系统源码

    称,查询该线路途经的站点,事先了解好自己所要经过的站点,提前做好下车准备,防止自己下错站,进入功能页面,在公交线路的对话框里输入所要乘坐的公交线路名称,之后会出现匹配的公交线路,点击查看,了解自己的所...

    EtCell报表控件/插件

    EtCell组件是开发B/S和C/S比较好的选择,可以B/S模式的应用具有C/S模式的一操作性并且让程序员完全从繁杂的打印中解脱出来,开发出来的产品及具有特色。 如果你想自定义自己的报表系统,那你选择EtCell是没错的 ...

    EtCell报表控件/插件(3.3)

    EtCell组件是开发B/S和C/S比较好的选择,可以B/S模式的应用具有C/S模式的一操作性并且让程序员完全从繁杂的打印中解脱出来,开发出来的产品及具有特色。 如果你想自定义自己的报表系统,那你选择EtCell是没错的 ...

    EtCell报表控件/插件(3.2)

    EtCell组件是开发B/S和C/S比较好的选择,可以B/S模式的应用具有C/S模式的一操作性并且让程序员完全从繁杂的打印中解脱出来,开发出来的产品及具有特色。 如果你想自定义自己的报表系统,那你选择EtCell是没错的 ...

    linux内核 0.11版本源码 带中文注释

    * 以下这些数据是由setup.s 程序在引导时间设置的(参见第2 章2.3.1 节中的表2.1)。 */ #define EXT_MEM_K (*(unsigned short *)0x90002) // 1M 以后的扩展内存大小(KB)。 #define DRIVE_INFO (*(struct ...

    EtCell报表控件/插件(报表打印)

    EtCell组件是开发B/S和C/S比较好的选择,可以B/S模式的应用具有C/S模式的一操作性并且让程序员完全从繁杂的打印中解脱出来,开发出来的产品及具有特色。 如果你想自定义自己的报表系统,那你选择EtCell是没错的 ...

    英语口语:打错电话怎么处理?

    在日常生活中,尤其是在英语环境中,打错电话是经常会遇到的情况之一。如何礼貌、恰当地处理这类情况,既能展现自己的英语口语水平,又能避免不必要的尴尬,是每个人都应该掌握的一项技能。以下是从给定文件中提取并...

    大学生清爽无错版个人求职主页

    【标题】:“大学生清爽无错版个人求职主页”是一套基于ASP(Active Server Pages)技术和ACCESS数据库构建的B/S架构的个人求职网站模板。这个模板专为大学生设计,旨在帮助他们创建一个专业且无错误的在线简历,...

Global site tag (gtag.js) - Google Analytics