jstl-api和jstl-impl之间的区别

我是Java EE技术的初学者。 我想知道jstl-api jar和jstl-impl jar之间有什么区别。

为什么API和实现是分开的? 这是否意味着还有其他可用的实现?

API和实现是分开的,因为Java EE使用标准化规范。

API是该规范的一部分,并且包含一组主要接口,参与创建所述规范的每个人都同意这些接口。 从理论上讲,每个人都可以创建一个实现已发布的标准化API的实现,其行为与相关的规范文档中描述的相同。 当您通过所谓的TCK(技术合规工具包)时,您可以将您的实施称为“认证”。

这个规范系统的既定目标是鼓励竞争,同时受保护的用户forms被锁定在任何特定的实现中。

特别是JSTL是JSP规范的一部分,它是在JSR 245下开发的。 如果您想自己实现,那么首先要阅读规范文档 。

你能指点我解释如何为jstl编写我们自己的impl的任何教程吗?

据我所知,没有具体的教程可以创建自己的Java EE规范实现。 几乎在所有情况下,它几乎都是专家工作,而且通常只由少数几个组织或个人执行。 虽然David Blevins(TomEE成名)给了我们偶尔一瞥与此有关的工作,但这种材料并不适合教程式的写作。

jstl-api包含需要实现的接口。 jstl-impl包含这些实现的标准或默认实现。 你为什么需要两者? 因为如果你想要标准或默认function你使用jstl-impl,但是如果你想实现自己的行为,你可以覆盖jstl-api中接口的方法。 这就是API的含义:应用程序编程接口。 最好的祝福。