The Ampersand That Silently Truncated My Database URL
The connection string was correct. I checked it several times. The application still could not reach MySQL, and the error said nothing useful about why.
The URL was being cut in half before Java ever saw it, by the shell, at a character I had not thought of as a character.