Image Grails保存用户头像照片并在GSP中显示它们的最佳方式?
我应该使用哪个文件夹将用户的头像照片保存在Tomcat容器中,以及如何在视图中显示它Image Grails保存用户头像照片并在GSP中显示它们的最佳方式?,image,grails,gsp,avatar,Image,Grails,Gsp,Avatar,我应该使用哪个文件夹将用户的头像照片保存在Tomcat容器中,以及如何在视图中显示它 我知道它必须在war文件之外,但我无法访问带有图像标记的图像,该图像标记位于提取的war文件夹之外。一个上传和显示用户配置文件照片的例子很受欢迎。 < P>如果它们只是小的化身,你可以考虑把它们保存到你的数据库中。当您需要再次显示它们时,您可以从数据库中获取它们并将它们写入响应的outputstream 下面是一个如何做到这一点的示例: 实际上,Tomcat不擅长提供静态文件,因此在Java应用程序前面放置“前
我知道它必须在war文件之外,但我无法访问带有图像标记的图像,该图像标记位于提取的war文件夹之外。一个上传和显示用户配置文件照片的例子很受欢迎。 < P>如果它们只是小的化身,你可以考虑把它们保存到你的数据库中。当您需要再次显示它们时,您可以从数据库中获取它们并将它们写入响应的outputstream 下面是一个如何做到这一点的示例:
实际上,Tomcat不擅长提供静态文件,因此在Java应用程序前面放置“前端”是很常见的。通常是这样。如果你不使用Nginx,我强烈建议你开始使用它,Nginx可以给你5倍的加速 使用Nginx,您可以存储/和服务器来自任何目录的图像:
server {
location ~ ^\/(css|js|images)\/.*\.(gif|jpg|jpeg|png|ico|css|js)$ {
root PATH_TO_WEBAPP;
}
location ~ ^\/avatar\/.*$ {
root PATH_TO_AVATARS;
}
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
}
}
其中:
- 到WEBAPP的路径是tomcat提取您的应用程序的地方(
)/etc/tomcat/webapps/myapp
- 路径到化身是存储化身的目录(
)/etc/my\u AVATARS
只需将所有其他请求转发到http://127.0.0.1:8080
localhost:8080上的Tomcat即可
/avatars/myavatar.png
的url,因此您可以使用
资源
像往常一样标记:
<img src="${resource(dir: 'avatars', file: 'myavatar.png')}" />
您尝试过什么?你研究了什么?帮助解决问题也是如此,而不是提供完整的解决方案。我不想存储在数据库中