XA is the general specification for distributed transactions(DT). This is not tied to any technology or language.
JTA is the implementation (actually specification) developed to support DTs in Java. A DT can involve more than one "database" or one database + another resource (say JMS).
A normal JDBC driver cannot participate in a DT, whereas an XA JDBC driver can. So, for a same database, depending on the driver this can change.