No explicit way to add blank lines to the beginning or end of example or source blocks.
For example: describing HTTP header:
-------------------------------------------------------------------
HTTP header consists of colon-separated name-value pairs,
and terminated by a CRLF character sequence, e.g.:
#+BEGIN_EXAMPLE
GET / HTTP/1.1
Host: www.example.com

#+END_EXAMPLE
This is line break at the end of HTTP header.
-------------------------------------------------------------------
But the blank line at end of example block is not exported, and neither in src block,
I check the source, and found it maybe because of the function `org-split-string',
its description as follow:
(defun org-split-string (string &optional separators)
  "Splits STRING into substrings at SEPARATORS.
No empty strings are returned if there are matches at the beginning
and end of string."
  ...)
It means `org-split-string' will ignore all blank lines at the beginning and the end,
but what if I need some blank lines in the beginning or the end?