Я согласен с печалью.
Если мне нужно использовать MySQL, он обычно находится в сети, поскольку я не хочу, чтобы мои клиенты проходили через трудности, связанные с установкой MySQL.Однако, если вы застряли с использованием MySQL локально, изучите автоматические установки MySQL + установщик NSIS.
Если вы можете использовать любой db, какой захотите, я просто использую javadb / derby.В настоящее время он поставляется в комплекте с большинством установок Java, и если не все, что вам нужно, это добавить файл jar в ваше приложение.
Что касается путей «жесткого кодирования», я действительно не понимаю, что вы имеете в виду.У вас действительно нет «путей», как я думаю, что вы подразумеваете под строкой подключения.Вам не нужно жестко кодировать строку подключения, просто поместите некоторые параметры в файл свойств и создайте из них строку подключения.