这里使用Vue+Servlet实现简单的前后端分离的JavaWeb项目。

首先创建一个基本的JavaWeb项目。

按照下图创建文件夹和文件,并导入vue所需要使用的js文件和处理json格式数据所需要的第三方加包gson包。

要实现前后端交互这里需要使用到vue-resource插件,原生的vue没有前后端交互的,,要通过这个插件来实现。

下载vue-resource.js插件可以参考博客安装vue-resource插件

各文件代码如下:

LoginServlet.java

import com.google.gson.Gson;import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;public class LoginServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {doPost(req, resp);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {// 设置请求的编码格式req.setCharacterEncoding("UTF-8");// 设置响应的编码格式resp.setContentType("application/json; charset=utf-8");// 获取用户输入的用户名String user = req.getParameter("user");// 获取用户输入的密码String password = req.getParameter("password");// 实例化GsonGson gson = new Gson();// 判断是否登录成功if (user.equals("admin") && password.equals("admin")) {// 登录成功则输出提示信息String result = gson.toJson(new ResultInfo(1, "登录成功"));resp.getWriter().write(result);} else {// 登录失败也输出提示信息String result = gson.toJson(new ResultInfo(0, "用户名或密码错误"));resp.getWriter().write(result);}}
}

ResultInfo.java

public class ResultInfo {private int ok;private String msg;public ResultInfo(int ok, String msg) {this.ok = ok;this.msg = msg;}public int getOk() {return ok;}public void setOk(int ok) {this.ok = ok;}public String getMsg() {return msg;}public void setMsg(String msg) {this.msg = msg;}
}

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"version="4.0"><servlet><servlet-name>loginServlet</servlet-name><servlet-class>LoginServlet</servlet-class></servlet><servlet-mapping><servlet-name>loginServlet</servlet-name><url-pattern>/loginServlet</url-pattern></servlet-mapping>
</web-app>

index.html

<!DOCTYPE html>
<html>
<head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><title>Vue学习</title><!-- 引入vue.js --><script src="js/vue.min.js"></script><!--引入vue-resource.js插件--><script src="js/vue-resource.min.js"></script>
</head>
<body>
<div id="app">用户名:<input type="text" v-model="user"><br>密码:<input type="password" v-model="password"><br><input type="button" value="submit" @click="login()">
</div>
<script>new Vue({el: '#app',data: {user: '',password: ''},methods: {login: function () {this.$http.get('http://localhost:8080/loginServlet', {params: {user: this.user,password: this.password}}).then(function (data) {if (data.data.ok != 1) {alert(data.data.msg);} else {alert(data.data.msg);}}, function () {console.log('传输失败');});}}})
</script>
</body>
</html>

运行效果:

输入用户名:user,密码:user

输入用户名:admin,密码:admin

代码解释说明:

  • vue-resource插件提供了一个$http方法来传递前后端的数据。
  • 方法后面接传输方式:get()或post()
  • get()方法内的第一个参数是写后端请求的地址;第二个参数是以JSON形式放入的数据名和数据。
  • 在get()方法后还能使用then()方法来进行报错判断,方法内传入两个处理函数。
  • then()方法内的第一个处理函数有个形参,该形参是后台定义的传入信息,自定义的,可以根据需要更改判断信息。
  • then()方法内的第二个处理函数没有参数表示如果信息无法传入后端,该怎么处理。第二个函数可以不要。

如果对完整源码有兴趣。

可搜索微信公众号【Java实例程序】或者扫描下方二维码关注公众号获取更多。

注意:在公众号后台回复【CSDN202001151958】可获取本节源码。

Vue和Servlet搭配使用相关推荐

  1. Vue的项目搭配以及实现页面跳转【电竞杜小帅】

    Vue的项目搭建 1.安装Node.js 下载Node.js,Node.js安装包及源码下载地址:https://nodejs.org/en/download,其他默认就行. 安装好了以后调出命令行输 ...

  2. nodejs+python+php+springboot+vue 女生穿衣搭配系统

    本文研究的女生穿衣搭配管理基于当前较为流行的B/S结构 通过本系统,实现了不同权限的用户登录,包括用户和管理员.管理员:用户管理.类型信息管理.服饰单品管理.今日搭配管理.论坛管理.系统管理.我的收藏 ...

  3. vue父子组件搭配(添加数据和删除)

    <template><div><!-- 添加增加方法 传递给子组件--><Shijian :addTodo="addTodo" /> ...

  4. 用 cooking 搭建一个简单又优雅的 Vue 项目开发环境 (入门篇)

    本文适合 Vue 的初学者,以及对 webpack 不熟悉的同学阅读.前提是你要会用基本的命令行. Node 和 NPM,以及掌握 ES2015 的基础知识.本文都是在 macOS 环境下运行,要求使 ...

  5. echarts迁徙图 vue_vue中高德搭配echarts做数据迁徙流线图

    前言 此系列共分为以下几篇 <vue中高德地图的使用> <vue中基于高德的多行政区域覆盖> <vue中高德搭配echarts做数据迁徙流线图> (本篇) 本篇效果 ...

  6. vue 获取当前发布的版本_Vue 3.0重磅发布!

    来源:OSC开源社区(ID:oschina2013) Vue.js 3.0 "One Piece" 已正式发布,此框架新的主要版本提供了更好的性能.更小的捆绑包体积.更好的 Typ ...

  7. vue + element-ui 聊天_推荐6款Vue管理后台框架,收藏好,留备用

    Vue.js 是一个目前比较流行的前端框架,在业界也算很有名气,今天这里为大家罗列一下基于Vue的后端管理的框架. 使用这些框架你会发现它包括了我们常用的路由,状态,交互等等,我们只需要去复用它的代码 ...

  8. vue人力管理_Vue管理后台框架选择推荐(收藏)

    VUE Vue.js 是一个目前比较流行的前端框架,在业界也算很有名气,今天这里为大家罗列一下基于Vue的后端管理的框架.使用这些框架你会发现它包括了我们常用的路由,状态,交互等等,我们只需要去复用它 ...

  9. Vue 3 正式发布

    Vue.js 3.0 "One Piece" 已正式发布,此框架新的主要版本提供了更好的性能.更小的捆绑包体积.更好的 TypeScript 集成.用于处理大规模用例的新 API, ...

最新文章

  1. 新物流三大趋势!阿里研究院院长说一个空前机会来了
  2. .NET的资源并“.NET研究”不限于.resx文件,你可以采用任意存储形式 [上篇]
  3. 小米平板android版本,除了安卓MIUI7,小米平板2为什么要推出Win10版?
  4. Flink从入门到精通100篇(二十一)-Flink 状态(State)管理在推荐场景中的应用
  5. 何时使用hadoop fs、hadoop dfs与hdfs dfs命令
  6. python如何查询数据库_python如何实现查询sql数据库并生成html文件?
  7. javascript --- 混入
  8. 一建管道工程122知识点_过梁、你应该知道的知识点
  9. 软件测试中qa的职责,软件测试 -- 测试人员和QA的区别
  10. centos7 安装nginx
  11. c/c++教程 - 2.4.4 友元friend用法
  12. linux ssh ip地址命令,关于Linux:在ssh会话中查找客户机的IP地址
  13. 区块链开发(一)搭建基于以太坊go-ethereum的私有链环境
  14. Spring Boot 打包成的可执行 jar ,为什么不能被其他项目依赖?
  15. 分享一篇去年的项目总结
  16. CPU制造工艺完整过程(图文)
  17. 使用 Ansible 高效交付 Docker 容器
  18. linux命令获取reboot信息,linux的reboot命令
  19. 三菱PLC伺服步进控制样例,包含原点回归,手动程序,伺服绝对定位,相对定位,伺服电路图接线
  20. 传统营销与网络营销的整合

热门文章

  1. vue根据银行账号识别银行卡信息
  2. 分布式主键生成设计策略
  3. 如何启动 与配置tomcat 服务端,修改startup.bat乱码现象
  4. 论文的总体结构及质量控制
  5. 计算神经网络推理时间的正确方法
  6. RIA E100 操作方式
  7. 理财--指数基金那点事
  8. Ubuntu16.04+caffe+DIGITS的安装配置指南
  9. 哈理工OJ 1923 纸牌游戏(贪心算法)
  10. 使用ajaxSubmit上传文件总结