起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2203|回复: 4

[结贴] 使用Java实现上传附件 拼接附件ID

[复制链接]

133

主题

496

帖子

931

积分

高级会员

Rank: 4

积分
931
QQ
发表于 2014-2-20 14:22:52 | 显示全部楼层 |阅读模式
版本: X5.2.5 小版本号:
数据库: 服务器操作系统: 应用服务器:
客户端操作系统: 浏览器:
自己实现了下收取外部邮件的功能,把附件下载下来后,使用java代码把附件上传到文档中心里,拼接附件ID后 ,插入到收件箱的数据库里,插入数据库的时候报错 错误代码如下
  1. 附件ID[{'docID':'EC7CA7EAE82C4239B6E08FC9FF6C3989','docName':'借贷协议.doc','size':'20992','fileID':'440-root','docPath':'/root/b59fdd4a-990e-420b-a6c3-7e7ec90563d7/96d05814-866f-4ae7-bfc1-d7d18ec36a0a/125f89a2-7b65-4d5e-a2ff-b83e63d73efa','time':'2014-02-20 14:14:49'},{'docID':'B92FE5CC8AAD47209A4DAEE092CBA5F5','docName':'2014年工作计划-马健.doc','size':'9216','fileID':'441-root','docPath':'/root/b59fdd4a-990e-420b-a6c3-7e7ec90563d7/96d05814-866f-4ae7-bfc1-d7d18ec36a0a/125f89a2-7b65-4d5e-a2ff-b83e63d73efa','time':'2014-02-20 14:14:51'}]

  2. 开始执行SQL
  3. java.sql.BatchUpdateException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'docID':'EC7CA7EAE82C4239B6E08FC9FF6C3989','docName':'鍊熻捶鍗忚.doc','size':'2' at line 1
  4.         at com.mysql.jdbc.Statement.executeBatch(Statement.java:709)
  5.         at org.apache.tomcat.dbcp.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297)
  6.         at org.apache.tomcat.dbcp.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297)
  7.         at Email.receiveEmail(Email.java:680)
  8.         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  9.         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  10.         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  11.         at java.lang.reflect.Method.invoke(Method.java:592)
  12.         at com.justep.system.action.Engine.invokeActions(Native Method)
  13.         at com.justep.system.action.Engine.invokeActions(Unknown Source)
  14.         at com.justep.business.server.BusinessServer.doAction(Unknown Source)
  15.         at com.justep.business.server.BusinessServer.doExcute(Unknown Source)
  16.         at com.justep.business.server.BusinessServer.excute(Unknown Source)
  17.         at com.justep.business.server.BusinessServerServlet.execService(Unknown Source)
  18.         at com.justep.business.server.BusinessServerServlet.service(Unknown Source)
  19.         at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
  20.         at com.justep.x.bs.BusinessServerServlet.service(Unknown Source)
  21.         at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
  22.         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
  23.         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
  24.         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
  25.         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
  26.         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
  27.         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
  28.         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
  29.         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
  30.         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
  31.         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
  32.         at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
  33.         at java.lang.Thread.run(Thread.java:595)
复制代码

9

主题

395

帖子

1042

积分

金牌会员

Rank: 6Rank: 6

积分
1042
QQ
发表于 2014-2-20 14:24:39 | 显示全部楼层
SQL语法有错误

评分

参与人数 1 +3 收起 理由
jishuang + 3 赞一个!

查看全部评分

回复 支持 反对

使用道具 举报

310

主题

4938

帖子

4767

积分

论坛元老

Rank: 8Rank: 8

积分
4767
QQ
发表于 2014-2-20 14:30:05 | 显示全部楼层
对于mysql中的 表名 和字段名是不可以使用 单引号的,要使用`,检查下你的sql语句

评分

参与人数 1 +4 收起 理由
jishuang + 4 赞一个!

查看全部评分

QQ:179785966
回复 支持 反对

使用道具 举报

133

主题

496

帖子

931

积分

高级会员

Rank: 4

积分
931
QQ
 楼主| 发表于 2014-2-20 14:37:27 | 显示全部楼层
本帖最后由 mj19881029 于 2014-2-20 14:41 编辑
yinlun 发表于 2014-2-20 14:30
对于mysql中的 表名 和字段名是不可以使用 单引号的,要使用`,检查下你的sql语句 ...

Sql语句如下,
  1. sql = "insert into OA_EM_ReceiveEmail(fID,version,fQurey,fReplyState,fEmailName,fText,fFJID,fSendPerName," +
  2.                                         "fSendPerID,fSendPerCode,fConsigneeID,fConsignee,fConsigneeCode,fSendTime) "
  3.                                 + "values('"+fID+"',0,'未查看','未回复','"
  4.                                 + fEmailName
  5.                                 + "','"
  6.                                 + fText
  7.                                 + "','"
  8.                                 + FJID
  9.                                 + "','"
  10.                                 + fSendPerName
  11.                                 + "','"
  12.                                 + fSendPerID
  13.                                 + "','"
  14.                                 + fSendPerCode
  15.                                 + "','"
  16.                                 + fConsigneeID
  17.                                 + "','"
  18.                                 + revicePerName
  19.                                 + "','"
  20.                                 + revicePerCode
  21.                                 + "','"
  22.                                 + dtStr
  23.                                 + "') ON DUPLICATE KEY UPDATE version=0";
复制代码
回复 支持 反对

使用道具 举报

133

主题

496

帖子

931

积分

高级会员

Rank: 4

积分
931
QQ
 楼主| 发表于 2014-2-20 14:44:12 | 显示全部楼层
yinlun 发表于 2014-2-20 14:30
对于mysql中的 表名 和字段名是不可以使用 单引号的,要使用`,检查下你的sql语句 ...

恩 解决了
  1. FJID += "{"docID":""+doc.getsID()+"","docName":""+doc.getsDocName()+"","size":""+doc.getsSize().intValue()+"","fileID":""+doc.getsFileID()+"","docPath":""+doc.getsDocPath()+"","time":""+time+""}";
复制代码
附件ID拼接的时候 把 ‘ 改为 \"就行了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-5-2 02:26 , Processed in 0.060885 second(s), 30 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表