What are the differences of this options?
Option #1 is really only meant as a quick start. There are many attributes to a web container that you'd want to tweak in a production environment, such as thread pools / number of threads / connectors / etc. I'm unsure about which embedded container your code relates to, but web container configuration is best left to config files and not code in production.
Which one is preferable when using JAX-RS 2.0?
If you're prototyping, use #1. For production use #2. For an entry point into a jersey application, extending the Application
class is the way to go. So it is not really a matter of choice.
Is it important if I would like to add servlets to the service?
I'm not sure what that means. You'd like to add servlets at a later point in time ? It does not matter if you're using an embedded container or a standalone container. Servlets are servlets. They'll serve requests when they are in a container.