附件表设计及路径

大家上传文件会不会专门建个附件表存储文件路径(业务表存附件id还是路径?)?数据库里面图片、文件路径大家一般是用相对域名根路径(/files/abc.txt)还是直接存绝对路径(http://www.baidu.com/files/ab...)呢?目前是设计接入多个云存储、但是只是做备用吧、比较少会切换。

阅读 6.6k
2 个回答

这个肯定需要具体分析啦。不同的应用模式肯定是不同的。

不过既然你用数据库来存储附件信息,其实我个人建议还是对附件起一个ID类似的唯一信息,数据的取用以这个ID为查询,这样有一些便利性:

  1. ID可以方便索引
  2. 可以让附件的访问路径标准化,或者说可以随便你怎么调整,可以做到不影响可用性:
    2.1. 这是一种很薄的抽象分离
    2.2. 这种分离允许你对真正数据进行任何的调整,只需要在调整时更新 本表中对应 数据,比如你把对象数据库 转换 为 文件目录存储,或者反之进行,都是允许的,调整只涉及数据库和唯一的访问获取公开API实现,对具体的业务是完全无感(因为ID没有变,API接口也是没有变的)

看需求,可以做个公共附件表进行存储,方便管理,建议使用相对根路径,虽然对象存储很少更换,但与其绑定的域名更换还是很容易的,如果出现不可抗力因素,更换的原由域名,你写到数据库的话,更换的话还是不会特别友好

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题