On one project I was assigned to recently, I used Hibernate to manage data access. I even explained the whole deal to my technical manager and my project manager— with some level of excitement. (Okay, maybe with a lot of excitement— think a kid in a candy store).

Anyway, there was one time when we had to demonstrate the working system to the client, and we fielded some concerns they had. Part of the deal was that we had to transfer the code to them, so they can make necessary modifications. Apparently, they were planning to change some parts of the database (and change it on their own), so they naturally inquired of the file(s) containing the SQL statements. These guys came from a PHP/scripting background, and they thought JSP was just a variant of sorts of PHP, for Java.

I definitely had a hard time explaining to them that the SQL was generated dynamically by Hibernate— I did point them to the mapping documents and the classes I used...

Previously: CSS is the way to go