JavaEE规范中经常看到JSR与MR这两个单词, 比如Java EE 7包含14 个 JSRs 和 9 个 MRs。

那么什么叫JSR,MR他们之间有什么区别。


JSR是Java Specification Requests的缩写,意思是Java 规范提案。是指向JCP(Java Community Process)提出新增一个标准化技术规范的正式请求。


任何一个规范开始都叫JSR。且有一个唯一编号,比如 JSR303.  JSR不同时间段,有不同的状态。比如:

"Early Draft Review", "Public Final Draft" and "Final Release".


那什么是MR,MR是maintenance release的缩写。意思是维护版本。指基于某个JSR的升级版。

比如:

Servlet 3.1 specification是 JSR 340.

Servlet 3.0 specification 是 JSR 315.

Servlet 2.5 是 maintenance release of Servlet 2.4. 都JSR 154. 升级版的JSR与原版本的JSR编号一样。