servlet+JSP与SpringBoot+Vue项目交互——servlet访问Vue页面

àì夳堔傛蜴生んèń 2023-10-12 23:24 104阅读 0赞

问题

servlet+JSP与SpringBoot+Vue项目交互——servlet访问Vue页面

详细问题

笔者前一段时间开发一个项目,使用的技术框架是servlet+JSP,现阶段开发的项目技术框架为SpringBoot+Vue,笔者现在需要输入servlet+JSP的路由地址(登录页面),但是页面内容是Vue页面(登录页面),如何实现

解决方案

创建一个类,继承HttpServlet,重写doGet方法
相关代码如下

  1. @WebServlet(value = "/login")
  2. public class LoginServlet extends HttpServlet {
  3. @Override
  4. protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  5. // 访问Vue页面所在路由
  6. response.sendRedirect("http://localhost:8081/user/login");
  7. }
  8. }

问题原因

servlet+JSP 技术框架中,无法直接访问 Vue 页面,因为 servlet+JSP 是基于 Java Web 的技术,而 Vue 是前端的框架,两者的开发方式和技术栈不同。

解决原因

在 servlet+JSP 项目中访问 Vue 页面,我们需要使用重定向的方式,将请求从 servlet 路由重定向到 Vue 页面所在的路由地址。
具体实现中,我们创建了一个 LoginServlet 类,并使用 @WebServlet 注解将其映射到 /login 路径。在 doGet 方法中,调用 response.sendRedirect 方法,将请求重定向到 Vue 页面的路由地址。
通过这种方式,当我们在 servlet+JSP 项目中访问 /login 路径时,servlet 会将请求重定向到 Vue 页面,从而实现了在 servlet+JSP 项目中访问 Vue 页面的需求。
事实上,重写doGet方法并非唯一选择,如代码所示:只需获取HttpServletResponse 对象进行操作就可以实现重定向。所以,对于HttpServlet所提供的所有的方法参数中含有(doGet,doPost,doPut,doDelete)HttpServletResponse对象的方法,都可以通过调用 response.sendRedirect 方法,将请求重定向到 Vue 页面的路由地址。

参考文献

问题原因以及解决原因参考chatgpt

原创不易
转载请标明出处
如果对你有所帮助 别忘啦点赞支持哈
在这里插入图片描述

发表评论

表情:
评论列表 (有 0 条评论,104人围观)

还没有评论,来说两句吧...

相关阅读

    相关 H5页面vue的客户端交互

    工作中经常遇到一些奇怪的东西,我有个这样的需求,就是我写的vue项目被嵌套在别的h5项目页面下,so进入我的页面前需要判断他的h5页面有没有登录,这时候就需要我的客户端