Prepare Interview

Mock Exams

Make Homepage

Bookmark this page

Subscribe Email Address

Difference between JDBC and JPA

JDBC JPA
JDBC is a standard for Database Access.JPA is a standard for ORM.
JDBC is a standard for connecting to a DB directly and running SQL against it - e.g SELECT * FROM USERS, etc. Datasets can be returned which you can handle in your app, and you can do all the usual things like INSERTS, DELETES, run stored procedures, etc. It is one of the underlying technologies behind most java database access (including JPA providers).
One of the issues with traditional JDBC apps is that you can often have some crappy code where lots of mapping between datasets and objects occur, logic is mixed in with SQL, etc.
JPA is a standard for Object Relational Mapping. This is a technology which allows you to map between objects in code and database tables. This can "hide" the SQL from the developer so that all they deal with are java classes, and the provider allows you to save them and load them magically. Mostly, XML mapping files or annotations on getters, setters can be used to tell the JPA provider which fields on your object map to which fields in the DB. The most famous JPA provider is Hibernate, so is a good place to start for concrete examples. Other JPA implementations are OpenJPA, Toplink etc.

Related differences

JDBC vs HibernateJDBC vs JPAJDBC 3.0 vs JDBC 4.0
JPA vs Hibernate
Is it helpful? Yes No

Get differences from below

JSF vs JSPJSP vs ServletsJSP vs ASP
JSF 1.2 vs JSF 2.0JSF 2.0 vs JSF 2.1Java 5 vs Java 6
Java 6 vs Java 6 update 10Java 6 vs Java 7Java 6 update 10 vs Java 6 update 12
Java 1.0 vs Java 1.1Java 1.1 vs Java 1.2Java 1.2 vs Java 1.3
Java 1.3 vs Java 1.4Java 1.4 vs Java 5Struts 1 vs Struts 2
Struts 1.1 vs Struts 1.2Struts 1.2 vs Struts 1.3Linux vs Unix
C vs C++Java vs C++Java vs J2EE
Java vs KotlinJava vs .NETStruts vs JSF
Struts vs SpringSpring vs Spring BootApache vs IIS
Jboss vs TomcatJboss vs WebLogicWebLogic vs Websphere
JavaScript vs JqueryJavaScript vs VBScriptJavaScript vs TypeScript
Jquery vs AngularJSHTML vs XMLHTML vs XHTML
HTML vs DHTMLHTML 5 vs HTML 4Java 7 vs Java 8
EJB 2.0 vs EJB 3.0EJB 3.0 vs SpringJDBC vs Hibernate
JDBC vs JPAJDBC 3.0 vs JDBC 4.0CSS 2 vs CSS 3
EJB 1.0 vs EJB 2.0AWT vs SwingSwing vs Applet
PHP vs JSPJ2EE vs J2MEJava 8 vs Java 9
JPA vs HibernateMVC 1 vs MVC 2Hibernate 3 vs Hibernate 4
Spring 3.0 vs Spring 4.0Java 9 vs Java 10jQuery Mobile vs Bootstrap
JavaBeans vs EJBJSON vs XMLRESTful Web Services vs SOAP Web Services
Spring 2.5 vs Spring 3.0HTTP vs HTTPSAngularJS vs NodeJS
AngularJS vs AngularNodeJS vs JavaNodeJS vs Spring Boot
NodeJS vs GolangPaaS vs IaaSSaaS vs PaaS
SaaS vs IaaSOn-Premise vs Cloud ComputingMonolithic vs Microservices
Java 10 vs Java 11Spring MVC vs Spring BootGolang vs Java
Python vs JavaAWS vs AzureAWS vs Google Cloud/GCP
Ansible vs TerraformAnsible vs PuppetPuppet vs Terraform
OpenID Connect vs OAuth 2.0SAML vs OpenID ConnectJava 11 vs Java 12
Java 12 vs Java 13Java 13 vs Java 14Java 14 vs Java 15
Java 15 vs Java 16Java 16 vs Java 17Python 2 vs Python 3
RDBMS vs HadoopAngular vs ReactJava 17 vs Java 18
GraphQL vs RESTful Web Services (REST API)RESTful Web Services (REST API) vs gRPCAndroid vs iOS
TikTok vs InstagramInstagram vs YouTubeTensorFlow vs PyTorch
OracleJDK vs OpenJDK
©2024 WithoutBook