CHƯƠNG 1. TỔNG QUAN ĐỀ TÀI 1. Tổng quan đề tài Hiện nay, hệ thống quản lý tiêm chủng mới chỉ được triển khai đến cấp huyện tại một số địa phương. Việc quản lý tiêm chủng tại các trạm y tế xã vẫn còn gặp nhiều khó khăn trong việc quản lý.
Từ đó, nhu cầu cấp thiết đặt ra là cần xây dựng hệ thống quản lí tiêm chủng cho các trạm y tế tại các xã nhằm tạo điều kiện thuận lợi cho người dân, cơ sở tiêm chủng quản lí việc tiêm chủng, cụ thể là xã Suối Tân. Từ lý do trên, chúng tôi chọn đề tài “Website quản lý tiêm chủng cho trẻ em của trạm y tế xã Suối Tân” làm hướng nghiên cứu cho đề tài. Mục tiêu đề tài Xây dựng website quản lý tiêm chủng cho trẻ em của trạm y tế xã Suối Tân. Với các chức năng cụ thể : Người dân: + Xem thông tin vắc xin + Xem lịch tiêm chủng + Đăng ký tham gia tiêm chủng.
+ Xem lịch sử tiêm. + Phản hồi sau tiêm Trạm y tế: + Xem thông tin vaccine + Xem danh sách tiêm + Xem lịch tiêm chủng + Lập kế hoạch tiêm chủng + Thu thập thông tin sau tiêm 1. Phạm vi nghiên cứu Đề tài áp dụng cho xã Suối Tân và sau này có thể mở rộng ra phạm vi toàn xã trong tỉnh. Các xã sẽ chủ động trong việc tiêm phòng vaccine cho trẻ 1.
Phương pháp nghiên cứu Phương pháp nghiên cứu lý thuyết thu thập thông tin qua sách, các tài liệu, trang web để tìm được các cơ sở lý thuyết liên quan vấn đề mình nghiên cứu. Phương pháp triển khai thực nghiệp: xây dựng website SVTH: MAI XUÂN DUY GVHD: TS. HOÀNG THỊ MỸ LỆ 2 TIEU LUAN MOI download : skknchat@gmail. Giải pháp công nghệ Ngôn ngữ lập trình: Java - Spring framework, TypeScript – Angular framework Hệ quản trị cơ sở dữ liệu: MySQL.
Công cụ hỗ trợ: StarUML, IntelliJ IDEA, WebStorm, MySQL Workbench 1. Đặc tả yêu cầu nghiệp vụ 1. Trạm y tế (Admin) Xem thông tin vaccine Xem danh sách tiêm Xem lịch tiêm chủng Lập kế hoạch tiêm chủng Thu thập thông tin sau tiêm 1. Người dân (User) Xem thông tin vắc xin Xem lịch tiêm chủng Đăng ký tham gia tiêm chủng.
Xem lịch sử tiêm. Phản hồi sau tiêm SVTH: MAI XUÂN DUY GVHD: TS. HOÀNG THỊ MỸ LỆ 3 TIEU LUAN MOI download : skknchat@gmail.com CHƯƠNG 2. Ngôn ngữ lập trình Java 2.
Java là gì? Java là một ngôn ngữ lập trình dạng lập trình hướng đối tượng (OOP). Khác với phần lớn ngôn ngữ lập trình thông thường, thay vì biên dịch mã nguồn thành mã máy hoặc thông dịch mã nguồn khi chạy, Java được thiết kế để biên dịch mã nguồn thành bytecode, bytecode sau đó sẽ được môi trường thực thi (runtime environment) chạy. Cú pháp Java được vay mượn nhiều từ C và C++ nhưng có cú pháp hướng đối tượng đơn giản hơn và ít tính năng xử lý cấp thấp hơn. Do đó việc viết một chương trình bằng Java dễ hơn, đơn giản hơn, đỡ tốn công sửa lỗi hơn.
Lịch sử phát triển Java được khởi đầu bởi James - Gosling và bạn đồng nghiệp ở Sun Microsystems năm 1991. Ban đầu ngôn ngữ này được gọi là Oak (có nghĩa là cây sồi) do bên ngoài cơ quan của ông Gosling có trồng nhiều loại cây này. Java được phát hành vào năm 1994. Sau khi Oracle mua lại công ty Sun Microsystems năm 2009 - 2010, Oracle đã mô tả họ là "người quản lý công nghệ Java với cam kết không ngừng để bồi dưỡng một cộng đồng tham gia và minh bạch".
Lịch sử phiên bản java: - JDK 1.2 (Playground) 08 tháng 12, 1998 - J2SE 1.3 (Kestrel) 08 tháng 5, 2000 - J2SE 1.0 (Merlin) 06 tháng 02, 2002 - J2SE 5 (1.0) (Tiger) 30 tháng 9, 2004 - Java SE 6 (còn gọi là Mustang), được công bố 11 tháng 12 năm 2006. - Java SE 7 (còn gọi là Dolphin), được bắt đầu từ tháng 8 năm 2006 và công bố ngày 28 tháng 7 năm 2011. - Java SE 8 ngày 18 tháng 3 năm 2014 - Java SE 9 ngày 21 tháng 9 năm 2017 - Java SE 10 ngày 20 tháng 3 năm 2018 - Java SE 11 ngày 25 tháng 9 năm 2018 - Java SE 12 ngày 19 tháng 3 năm 2019 - Java SE 13 ngày 17 tháng 9 năm 2019 - Java SE 14 ngày 17 tháng 3 năm 2020 SVTH: MAI XUÂN DUY GVHD: TS. HOÀNG THỊ MỸ LỆ 4 TIEU LUAN MOI download : skknchat@gmail.com - Java SE 15 ngày 15 tháng 9 năm 2020 - Java SE 16 ngày 16 tháng 3 năm 2021 - Java SE 17 ngày 14 tháng 9 năm 2021 2.
Đôi nét về lịch sử Vào năm 2002, Spring Framework phát hành phiên bản đầu tiên bởi Rod Johnson. Việc xây dựng các ứng dụng doanh nghiệp trở nên đơn giản và dễ dàng hơn. Rod Johnson đã cho xuất bản một cuốn sách được phổ biến rộng rãi có nhan đề "J2EE Development without EJB". Điều này đã cho Spring Framework rất nhiều động lực để thay thế EJB.
Ngày nay, Spring đã trở thành framework mã nguồn mở phổ biến nhất để xây dựng các ứng dụng doanh nghiệp. Cách tiếp cận thực tế ban đầu của Rod Johnson tiếp tục được phát triển và hướng tới một bộ công cụ hoàn chỉnh dành cho xây dựng các ứng dụng doanh nghiệp. Theo một số nguồn, trên 50% các ứng dụng web Java hiện nay đang sử dụng Spring Framework. Để ngăn chặn sự phức tạp trong phát triển các ứng dụng, Spring Framework thường dựa trên các quan điểm như sau: - Đơn giản hóa công việc phát triển thông qua việc sử dụng các đối tượng Java đơn giản hay còn được gọi là POJO (Plain Old Java Object).
- Nới lỏng ràng buộc giữa các thành phần thông qua việc sử dụng Dependency Injection và viết các interface. - Tiếp cận lập trình khai báo bằng cách sử dụng các quy tắc (convention) và các khía cạnh (aspect) chung. - Giảm thiểu các mã nghi thức và soạn sẵn (boilerplate) thông qua việc sử dụng các khuôn mẫu (template) và các khía cạnh. Tổng quan về Spring - Spring Core: Spring Core chính là thành phần trung tâm, cốt lõi của Spring Framework.
Đây chính là nền tảng để xây dựng nên các thành phần khác. - Spring Bean: Spring Bean là trung tâm của Spring Core và là trái tim của một ứng dụng Spring. - Dependency Injection (DI): Dependency Injection (có thể dịch tiêm các thành phần phụ thuộc) là một sức mạnh nổi bật của Spring Framework. - Spring Context: Spring Context mang mọi thứ lại với nhau.
SVTH: MAI XUÂN DUY GVHD: TS. HOÀNG THỊ MỸ LỆ 5 TIEU LUAN MOI download : skknchat@gmail.com - Spring Expression Language (SpEL): Spring Expression Language là một ngôn ngữ ngắn gọn giúp cho việc cấu hình Spring Framework trở nên linh hoạt hơn. - Các dự án trong Spring Framework: Spring Framework là một tập hợp của nhiều dự án con. - Spring MVC: Spring MVC được thiết kế dành cho việc xây dựng các ứng dụng nền tảng web.
- Spring Data: Cung cấp một cách tiếp cận đúng đắn để truy cập dữ liệu từ cơ sở dữ liệu quan hệ, phi quan hệ, map-reduce, … - Spring Security: Dự án này cung cấp các cơ chế xác thực (authentication) và phân quyền (authorization) cho ứng dụng. - Spring Boot: là một framework giúp phát triển cũng như chạy ứng dụng một cách nhanh chóng. - Spring Batch: tạo các lịch trình (scheduling) và tiến trình (processing). - Spring Integration: là một implementation của Enterprise Integration Patterns (EIP).
- Spring XD: đơn giản hóa công việc phát triển các ứng dụng Big Data. - Spring Social: kết nối ứng dụng của bạn với các API bên thứ ba của Facebook, Twitter, Linkedin,. Hình 1: Mô hình Spring Framework Runtime SVTH: MAI XUÂN DUY GVHD: TS. HOÀNG THỊ MỸ LỆ 6 TIEU LUAN MOI download : skknchat@gmail.
Tổng quan về hệ quản trị cơ sở dữ liệu MySQL - MySQL là hệ quản trị cơ sở dữ liệu tự do nguồn mở phổ biến nhất thế giới và được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng. Vì MySQL là cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, có tính khả chuyển, hoạt động trên nhiều hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rất mạnh. Với tốc độ và tính bảo mật cao, MySQL rất thích hợp cho các ứng dụng có truy cập CSDL trên internet. MySQL miễn phí hoàn toàn cho nên bạn có thể tải về MySQL từ trang chủ.
Nó có nhiều phiên bản cho các hệ điều hành khác nhau: phiên bản Win32 cho các hệ điều hành dòng Windows, Linux, Mac OS X, Unix, FreeBSD, NetBSD, Novell NetWare, SGI Irix, Solaris, SunOS, … - MySQL là một trong những ví dụ rất cơ bản về Hệ Quản trị Cơ sở dữ liệu quan hệ sử dụng Ngôn ngữ truy vấn có cấu trúc (SQL). Restful API (RestController Spring Boot) - Khác với @Controller là sẽ trả về một template. @RestController trả về dữ liệu dưới dạng JSON. Các đối tượng trả về dưới dạng Object sẽ được Spring Boot chuyển thành JSON.
- Các đối tượng trả về rất đa dạng, bạn có thể trả về List, Map, … Spring Boot sẽ convert hết chúng thành JSON, mặc định sẽ dùng Jackson converter để làm điều đó. Nếu bạn muốn API tùy biến được kiểu dữ liệu trả về, bạn có thể trả về đối tượng ResponseEntity của Spring cung cấp. Đây là đối tượng cha của mọi response và sẽ wrapper các object trả về. - Vì xây dựng API, nên các thông tin từ phía Client gửi lên Server sẽ nằm trong Body, và cũng dưới dạng JSON luôn.
Tất nhiên là Spring Boot sẽ làm giúp chúng ta các phần nặng nhọc, nó chuyển chuỗi JSON trong request thành một Object Java. bạn chỉ cần cho nó biết cần chuyển JSON thành Object nào bằng Annotation @RequestBody - Ngoài thông tin trong Body của request, thì cái chúng ta cần chính là cái con số 12 nằm trong URL. Phải lấy được con số đó thì mới biết được đối tượng To-do cần thao tác là gì. Lúc đó Anotation @PathVariable tham chiến.
Bootstrap và responsive Bootstrap là front-end framework, là một bộ sưu tập miễn phí các công cụ để tạo ra các trang web và các ứng dụng web. Bootstrap bao gồm HTML và CSS dựa trên các mẫu thiết kế cho kiểu chữ, hình thức, các button và các thành phần giao diện khác, cũng như mở rộng tùy chọn JavaScript. Boostrap định nghĩa sẵn các class CSS giúp SVTH: MAI XUÂN DUY GVHD: TS. HOÀNG THỊ MỸ LỆ 7 TIEU LUAN MOI download : skknchat@gmail.com người thiết kế giao diện website tiết kiệm rất nhiều thời gian.
Các thư viện Bootstrap có những đoạn mã sẵn sàng cho chúng ta áp dùng vào website của mình mà không phải tốn quá nhiều thời gian để tự viết.