SpringBoot实现短链跳转
在Spring Boot中实现短链接跳转功能,可以通过以下步骤实现:
- 创建一个控制器(Controller)来处理短链接请求。
- 使用
@RequestMapping
或@GetMapping
注解来映射短链接对应的路径。 - 在控制器方法中,获取短链接对应的目标URL。
- 使用
HttpServletResponse
进行重定向到目标URL。
以下是一个简单的实现示例:
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
@Controller
public class ShortUrlController {
// 用于存储短链接和目标URL的映射
private static final Map<String, String> SHORT_URL_MAP = new ConcurrentHashMap<>();
static {
// 初始化数据,例如:SHORT_URL_MAP.put("abc123", "http://www.example.com");
}
@GetMapping("/shortUrl")
public void redirectToOriginalUrl(@RequestParam("code") String shortCode, HttpServletResponse response) throws IOException {
String originalUrl = SHORT_URL_MAP.get(shortCode);
if (originalUrl != null) {
response.sendRedirect(originalUrl);
} else {
// 可以重定向到默认页面或返回错误
response.sendRedirect("http://www.default.com");
}
}
}
在这个例子中,当用户访问/shortUrl
路径并带上参数code
时,控制器会从SHORT_URL_MAP
中查找对应的长链接,如果找到则重定向到该长链接,否则重定向到默认页面。
确保你的Spring Boot应用配置了合适的端口和路由规则,并且已经启动服务,以便外部访问短链接。
评论已关闭