网络还没有语义

听说过。那是什么?很可能,你没有一个完全清楚的想法。但是为什么网络还没有“语义”呢?

首先,理解起来很复杂。有大量的标准围绕着它-RDF,RDFa,RDFS,URI,OWL,SPARQL等等。将其与使用HTML的简单、旧的网页进行比较,在HTML中,您编写了一些标记,并有了一个网页。很简单。

如果有明显的好处,复杂性就不是什么大问题了。语义网所依赖的是,每个网站都应该符合一个语义概念(例如使用RDF)。但是,如果您以结构化的方式公开数据呢?没什么。是的,你的页面变得更容易理解我的机器,但你什么也得不到。为什么网店、社交网络或个人网站会被“信号化”?它需要额外的努力,一些无形和难以理解的好处。请注意,我并不是说没有好处--当然有,但它们离普通网站/在线企业主的头脑太远了。

这是一个鸡与蛋的问题-没有直接的好处,所以人们没有使他们的网站语义。而且,由于语义网站太少,没有任何流行的产品能够提供预期的好处。这它是一种专有的解决方案(更不用说标题中的“打开”),它定义了一种提供网页元数据的方法。RDF(以及其他事情)应该做的事情。然F过于复杂(上面的第一点),于是“发明”了一个新东西。你猜怎么着-每个人都在用它。因为它提供了立竿见影的好处--你的页好”,而且由于数百万人在Facebook上,所以公开你的元数据很重要。开放图形协议是相当有限的,当然,但它表明,为了使网络变得更加语义,网站所有者需要一个商业激励。

我的最后一点是关于开放和合作。语义网的前提是人们愿意让自己的数据为他人所用。

因此,与其依赖于网络的语义,试着理解网络上的非结构化数据。数据,这是有用的第三方,但网站所有者不提供。

结合这三个因素,我们需要的是一种激励网站所有者使用更多语义技术的方法,并使他们希望将自己的数据公之于众(因为同样的动机)。当然,试着让它变得更简单一些。所有这些,假设有一个语义网络,一个对机器有意义的数据网络是好的。这看起来是正确的原因,但我们还没有实现。

如何配置您的机器以便为JavaWeb项目进行保存和刷新?当你问开发人员这个问题时,答案是“哦,好吧,…”,并继续对这类作品的描述。每个人都有自己的方式。

https://www.douban.com/note/821182349/

首先-你为什么需要这个?因为复制和重新启动服务器是生产力的杀手--浪费大量的时间。如果没有与容器同步您的项目的生产力提升,即使对于简单的修复,您可能需要一个完整的构建和部署周期,然后才能测试它。这可能需要很多时间,取决于项目的规模。

我会写几个,以补充

  • IDE集成-IDE可以选择添加本地服务器并向其部署项目。这需要额外的插件,配置哪些工作区文件在servlet容器中的位置,而且并不总是工作。当图片中有Maven时,它要么不能工作,要么需
  • 您可以使用一些工具来同步目录结构。在Ecli你去做吧。缺点是,为了在调试模式下运行,需要附加外部调试器(而不是使用内置的IDE-服务器集成)。它需要插件的配置。另外,请记住,如果使用Jetty(更快的选项)进行开发,如果您的生产容器是tomcat,则可能存在行为上的差异。没什么好麻烦的,但还是有一些事情要考虑的。
  • 手动复制项目文件--一开始听起来并不那么糟糕,但随后就开始困扰你了--毕竟,这是一项要求自动化的任务。

现在,您可以将类文件和资源(CSS、javascript、图像、配置文件)复制到servlet容器中。但是,为了让它们工作,您需要一些HotSack功能。也就是说,让JVM重新加载类定义。这方面有四种选择:

  • 正规模式下运行servlet容器。每当更改类文件时,都会交换方法的主体。但是,更改方法或类签名需要重新启动。我一直使用这个选项,而且它没有那么痛苦-毕竟方法签名重新定义和重构并不经常发生,即使它们发生了,重新启动服务器也是重新启动服务器。如果项目是小的,这需要很短的时间,可能是一个选项。但是,即使是对于小型项目,我也不推荐它,因为它至少很容易配置(而且您无论如何都需要调试模式)。

如此多的选项--对于Java世界来说是如此典型。它们工作得差不多很好。但是,我决定再增加一个选项,那就是几乎没有配

https://www.douban.com/note/821146506/

它的工作方式是将aardwark.war文件放入Tomcat中,重命名它,以便名称包含到项目目录的路径,并处理同步。注意,这是添加到上面第一个列表中的一个选项。对于热交换,您仍然需要第二个列表中的三个选项之一。上有更详细的设置指南

  • 它只适用于Maven项目。为了实现零配置,需要使用maven的约定过配置。
  • 它与IDE无关,与servlet容器无关.
  • 它完成了我认为上面没有任何其他解决方案能够完成的任务(可能除了JRebel之外)--它也将同步maven依赖的项目。通常,您有一个多模块项目,其中一些项目打包为JAR,而其他(Web)项目则依赖于它们。但是,您需要能够在“核心”模块中更改类,并立即查看webapp中的更改。这将意味着重新打包和重新加载罐子。AardWARk简单地解析pom,找到依赖的项目并将它们的类复制到类路径,类路径覆盖现有的定义。
  • 支持多个项目,还支持通过属性文件进行配置(如果不希望或不能命名WAR文件以包含项目路径)目。不一定,因为它只需要同步JAR文件,但最好是。Servlet容器不能保证Webapp的加载顺序,但是它们很可能是按字母顺序选择的--因此是aardwark(WAR而不是var,原因很明显)。

我希望它是一个有用的工具,如果人们开始使用它并给出他们的反馈,我会很高兴。

posted @ 2021-12-06 22:46  javd9w  阅读(176)  评论(0)    收藏  举报