So I am attempting to make an application based on the architecture proposed by this image;
(source: ibm.com)
[1]
However, I am getting very confused with how data access is achieved between the data access layer which is on a seperate tier (from my understanding this means a seperate server/machine) to the database. Say I have my hibernate config file;
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">.......</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306</property>
...etc
How, if Hibernate etc and the DB are on seperate servers can I possibly extract the data from the DB into my business logic layer using my DAL. Other than setting up JDBC and the MySQL server instance to use a remote connection, but its my understanding that it is bad practice to do this.
What is it that I am missing here?