Java Web实验六 基于组件的文件上传程序设计 所遇问题及注意事项

1.因为文件(即用户头像)重命名用到IPTimeStamp类,此类通过接收的IP地址与时间戳来进行文件重命名,获取客户端IP地址使用的代码为:request.getRemoteAddr(),所以当访问形式为:http://localhost:8080/xxxxxxxx/xxx.jsp,request.getRemoteAddr()得到的值会有问题,所以访问时url地址改为:http://127.0.0.1:8080/xxxxxxxx/xxx.jsp,注意,是在代码里面改,不是在地址栏里改。

2.上传的文件保存在发布路径,发布路径在tomcat中配置,通过双击server可以看到,如下图。

 Server path路径的查找:.metadata\.plugins\org.eclipse.wst.server.core\tmp1,此路径在解决下面的问题3和4时也要用到。

也可以通过在程序中打印的方式得到项目发布路径:

System.out.println(this.getServletContext().getRealPath("/"));

3.需要新建文件夹upload。

由于没有在程序自动创建文件夹,所以需要在项目发布路径中找到本项目,在本项目的目录下新建文件夹upload。如我的项目名为Sep29,则在.metadata\.plugins\org.eclipse.wst.server.core\tmp1\work\Catalina\localhost\Sep29下建立文件夹upload,而不是直接在.metadata\.plugins\org.eclipse.wst.server.core\tmp1下建立。

4.直接导入项目是看不到图片的,因为图片保存在发布路径,而发布路径一般为图2中所示,所以按照问题3完成后需要点击修改按钮,修改雇员信息,从本地选择图片上传到发布路径。即把头像上传到.metadata\.plugins\org.eclipse.wst.server.core\tmp1\work\Catalina\localhost\Sep29\upload中。

5.DiskFileItemFactory cannot be resolved to a type错误抛出:

应该将jars(commons-fileupload-……-.jar和commons-io-……-.jar)复制到WEB-INF/lib(只在如下图的Classpath中加入这两个jar包是不行的)。这是确保在运行已部署的Web应用程序时库将位于类路径上的唯一方法。

 

03-28
### MCP API 的文档与使用教程 MCP 是一种用于增强大型语言模型 (LLM) 功能的技术框架,它通过提示(Prompts)、资源(Resources)以及工具(Tools)这三种核心原语来扩展 LLM 能力[^2]。Apifox 平台也认识到 MCP 技术在 API 开发领域的重要作用,并将其应用于实际场景中[^1]。 为了实现将 `/Users/syw/project/wechatAr` 文件夹下的所有文件上传至远程服务器 `47.93.xx.xx` 用户名 `root` 下的 `/opt/ll` 目录的操作,可以基于 MCP 工具功能构建一个自定义的服务逻辑。以下是具体实现方法: #### 实现方案 利用 SCP 命令完成文件传输任务,并结合 MCP 的 Tool 功能封装此操作以便于后续调用。当关键词为“上传微信目录”时,触发该工具执行相应动作。 ```python import subprocess def upload_wechat_directory(): source_dir = "/Users/syw/project/wechatAr/*" target_server = "root@47.93.xx.xx:/opt/ll/" try: result = subprocess.run(["scp", "-r", source_dir, target_server], check=True) return {"status": "success", "message": f"All files from {source_dir} have been uploaded to {target_server}"} except Exception as e: return {"status": "error", "message": str(e)} # 将上述函数注册为 MCP 中的一个 tool tools = { "upload_wechat_directory_tool": upload_wechat_directory, } # 定义 prompt 和 resource 配置部分省略... ``` 以上代码片段展示了如何创建一个名为 `upload_wechat_directory_tool` 的工具并将其集成到 MCP 系统里去[^3]。每当接收到匹配条件的消息比如含有特定关键字的时候就会激活对应的行为即启动SCP进程从而达成目标需求。 #### 进一步学习资料推荐 对于希望深入研究或者实践更多关于 MCP 应用案例的人士来说,《MCP 教程进阶篇》提供了丰富的实例分析和技术细节值得参考阅读;另外《MCP 极简入门:超快速上手运行简单的 MCP 服务和 MCP 客户端》同样是非常好的起点材料之一可以帮助初学者迅速掌握基础概念及其运作机制。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Tearstornbyrain

最不值钱的便是钱

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值