It uses the Template Design Pattern.
It will get the Connection object using DMDS[DriverManagerDataSource] because we are injecting DS[DataSource].
It creates the Statement object based on the query.
It executes the Statement.
It will handle the Transaction Logic and it cannot handle the Transaction Logic.
Transaction Logic is handled by AOP, we have to just configure AOP classes in the configuration file.