当前位置:  技术问答>java相关

熟悉OA系统“文档管理”的大虾请进....

    来源: 互联网  发布时间:2017-04-09

    本文导语:  增加文档时,上传文件附件,文件上传保存在服务器端系统目录下, 如果出现两份文档的文件附件重名,(要求是两份文件都可上传,浏览时 点击各自的链接显示相应的文件内容),这需要应该如何处理? | ...

增加文档时,上传文件附件,文件上传保存在服务器端系统目录下,
如果出现两份文档的文件附件重名,(要求是两份文件都可上传,浏览时
点击各自的链接显示相应的文件内容),这需要应该如何处理?


|
你的问题实际上是这样:doc文件当然不能处理参数,处理参数必然是jsp或者servlet。事实上,url的请求带有doc后缀名或者其他后缀名都一样,例如你请求了http://www.mysite.com/mydoc.gif,但是可能返回的不是图片而是一个html。

我估计其做法大体上是这样,配置了一个servlet,并处理所有请求文件名为*.doc的,然后servlet整合其参数得到真正的doc文件名,然后重定向到那个文件。

|
还有就是"文件正文"的url是"/cgi/ldmsapp?funcid=...", ldmsapp应该是
Servlet吧?
但"1.doc"的url是"/cgi/ldmsapp/1.doc?funcid=", ldmsapp是目录,还是Servlet?  我搞晕了!
这个系统应该是用cgi-bin实现的。

实际上上传的每一个文件,都需要在数据库中为之分配一个独一无二的id作为实际文件名,而原文件名是记载在数据库中的

你在数据库中存储每个文件的实际名称,同时有一个唯一标识,你的唯一标识是指向正确的文件名,而实际名称显示给客户。
正确的文件名就是在用户上载时你为了防止重名分配给文件的名称。可以用实践来区分。从系统中取得当前时间,java.util.Date dd = new Date();
long fileName = new Long(dd.getTime()).toString();
这个问题越说越复杂了,其实没有那么难。

|
rename the file,Ex: add a timestamp before the filename.
and add one more field in the table, Ex:
DISPLAY_NAME FILE_PATH
aa.DOC       upload10068923200823_aa.doc    
aa.DOC       upload10068924902813_aa.doc    

|
可以在IE里用JS来限制同时上传时不能有同名,然后文件保存在服务器上时用JAVA判断是否有同名文件存在,如果有,就改名。
可以建个表来保存原文件名和保存后的文件名。

|
为什么不为每个用户建不同的目录阿??或者

|
加上时间戳!

|
很简单,可以在tabel中增加一个binary类型的字段,将附件直接上传到数据库中,这样根本就不存在文件同名的情况,而且管理维护非常方便。

|
GZ

|
呵呵,在我以前做过的新闻管理系统里面也存在同样的问题。我的解决办法是改名,将原文件名加上文件的大小,构成新的文件名,这样改以后同名的机会很小的。不过我觉得楼上有几位朋友说的加上时间戳是最好的办法了,没有十全十美的解决办法,我想也没有像你说得那样刁钻的客户。

|
实际上上传的每一个文件,都需要在数据库中为之分配一个独一无二的id作为实际文件名,而原文件名是记载在数据库中的

|
其实不就是上传加时间戳,下载的时候用流输出,文件名用原始的.

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 急寻一位熟悉Linux熟悉GTK+编程,有时间的高手做一个例程,酬劳可谈
  • 学习linux该从何而起,熟悉java,但不是很熟悉c或者c++
  • 请问,哪里有可以用的aix server,我想练练,熟悉熟悉,要支持telnet的,
  • 熟悉linux
  • 小弟签约银行,想装个unix先熟悉一下!
  • 如何熟悉Exception的种类?完全通过学习API的document?
  • 有熟悉EXIM的高手高手么??
  • 熟悉Debian下dancer ircd配置的进来
  • 寻找对LINUX ORACLE熟悉的朋友
  • 熟悉CURSES的进!!!
  • 为何技术支持需要熟悉unix命令?
  • 想请教linux下开发分布式应用程序问题,期望与熟悉orbit的高手交流!
  • 寻求工作,本人熟练掌握ANSI CC++语言、熟悉UNIX
  • 我一直都是在windows上搞开发,对C非常熟悉,.........
  • 请熟悉IBM WebSphere配置者留下OICQ号
  • 紧急求助!谁熟悉websphere的配置?或关于webshpere好的网站!
  • 熟悉weblogic&ejb2.0的请进(初学者就不用看了)
  • 熟悉JAVA的请进来
  • 谁熟悉在DOS状态下上网浏览的软件。
  • VJ的一个问题,高分求助,熟悉VJ得请进!


  • 站内导航:


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

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

    浙ICP备11055608号-3