如何从 Mysql Server 将数据加载到仪表板视图?

Posted

技术标签:

【中文标题】如何从 Mysql Server 将数据加载到仪表板视图?【英文标题】:How to load data to dashboard view from Mysql Server? 【发布时间】:2017-11-10 13:22:18 【问题描述】:

我有很多来自不同地方的数据并存储在 mysql 数据库中。我想创建一个仪表板视图。有两个问题,

    我希望数据在插入数据库后立即显示在仪表板页面上。 (避免使用查找)。 预计会有 Java/javascript 语言的解决方案。 我可以使用 firebase 或类似的工具来自动加载数据吗?

我看过一些实时仪表板,我一直想知道他们是如何做到的。如果社区可以提供一些优秀教程的链接,那就太好了。

【问题讨论】:

您是否创建了 Web 服务?对于postget 请求,您应该使用Ajax。然后加载该信息,这将使您在数据库中插入信息并更改网页上的信息,而无需重新加载。你只需要看看 Ajax:我推荐使用 Jquery 或 Angularjs。例如:api.jquery.com/jquery.post 我将发布一个关于你应该如何做的例子。如果您尝试在表中插入数据 【参考方案1】:

我可以看到一些不同的方法来解决您的问题。首先,您必须决定将数据从何处提供给仪表板。

例如:如果您创建一个 Web 应用程序来显示一些由 MySql 数据库直接提供的数据,您将必须创建一个处理身份验证和提供数据的后端应用程序。正如您在问题中引用的那样,您需要实时更新。为此,您必须使用 WebSocket 创建一个架构,该架构将在 MySql 可用时立即提供数据。在这种情况下,您可以完全控制系统并且不会使用 Firebase,但这需要额外的工作。

我遇到了这个问题,就我而言,我的团队决定使用 Firebase 作为工具来加快这个过程。在我的项目中,我有一个庞大的关系数据库,并且必须在仪表板中为经理和高管提供一些特定信息。我决定编写一个 Java 应用程序,它从我的生产数据库中读取这些数据,并每五分钟将它们推送到 Firebase 实时数据库。然后,我们创建了一个 Web 应用程序来显示这些存储在 Firebase 中的数据。在这种情况下,我不必处理身份验证(因为 Firebase 提供了它)和 WebSocket。只要我的后端 Java 应用程序向 Firebase 发送数据,它就会显示在仪表板中,无需重新加载页面。

在 Firebase 的 GitHub 帐户中,您可以看到许多有关操纵将实时更新的数据的示例。

https://github.com/firebase/quickstart-js

英语不是我的母语,对于可能出现的错误,请见谅。

【讨论】:

谢谢@Alexandre,非常有用的想法。我喜欢它。【参考方案2】:

假设您的服务在:http://localhost:4848/ 上运行,并且它有 2 种方法。 Mysql 上的第一个插入,另一个获取您插入的表的信息。

var apiURL = 'localhost:4848/'; // Web service URL
displayUsers(); // When the documents load

function insertUser(input) 
  var apiMethod = 'insert/user';
  var data = $("#username").val();

  $.ajax(
    type: "POST",
    url: (apiURL + apiMethod),
    data: data,
    success: function (response) 
      displayUsers();
    ,
    dataType: 'text'
  );


function displayUsers() 
  var apiMethod = 'getAll';
  $.ajax(
    type: "POST",
    url: (apiURL + apiMethod),
    success: function (response) 
      $('#user-list').text(response);
    ,
    dataType: 'text'
  );
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="form">
  <input type="text" id="username">
  <input type="submit" value="Add" onclick="insertUser()">
</div>
<div class="list" id="user-list">
</div>

还可以观看Post。关于firebase我不知道有什么可以帮助你。但我认为这可能会对您有所帮助。

【讨论】:

您可能需要调试一些代码,但我认为这会有所帮助。有什么问题就问

以上是关于如何从 Mysql Server 将数据加载到仪表板视图?的主要内容,如果未能解决你的问题,请参考以下文章

(转)如何将数据库从SQL Server迁移到MySQL

如何将数据库从mysql工作台导出到sql server

如何将数据从 SQL Server 实时或定时同步到 MySQL 数据库

闪亮的仪表板 - 显示一个专用的“正在加载..”页面,直到数据的初始加载完成

将数据从 sql server 增量上传到 Amazon Redshift [关闭]

PFFile 无法将文件存储到 Parse-server