9月29日GoGoBook踩坑记(SSM实战项目)

9月29日GoGoBook踩坑记

  1. 在IDEA中无法访问静态页面(html).

在写后端代码之前,GoGoBook项目的页面已经写好了。今天进行整合的时候,发现无法访问。已经配置了如下:

<mvc:annotaion-driven/>
<mvc:default-servlet-handler/>
<mvc:resources mapping="" location=""/>

解决办法

耗时半天


<mvc:annotaion-driven/>
<mvc:default-servlet-handler/>
<mvc:resources mapping="/**/*.*" location="classpath:static/"/>
如上面写的:mapping是映射,location是对应的映射的真实路径。简单说就是:将任意路径+任意名称+任意扩展名 的url(静态资源)映射到location指的位置,进行拼接。
例如:我的resources(classpath路径)下的文件夹层次为:
			--static
				--html
				--css
				--js
		那么当我访问http:localhost:8080/GoGoBook/html/login.html,后,最终访问的就是就会访问到static下的html目录下的页面。也就是将两者进行了拼接。

******************
这样配置了以后,在html中引用js,css,直接这样写http://localhost:8080/css/login.css即可
  1. 使用GSON+@ResponseBody返回json乱码

解决办法

在@RequestMapping中加上@produces="text/html;charset=utf-8"

@RequestMapping(value = "/login" ,produces = "text/html;charset=utf-8")
  1. 下载图片到服务器,前端却无法访问

这个真的也耗费了很长时间才搞定。

在项目中,我将图片保存到了本地的一个位置,然后将图片路径传到了前端进行展示,但是却无法访问。最终得知是chrome浏览器的限制,限制浏览器访问本机除项目以外的位置。

解决办法

**配置Tomcat虚拟路径**
方法一:在tomcat的配置文件中server.xml中的host之间加上
<Context path="/file"      docBase="F:\testDownloadPic" debug="0" reloadable="true"/>
path为虚拟出来的路径,在项目中访问这个路径就相当于访问后面设置的真实的路径:http://localhost:8080/file/..
docBase:真实路径
之后重启服务器即可(如果未生效,检查使用的ide是否没有对修改生效)
方法二:在IDEA中配置虚拟路径
1. 点击右上角的edit configurations
2. Deployment
3. 点加号
4. External Source
5.选择真实的路径
6.填写虚拟路径

祝项目接下来顺风顺水编写完

posted @   小桃无主花自开  阅读(157)  评论(0编辑  收藏  举报
编辑推荐:
· 理解Rust引用及其生命周期标识(下)
· 从二进制到误差:逐行拆解C语言浮点运算中的4008175468544之谜
· .NET制作智能桌面机器人:结合BotSharp智能体框架开发语音交互
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
阅读排行:
· 2025成都.NET开发者Connect圆满结束
· 后端思维之高并发处理方案
· 千万级大表的优化技巧
· 在 VS Code 中,一键安装 MCP Server!
· 10年+ .NET Coder 心语 ── 继承的思维:从思维模式到架构设计的深度解析
点击右上角即可分享
微信分享提示