0

我正在学习 JAVA 和 Spring Framework。我想知道在 java 中是否可以使用来自 url 的值并从数据库中获取来在 spring 框架中创建动态 URL。

我正在尝试用 Java 制作 URL Shortner,我需要在我的数据库中查找 url 的短代码,众所周知,url shortner 看起来像“url/ShorTCode”,我的脚本将在数据库中查找“ShorTCode”关键字并将重定向到相关的网络链接。

所以我想知道在 JAVA 和 Spring 中是否有可能?还有一件事,如果我做这样的“url/yt/VIdeoCode”或“url/fb/UserProfile”

因此,它将查看 yt 对象,该对象将仅重定向到 youtube 链接,而 fb 对象将重定向到 facebook 用户配置文件。

我想澄清一下,我仍在学习 JAVA、JSP 和 Spring,但我想在学习的同时牢记这件事,这样我就可以专注于一些特定的事情。

谢谢大家帮我。

4

1 回答 1

0

如果你问你的控制器如何响应动态重定向,答案是:(1) 让控制器返回“redirect:”结果而不是视图名称。它后面必须跟一个绝对url,行为可能取决于你的 spring 版本和配置,但基本上它看起来像这样:

@RequestMapping(...)
public String myMethod(){
   String url=... // database lookup, e.g. "http://myUrl"
   return "redirect:"+url;
}

(2) 不太优雅但有时很有用:直接访问响应。如果你的控制器方法有一个 HttpServletResponse 类型的参数,spring 会自动注入它。所以:

@RequestMapping(...)
public String myMethod(HttpServletResponse resp){
   ...
   response.sendRedirect(...)
}
于 2014-09-03T05:13:07.397 回答