There were different Germanic tribes and thus the people living in the Germanic territory were called differently by the peoples around them.
In English it was chosen the overall expression for all Germanic tribes: German.
In French and Spanish the "Alemannen" a south western tribe (and therefore locally closer to France and Spain) seemed to have left an impression: allemand, alemán.
For me, Saksa seems to follow the same pattern: the "Saxons" where the tribe in the North East, and therefore close to Finland.
The words deutsch, tedesco (ital.) and I suppose Tyskland as well derive from the Old High German word diutisc, "belonging to the people/of the people".
An addition: "deutsch" derives from the Proto-Germanic stem *þeodisk- ('*' indicates reconstruction), meaning "of the people" or "popular". It invaded (Late?) Latin via some Germanic dialect as "theodiscus" and was used in legal documents to refer to regional languages in contrast to Latin. At that time its use wasn't restricted to the languages of Germanic tribes nor the ones in modern Germany, Austria, etc.. It was instead used to refer to all popular languages.
The first attested usage of "deutsch" (or rather "diutisc") is from a Middle High German poem called "Annolied" composed in the late 11th century. Here, "diutisc" is used as an umbrella term for Franconians, Saxons and Bavarians.
The words related to Niemcy in the Slavonic languages mean something like "mute", nie meaning "not" and m being a root for "to speak", like mówić in Polish for example. This is due to the fact that Slavonic languages are on a basic level mutually understandable, so the Polish tribes could talk to all their neighbours which were other Slavonic tribes, except the Germans.