Kết nối database với java spring

I. Giới thiệu về sự kết hợp giữa Spring và Hibernate

Hibernate và Spring là mã nguồn mở Java khuôn khổ mà đơn giản hóa việc phát triển các ứng dụng Java / JEE, ứng dụng độc lập chạy trên một JVM duy nhất, từ đơn giản cho đến các ứng dụng phức tạp, chạy trên các máy chủ ứng dụng toàn diện. Hibernate và Spring cho phép các nhà phát triển để tạo ra khả năng mở rộng, đáng tin cậy, và hiệu quả.

Mặc dù mục đích của các khuôn khổ một phần chồng lên nhau, đối với hầu hết các phần, từng được sử dụng cho một mục đích khác nhau. Hibernate framework nhằm giải quyết các vấn đề quản lý dữ liệu trong Java:API Java, JDBC (Java Database Connectivity), persistence providers , DBMS (Database Management Systems), và là ngôn ngữ trung gian, SQL (Structured Query Language).

Ngược lại, Spring là một khung nhiều tầng mà không dành riêng cho một khu vực kiến trúc ứng dụng cụ thể . Tuy nhiên, Spring không cung cấp giải pháp riêng của mình cho các vấn đề như sự kiên trì, mà đã có giải pháp tốt. Thay vào đó, Spring thống nhất các giải pháp từ trước dưới API nhất quán của nó và làm cho họ dễ dàng hơn để sử dụng. Như đã đề cập, một trong những khu vực này là persistence. Spring có thể được tích hợp với một persistence solution, như Hibernate, để cung cấp một lớp trừu tượng, quản lý, và có hiệu quả.

II. Kết nối database

  1. Tạo DB với MySQL

Tạo 1 database tên studentdb với bảng là student có cấu trúc bảng như sau:

cc076ea6de9d4bcee9b9041ee31e83362bc35917

  1. Tạo Spring project

2.1 Tạo 1 dynamic web project tên KetNoiDB, add new folder cho project:

836228de2248bbee89c46b4db8e4b5a7b70183ab

Convert sang maven project và add maven vào thư viện của project

420c9419a6ebe713d9e90749c30348a1d553e992

Cấu hình file pom để sử dụng spring, hibernate và MySQl như dưới đây:

2.2 Tạo file jdbc.properties để cấu hình sử dụng DB

Vào srcmainwebapp tạo new file và đặt tên là jdbc.properties:

Day là config de connect voi DB MySQl

Tạo các file, folder theo hình sau:

e38719d753db503dcf41d9e76bff2a8bf0e745b1bai2_5.jpg

2.3 Nội dung của cá file như sau:

2.3.1 com.nhungnth.model/student.java

2.3.2 com.nhungnth.dao/StudentDao.java

2.3.3 com.nhungnth.dao.impl/StudentDaoImpl.java

2.3.4 com.nhungnth.service/StudentService.java

2.3.5 com.nhungnth.service.impl/StudentServiceImpl.java

2.3.6 com.nhungnth.controller/StudentController.java

2.4 tạo các file view cho webapp

2.4.1 src/main/webapp/jsp/includes.jsp

<! – File này chứa các thư viện thẻ sử dụng nhiều nhất ->

2.4.2 src/main/webapp/jsp/student.jsp

2.5 Cấu hình của các file log4j.xml, hibernate.cfg.xml và web.xml:

2.5.1 srcmainresourceslog4j.xml — ghi lai log

2.5.2 srcmainresourceshibernate.cfg.xml — cofig cho file hibernate

2.5.3 srcmainwebappspring-servlet.xml — cấu hình file servlet

p:location=”/WEB-INF/jdbc.properties” />

2.5.4 srcmainwebappweb.xml

Kết luận: Refesh lại project và start server để run project

6170d26ee38b5dd04c08af3db35e18a7d1474d5f

Lợi thế khi dùng Hibernate:

  • Nâng suất: không viết code sql, ít viết code java
  • Hiệu suất: cahce
  • Dễ bảo trì
  • linh hoạt: do generate code sql, có thể tùy chỉnh sql *Nhược điểm của Hibernate Chậm hơn jdbc do phải generate code sql
 ITZone via Viblo
Nguời viết Nguyễn Thị Hồng Nhung

 

Chia sẻ bài viết ngay