我正在 JSP 中开发一个网页,该网页使用大量从 Java 后端类动态生成的 JavaScript 代码。它是关于 Google map 和一个名为 MarkerClusterer 的 JS 库。
目前,此类通过处理 Java 中的字符串来生成 JavaScript 代码,并将其直接打印到 JSP 页面中,但是在 Java 字符串中编写 JS 并维护它变得有点复杂。
JavaScript 始终需要进行大量修改,因为此类在不同的项目中使用。理想情况下,我想以一种可以用作库的方式对其进行打包,而不需要进一步修改,所以这就是问题,最好的方法是什么?
这是部分代码:
public class JavascriptGenerator {
public String gerarPorRegiao(String contextPath, List<Endereco> lista, boolean infoWindowEnabled) {
String saida = "";
saida += "<script type=\"text/javascript\" src=\"http://maps.google.com/maps/api/js?sensor=false\"></script>"
+ "<script type=\"text/javascript\" src=\""
+ contextPath
+ "/js/markerclusterer.js\"></script>"
+ "<script type=\"text/javascript\">"
+ "var map;";
for(Estado e: Estado.values()) {
saida += "var mc" + e.toString() + ";";
}
saida += "var selecionado;"
+ "var center = new google.maps.LatLng(-11.0, -51.9);"
+ "var geocoder = new google.maps.Geocoder();"
+ "var infowindow = new google.maps.InfoWindow();"
+ "var markerContent = new Array();"
+ "function geocoderInit() {"
...
最佳答案
我会说:不要。
不要动态生成 JavaScript。维护这将是一场噩梦。将 js 保存在静态文件中,并使用 ajax 来获取数据。您的数据可以采用 JSON 形式。可以使用您可以下载的许多 JSON 库之一从对象层次结构自动生成 JSON。
关于java - 从 Java 管理动态 JavaScript 的最佳实践是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19004361/