Din inställning ser bra ut. Detta ser ut att vara ett rent behörighetsproblem.
Du måste ge den användaren åtkomst i mysql. Även om Java kommer att ansluta till localhost, kommer det att göra det med tcp/ip - men i mysql har localhost och 127.0.0.1 olika betydelse. Att utfärda denna SQL borde göra susen.
grant all on twitter.* to 'root'@'127.0.0.1' identified by 'mypwd';
Det förutsätter att Java löser 'localhost' till 127.0.0.1, om saker fortfarande inte fungerar kan du försöka ändra din anslutningssträng till "jdbc:mysql://127.0.0.1:3306/twitter"
Som du har det nu, klartextlösenordet.