- Да. Можете да използвате някакъв конструктор за настройки, като InnoSetup, например. Лично аз обичам да давам на клиентите си zip файл, който те извличат, където пожелаят. Изпълнимият jar трябва да може да се справи с всичко сам (харесва ми, когато няма нужда да инсталирате софтуера, просто разопаковайте и стартирайте).
- Ако е твърдо кодиран, тогава да (но какво имаш предвид под твърдо кодиран ? път до файла? IP адрес?). Трябва да използвате свойства или конфигурационни файлове за пътища и други външни неща, от които зависи вашият софтуер. Софтуерът трябва да чете от тези файлове. При стартиране проверете за наличие на такъв(и) файл(ове) - ако липсва, на потребителя трябва да се покаже прозорец, в който може да се въведе конфигурацията.
Що се отнася до внедряването на MySQL с вашия код - помислете за използването на сървър за това, така че вашите потребители да не са принудени да инсталират MySQL, вместо това да се свързват с него през мрежата. Ако имате нужда от базата данни само за съхраняване на данни локално, защо не използвате SQLite или подобен, базиран на файлове db двигател?
Горните отговори са само предложения и повече или по-малко отразяват начина, по който мисля. Ще се радвам да чуя някой с повече опит. Въпреки това се надявам отговорите да помогнат малко :)