None of your questions have anything to do with "In Javaland." You already know the answers to these questions.
As a Java developer, I typically want as little access to production as possible.[*] Developers who attempt to debug in production are ninnies.
[*]: What I want and what I need to do (in production) to accomplish my job are often two very different things. I often have far more access than I desire, because I choose to work in small shops where I need to wear multiple hats. That said, I'm trying to move my current place of employ more towards a DevOps model where we can use our CI server (currently Jenkins) to perform push-button deployments to any environment for us, and everything is painless. None of this should require my access to production anything.