You are on page 1of 8

Ôn Tập

https://www.youtube.com/watch?v=_lZXBhGsZmc
1. Tại sao cần kết nối từ ngôn ngữ lập trình tới DB?
- Vì SQL ko phải là ngôn ngữ lập trình, vì nếu SQL là ngôn ngữ lập trình thì ta ko cần
Java, NodeJS, etc. Vì ta có 1 ngôn ngữ vừa làm truy vấn, tương tác với DB vừa là
ngôn ngữ lập trình. Nên ta có ngôn ngữ lập trình và ngôn ngữ truy vấn CSDL. Khi xử
lý ở Backend thì cần chuyển đổi nó qua ngôn ngữ truy vấn (SQL) để tương tác với
DB.

2.

Các cách kết nối từ Java tới DB?


- JDBC (Java Database Connectivity) là thư viện xây dựng từ Java Core, giúp kết nối
từ Java tới DB.
- Persistence Framework: là một tầng giữa trung gian hỗ trợ và tự động hóa việc giao tiếp giữa
app và DB. Nó dùng ResultSet từ JDBC => Persistence Framework cũng sử dụng
JDBC để kết nối tới DB.

https://techmaster.vn/posts/36976/huong-dan-su-dung-jdbc-ket-noi-co-so-du-lieu-
trong-java
Ví dụ cách kết nối bằng JDBC
Chỉ cần add thư viện JDBC vào.
Nhìn qua có nhiều điểm như cần khai báo driver, host, port, username, password trong
code.
Kết quả trả về là 1 ResultSet thì phải biết trong DB thì table đó định nghĩa các column
với loại kiểu dữ liệu gì để parse lại cho đúng. Vì ResultSet không phải là 1 Object.

Mỗi loại CSDL lại có 1 cách viết code khác nhau


Yếu điểm của JDBC
Từ những yếu điểm của JDBC nó sinh ra nhu cầu chuyển ResultSet sang Object

3. ORM
(Object Relational Mapping) là một kỹ thuật lập trình cho phép ánh xạ cơ sở dữ liệu
đến các đối tượng thuộc ngôn ngữ lập trình hướng đối
4. JPA
https://topdev.vn/blog/tong-quan-ve-jpa-java-persistence-api/

Cấu trúc của JPA, nó đã được mô tả bằng interface, những framework như hibernate,
Spring data JPA nó sẽ implement những đặc tính của JPA.
ORM là 1 cách tiếp cận (tư tưởng)
JPA là 1 đặc tả cho ORM
Framework (Hibernate, iBatis, Spring Data JPA) nó là cái triển khai cho JPA.

5. Persistence Framework
Hibernate
https://www.bkns.vn/hibernate-la-gi.html
https://shareprogramming.net/jpa-la-gi/#JPA_la_gi

Spring Data
JPA/Hibernate Tips: chỉ
nên lấy ra thứ bạn cần
https://www.linkedin.com/pulse/spring-data-jpahibernate-tips-ch%E1%BB%89-n
%C3%AAn-l%E1%BA%A5y-ra-th%E1%BB%A9-b%E1%BA%A1n-c%E1%BA
%A7n-v%C5%A9-lu%C3%A2n

JAVA
Jdk 8- jdk 17
https://viblo.asia/p/tat-tan-tat-tu-jdk-8-den-jdk-17-3Q75w7795Wb
https://hocspringboot.net/2021/09/27/java-8-v-s-java-11/

https://hocjava.com/category/tong-quan/
https://techmaster.vn/posts/34290/java-immutable-la-gi

https://gpcoder.com/2295-abstract-class-va-interface-trong-java/
https://gpcoder.com/6596-marker-interface-trong-java/

Sping
https://hocspringboot.net/
https://techmaster.vn/posts/37896/thiet-ke-kien-truc-microservices-voi-spring-don-
gian
https://hocspringboot.net/2021/09/25/loi-ich-va-han-che-cua-viec-su-dung-spring-
boot/
https://www.baeldung.com/spring-autowire
https://docs.spring.io/spring-framework/reference/core/beans/annotation-config/
autowired.html
https://www.baeldung.com/circular-dependencies-in-spring
https://techmaster.vn/posts/36168/spring-boot-3-spring-bean-life-cycle-postconstruct-
va-predestroy

IoC & DI
https://hocspringboot.net/2021/08/18/inversion-of-control-dependency-injection-
spring/

https://techmaster.vn/posts/37894/10-ky-nang-tro-thanh-front-end-developer-gioi

https://viblo.asia/p/oop-the-nao-la-mot-object-tot-gAm5ypMwldb

You might also like