The problem with JDBC is that it requires a very stable connection and high bandwidth - two things which definitely are not guaranteed on mobile devices. You're absolutely correct - it would be much better to create a web service.
Updated
A web service has the added benefit of being more secure since you don't leave your database open to attackers, as well being more versatile - so if you in the future want to access it from elsewhere you won't have to write a specific implementation for iOS, WindowsPhone (or a good ol' fashioned website).
Another good reason is that doing work client side on phones can be a heavy operation which is a drain on the system resources (and battery). On modern phones, it might not be noticeable, but can be hugely beneficial to the user experience, especially on older models. There's nothing that kills the user experience more than when it feels "sluggish".