目录

  • axios获取后台数据库数据
  • 一、axios库
  • 二、步骤
    • 1.前端代码
    • 2.servlet代码
    • 3.查询数据库代码
    • 4.member类的定义
  • 总结

axios获取后台数据库数据

用jsp页面的话,只要在jsp页嵌入java代码,用上while循环和迭代器。就能很容易的循环输出数据库的内容了。但是jsp的前后端耦合度太高,不利于开发,因此现在使用html较为常见。而html页面难以嵌入后端代码,因此需要用到axios库来实现。本篇简单介绍如何在html页面循环输出数据库的内容。


前端框架:vue 2.x    axios
后端语言:Java
后端框架:无
所用的包:数据库连接包,JSONObject包

jar包的网盘下载 链接:[https://pan.baidu.com/s/1SogRGHJrZEW-ow08S2deMw](https://pan.baidu.com/s/1SogRGHJrZEW-ow08S2deMw) 提取码:8au6 复制这段内容后打开百度网盘手机App,操作更方便哦


一、axios库

axios库是一个基于Promise,同时支持浏览器端和Node.js的HTTP库,常用语Ajax请求。

二、步骤

1.前端代码

使用cdn引入axios库,使用js文件引入vue框架

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
<script src="JS/vue.js"></script><div id="item"><ul><li v-for="n in names">{{n}}</li><li v-for="i in ids">{{i}}</li></ul>
</div><script>var item = new Vue({el:'#item',data:{names:'nai',ids:'none'},mounted () {axios({url:'http://localhost:8080/AjaxTry/TextServlet'}).then(res=>{item.names=res.data.name;item.ids=res.data.id;console.log(res.data);})}})
</script>
</body>
</html>

2.servlet代码

代码如下(示例):

package servlet;import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import classes.member;
import net.sf.json.JSONObject;
import sql.Operate;/*** Servlet implementation class TextServlet*/
@WebServlet("/TextServlet")
public class TextServlet extends HttpServlet {private static final long serialVersionUID = 1L;/*** Default constructor. */public TextServlet() {// TODO Auto-generated constructor stub}/*** @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)*/protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubOperate op = new Operate();ArrayList mbs = op.FindAll();JSONObject jsonObject = new JSONObject();  //创建Json对象if(mbs!=null) {Iterator iter = mbs.iterator();while(iter.hasNext()) {member mb = (member)iter.next();jsonObject.put("name",mb.getname());jsonObject.put("id",mb.getid());}}response.getWriter().print(jsonObject.toString());}/*** @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)*/protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubdoGet(request, response);}}

该处使用的url网络请求的数据。

3.查询数据库代码

连接数据库代码,这里的密码和数据库名要换成自己的

package sql;
import java.sql.*;public class DBConn {public static Connection Conn;public static Connection getConn() {try {Class.forName("com.mysql.cj.jdbc.Driver");}catch(Exception e){e.printStackTrace();System.out.println("数据库驱动加载失败");}try {Conn=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/web_test?serverTimezone=UTC","root","HYC123456");}catch(Exception e) {e.printStackTrace();System.out.println("数据库连接失败");}return Conn;}public static void main(String[] args) {DBConn Conn = new DBConn();Conn.getConn();}
}

查询数据库类,会在servlet中被调用

package sql;import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;import classes.member;;public class Operate {Connection conn=DBConn.getConn();PreparedStatement pstmt = null;public ArrayList<member> FindAll(){try {ArrayList<member> al = new ArrayList<member>();pstmt = conn.prepareStatement("select * from members;");ResultSet rs=pstmt.executeQuery();while(rs.next()) {member mb = new member();mb.setname(rs.getString("name"));mb.setid(rs.getString("id"));al.add(mb);}return al;}catch(Exception e) {e.printStackTrace();System.out.println("异常!");return null;}}
}

4.member类的定义

这个无关紧要,换成String类的也无所谓

package classes;public class member {public String name;public String id;public void setname(String name) {this.name=name;}public void setid(String id) {this.id=id;}public String getname() {return name;}public String getid() {return id;}
}

总结

1.前端axios发送请求,请求的的url填后端的操作方法 2.后端操作方法调用数据库操作类,数据库操作类读取数据库数据 3.然后后端将读取的结果封装成Json格式再response.getWriter().print()到前端 4.然后在前端处理Json数据,本篇用的是vue框架的v-for来循环输出

axios获取后台数据库中的数据相关推荐

  1. 微信小程序 - 无法获取云端数据库中的数据的问题(修改云端数据库权限)

    小程序中从云端数据库获取不到数据 从云端数据库中取数据 // 使用云数据库 const db = wx.cloud.database(); export default{data(){return { ...

  2. Qt工作笔记-以配置文件的方式动态获取Mysql数据库中的数据

    场景 修改配置文件,获取表头,再遍历数据库! 实时监控文件,一旦修改马上重新遍历数据库! 程序运行截图如下: 静态运行图如下: 技术原理及源码 使用QFileSystemWatcher对文件进行监控 ...

  3. 不用sqlDataSet如何从后台数据库中读取数据

    注意:要引用System.Data.SqlClient -----------引用部份如下------------------------ uses   System.Collections, Sys ...

  4. axios获取html页面,axios 获取后台数据

    什么是axios axios是一个获取后台数据的插件 使用 前提得安装node.js 页面直接引用 下载 选中文件夹 shift+右键 调出命令窗口 输入 npm i axios -g axios的特 ...

  5. Case Study: 利用PHP获取关系型数据库中多张数据表的数据

    一.目标 该笔记的目的是引导读者借助WampServer平台和MySQL数据库,利用HTML/CSS/JS/PHP设计一个多数据表关联的网页.在上一个案例(Case Study: 利用JS实现数据库网 ...

  6. html网页如何获取后台数据库的数据(html + ajax + php + mysql)

    目录 html代码 php文件代码 还得在vscode上的php配置以及php环境搭建 基于PhpStudy完成web配置 登录数据库 mysql的table准备 将html文件和php文件项目放入W ...

  7. 获取SQLServer数据库中所有表

    对于获取SQLSERVER数据库中所有表,首先第一步引有SQLDMO.dll 找到文件路径: C:\Program   Files\Microsoft   SQL   Server\80\Tools\ ...

  8. jsp在mysql中删除数据_如何在jsp页面中删除数据库中的数据

    如何在jsp页面中删除数据库中的数据 各位大虾! 我想在jsp页面上写一个按钮功能,从而动态的删除数据库中的一行数据. 不知道怎么实现 这是我写的一段代码 数据库是MySql UserBean p3= ...

  9. 基于JDBC从数据库中读取数据,在百度地图批量标注地点

    基于JDBC从数据库中读取数据,在百度地图批量标注地点 一.相关技术 JSP,JDBC,JSON,JS,百度地图API 二.基于JDBC从数据库读取数据 见"JSP基于JDBC操作MSSQL ...

最新文章

  1. Android 实现简单的插件化模块化
  2. python提取个十百千位数字_实现人脸识别、人脸68个特征点提取,或许这个 Python 库能帮到你!...
  3. python prophet 预言家预知未来
  4. 树复制替换id_程序员的进阶课-架构师之路(12)-2-3-4树
  5. 404. Sum of Left Leaves 左叶子之和
  6. 回调函数(郁闷至极,总是不理解)
  7. 如何下载Visual Studio Code及配置教程
  8. override 与virtual的理解
  9. mac os 使用记录
  10. solidity 合约权限授权_Curve + zkSync L2:以太坊的ZK Rollup智能合约
  11. html视频直播源码,用HTML5开发简单的视频播放器,附源码
  12. 【攻防世界】九、ext3
  13. freeswitch添加G729编解码模块
  14. typecho与WordPress博客程序评测及推荐
  15. [iOS] 浅析排序规则描述类: NSSortDescriptor
  16. 计算机输入法在桌面显示不出来的,电脑桌面输入法不见了怎么办?
  17. javaWeb 中Tomcat 10 jsp文件内置对象不能正常使用的问题(已解决)
  18. 能复活超级英雄的除了时间宝石,还有量子计算机?
  19. 今日头条 ocpc java_今日头条OCPC应该怎么玩?转化才定蹭蹭蹭
  20. 转 ERP和SAP是什么意思?

热门文章

  1. mysql 组内分组_[MySQL] group by 分组并进行组内排序取得最新一条
  2. ASP.NET Core 教学 - Web API JSON 序列化设定
  3. Palindrome(最长公共子序列 + 滚动数组优化)
  4. ZOJ1654.Place the Robots放置机器人——最大独立集
  5. SPSS——非参数检验——Runs游程检验
  6. 苹果报告问题_iPhone12,OLED屏缺陷引争议,苹果“正在调查”
  7. 企业第一道防线:针对用户的安全最佳做法
  8. Copilot 初体验
  9. Linux下c语言创建文件目录
  10. electron-vew在资源管理器中显示文件和直接打开文件