java程序可以作为网页javascript和数据库之间的中介吗?
我需要为以下项目研究、了解和使用什么: 我想使用javascript在网页上使用googlemaps api显示地图。 上面会有记号笔。 标记将是使用纬度和经度的地理位置。lat和lon坐标将通过输入IPs找到,IPs将为我提供lat和lon。IP是从数据库中获取的。该地图也将显示在Java程序的jpanel中 我最大的担忧和困惑是如何连接到数据库并获取数据。我没有使用javascript的经验,但我听说在网页上用javascript连接到DB是不好的做法。是否可以使用我的java程序作为DB和网页之间的中介来连接、检索和推送数据?这似乎可以保证数据的安全,但我不知道如何将数据从java发送到脚本,或者如果可能的话 也许有人有其他建议java程序可以作为网页javascript和数据库之间的中介吗?,java,javascript,database,google-maps,Java,Javascript,Database,Google Maps,我需要为以下项目研究、了解和使用什么: 我想使用javascript在网页上使用googlemaps api显示地图。 上面会有记号笔。 标记将是使用纬度和经度的地理位置。lat和lon坐标将通过输入IPs找到,IPs将为我提供lat和lon。IP是从数据库中获取的。该地图也将显示在Java程序的jpanel中 我最大的担忧和困惑是如何连接到数据库并获取数据。我没有使用javascript的经验,但我听说在网页上用javascript连接到DB是不好的做法。是否可以使用我的java程序作为DB和
更新:我最初问这个问题时,只是带着一种大致的方向感和一种糊涂的理解,只是在寻找正确方向上的一点。与其认为我的问题很愚蠢,或者一开始我没有尝试找到答案,不如说下面的答案确实花了时间来帮助我,并且能够引导我去我需要去的地方。下一次,不要这么快就把这样一个毫无经验的程序员降级,并试图伸出援手。这就是这个社区的目的,也是我喜欢使用它的原因。JavaScript无法直接连接到另一台服务器上的数据库;除了WebSocket之外,没有API可以实现这一点。您可能想做的是在JavaScript中使用AJAX,并为Web服务器编写一个应用程序,用数据库中的答案回答AJAX请求
这是一项复杂的任务,需要好好学习;根据您的情况,在编写HTML/JavaScript部分时,让其他人编写服务器部分可能更为实际。如果您确实想自己花时间学习,我建议从Spring MVC开始,因为它使编写基于JSON的Web服务变得非常容易。是的,您可以使用服务器端Java代码作为中介。使用JavaScript通过JavaScript的XMLHttpRequest对象将数据发布到HttpServlet。然后处理servlet中的数据 一旦你完成了你的数据库业务,你可以发送一个“全部完成”!回复,由JS处理 我建议阅读XMLHttpRequest对象。另外,请查看涉及已发布数据的HttpServlet示例 下面是一个简单的例子: JS在IE9中工作+
var xmlhttp = new XMLHttpRequest();
xmlhttp.onload = function(data) {
console.log(data);
};
xmlhttp.open("POST", "/servlet", true);
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp.send("fname=Henry&lname=Ford");
爪哇
是的,Java可以做到这一点。Python、PHP和大多数其他语言也是如此。出于安全原因,使用javascript从网页直接访问数据库存在问题。如果不了解更多关于问题、约束或Java经验的信息,就很难提供更清晰的方向。如果所有这些对你来说都是新的,那么我会说你有大量的工作要学习如何做到这一点。对于与来自Java的数据库交互,以下内容可能会有所帮助: 下面是一系列使用Java创建Rest服务的视频教程,javascript可以通过Ajax与这些服务交互: 以下是我的想法: 出于某种原因,您希望存储IP。你使用一个数据库。你有那个角色 您希望从该数据库中读取。您可以使用服务器端代码来实现这一点。例如PHP、ASP或JSP等 您希望在网页和Java桌面程序中显示信息。你可以用Javascript和Java来实现这一点,你也得到了这一部分 现在从1到2从数据库读取数据,数据库提供了一种sql语言,您可以使用该语言检索数据。当然,数据库也有用户名/密码 从2到3,您可以创建某种类型的API来返回您的网站和Java程序所需的数据。您可以使用服务器端语言创建API
注意:您不直接从javascript访问数据库的原因是javascript在客户端上运行。这意味着,运行javascript的用户将能够看到访问数据库的代码,并且代码将包含凭据。是的,这是JSP系统显示自身的一种方式。您是否可以提供任何文档来帮助我理解这个过程?感谢您的输入,无需降级。我没有很强的编程背景。我只是想知道到目前为止你试过/找到了什么?我们需要知道是否有任何事情不起作用,以便我们能够具体解决它。我个人并没有否决这篇文章。到目前为止,我有一个严格使用java构建的类似程序,但我只通过构建url请求来使用google静态地图。我想在javascript中使用googlemaps api,这将允许我使用MarkerClusterer。为了
在不违反使用条款的情况下执行此操作,此api必须公开访问,因此需要与网页集成。谢谢,我熟悉java到DB的交互。问题是,现在我必须在等式中引入javascript,而我对此没有经验。我会看这些视频,谢谢链接
public class MyServlet extends HttpServlet {
public void doPost(HttpServletRequest req, HttpServletResponse resp)
throws IOException, ServletException {
String fname = req.getParameter("fname");
// db code here
PrintWriter out = resp.getWriter();
out.print("All done!");
}
}