Вы в основном ищете объект реляционного картографа. Hibernate является одним из пионеров в этой области. JPA - это новый и хорошо зарекомендовавший себя стандарт Java EE в этой области, созданный парнем из Hibernate. Hibernate и EclipseLink предлагают реализации JPA.
Существуют инструменты IDE для автоматической генерации классов Java на основе моделей баз данных и наоборот, такие как Инструменты Hibernate для "старого доброго" Hibernate и Eclipse Dali для JPA.
Если вы не хотите использовать ORM и / или не хотите автоматически генерировать объекты модели, вам просто нужно убедиться, что вы спроектировали правильные объекты модели для модели базы данных. То есть используйте свойство Long
для поля BIGINT
, свойство BigDecimal
для поля DECIMAL
и так далее. Обзор отображений по умолчанию можно найти в этой странице .
В "простой ванили" JDBC вы должны по крайней мере использовать PreparedStatement
методы для составления SQL-запроса, а не для конкатенации в виде String. Существует множество методов setXXX()
для определенного типа данных, таких как setLong()
, setBigDecimal()
и так далее. PreparedStatement
не только облегчает настройку полноценных объектов Java, таких как Date
и InputStream
в запросе SQL, но также предотвращает код от SQL-инъекций атак . Вы можете узнать больше о PreparedStatement
в руководстве по Sun JDBC , а базовый учебник по DAO можно найти в этой статье .