One DB, one schema, let’s get together – week 2
Week 2 was about JDBC and JPA, aka: persistency. Basic stuff for every JEE developer, but important to know as storing data in the database is crucial for every application, and important to know for every developer. HCP runs on top of Tomcat, and therefore supports JDBC as well as JPA with EclipseLink. You can use several database schemas and therefore to different data inside a database. By default, the each application uses its own schema, but this can be changed. SAP offers MaxDB and of course HANA DB on HCP. What exactly you connect to should be of no particular interest, either JDBC or JPA ensure you do not have to take care of the details. I recommend JPA as it abstract even more how data is handled by a Java object.
In case you want to take care of the details, the db tunnel tool allows you to connect directly to the database and use any JDBC tool to inspect the tables and to alter the content. Nice for developers, not so sure about using it in a production environment.
As Tomcat is the application server used in HCP, of course you can connect to more than one schema, allowing for data sharing between HCP apps. What I didn`t entirely get is how to connect a new app to an already existing schema. It looks to me that I first have to deploy the application and only then, I can change the schema it uses. Even when I know the application will never use its default schema, it will be created because of the 1st startup and then I have to change to configuration and delete the never to be used schema? I think I`ll have to go through this scenario using and try it out on HCP.
Course participants are quite active in the discussion forum provided at open.sap.com. Once thing I have to complain is that SAP employees love to use a high display resolution on their laptops. This should be banned for every further open.SAP course. Using zoom disrupts the audience, and not using a zoom makes the content unreadable even on large screens. So please open SAP staff, make sure next time the laptop display resolution is set to 800×600 at max.