MỞ ĐẦU 1. TÍNH CẤP THIẾT CỦA ĐỀ TÀI Trên thế giới, nỗi quan ngại về sự "hết thời" của báo in đã được đặt ra cách đây đã lâu, khi sự khủng hoảng số lượng phát hành lan tới cả các "đại gia" báo in của nước Mỹ như: New York Times, Washington Post, Los Angeles Times. thậm chí tờ báo đã có 80 năm tuổi là Newsweek cũng phải đình bản in để chuyển hoàn toàn sang báo điện tử. Theo một nghiên cứu của Hiệp hội báo in Hoa Kỳ (NNA), vào năm 2005, số người đọc báo qua mạng vượt trội hẳn so với số người đọc báo in theo tỷ lệ không những gấp đôi mà thậm chí còn gấp sáu lần: New York Times: 12.8 triệu/5 triệu; Washington Post: 7.8 triệu, Los Angeles Times: 4.
Cũng giống như thị trường báo chí Mỹ, báo in ở Pháp cũng rơi vào khủng hoảng khi nhiều báo lớn đều phải cắt giảm nhân sự, giảm đáng kể lợi nhuận và phải chuyển sang báo điện tử để tiếp tục duy trì hoạt động. Ðiển hình như tờ nhật báo Lemonde, đã có phiên bản điện tử ngay từ những năm 1990 và đến nay, trở thành tờ báo điện tử có uy tín bậc nhất nước Pháp cũng như thế giới. Tây Ban Nha cũng không nằm ngoài cuộc khủng hoảng khi tờ nhật báo hàng đầu là El Pais đã phải cắt giảm tới 129 nhân sự trong năm 2012 và lượng phát hành thì tụt xuống còn 455.666 bản mỗi ngày so với thời hoàng kim cách đó 10 năm là một triệu bản. Lượng phát hành giảm kéo theo doanh thu giảm xuống còn 194 triệu euro so với 453 triệu euro năm 2005.
Sau thất bại của tờ báo in, El Pais tìm cách lấy lại uy tín cũng như doanh thu bằng cách chuyển hướng sang báo điện tử. Tại Giải thưởng Pulitzer năm 2012, báo điện tử tiếp tục lên ngôi khi được vinh danh ở hai thể loại. Tại lễ trao Giải thưởng này, phóng viên David Wood của báo điện tử The Huffington Post chiến thắng ở hạng mục tin bài trong nước. David Wood đã có một loạt bài viết về những nỗi đau tinh thần cũng như thể xác mà những người lính Mỹ bị thương tại I-rắc, Áp-ga-ni-xtan đã phải chịu đựng trong suốt 10 năm diễn ra chiến tranh.
Ở một thể loại khác là tranh biếm họa, tờ báo điện tử Politico cũng được vinh danh khi họa sĩ Matt Wuerker giành chiến thắng với tác phẩm miêu tả cuộc chiến giữa Ðảng Dân chủ và Ðảng Cộng hòa thông qua hình ảnh biếm họa cuộc chiến giữa "con lừa" và "con voi". Pulitzer là giải thường niên, được đánh giá là danh giá nhất trong lĩnh vực báo chí ở Mỹ. Việc có hai tờ báo điện tử được xướng tên để nhận giải cho thấy tầm ảnh hưởng cũng như sức mạnh của loại hình báo chí hiện đại này. xiv do an Ở Việt Nam, báo điện tử cũng tạo ra một bước ngoặt trong hoạt động báo chí, với sự gia tăng không ngừng số lượng các tờ báo, trang tin điện tử.
Thống kê cho thấy đến hiện tại, cả nước có 77 tờ báo điện tử và gần 200 trang tin điện tử với lượng thông tin dày đặc mỗi ngày. Và báo in cũng phải đối diện với cuộc cạnh tranh khốc liệt khi các báo điện tử không chỉ mang đến một cách đọc tin mới mà còn mang đến những cách tiếp cận thông tin mới mẻ, phù hợp tâm lý của đông đảo công chúng hiện đại. Nhiều tờ báo in cũng đã có một số dấu hiệu "lùi bước" khi phải cắt giảm phóng viên, nhân viên, vì sự suy giảm phát hành và quảng cáo đã làm cho nguồn thu giảm nghiêm trọng. Quả thực, báo mạng với những tiện ích mà báo in khó có thể sánh được đã bùng nổ mạnh mẽ, khiến một số báo in không còn cách nào khác là phải giảm số lượng phát hành và ngậm ngùi nhường vị trí áp đảo cho báo mạng.
Không chỉ báo in, ngay cả hệ thống truyền hình và phát thanh cũng khó cạnh tranh với báo mạng bởi tính nhanh nhạy, tính tương tác và không gian không hạn định của loại hình báo chí này. Nhận thức được tiềm năng phát triển đó nhóm đã mạnh dạn chọn việc xây dựng website tin tức trực tuyến để có thể bắt kịp xu hướng thời đại. MỤC TIÊU CỦA ĐỀ TÀI Tìm hiểu về Microservices, Angular, RESTful APIs. Phân tích, thiết kế và xây dựng hệ thống website tin tức trực tuyến với một số chức năng và công việc cơ bản như sau: - Nhóm chức năng quản trị hệ thống website: Quản lý danh mục tin tức: Chức năng cho phép tìm kiếm, thống kê, thêm mới, cập nhật danh mục tin tức.
Quản lý tin tức: Chức năng cho phép tìm kiếm, thêm mới, thống kê, duyệt tin tức, cập nhật, gỡ tin tức. Quản lý tài khoản: Chức năng cho phép quản trị có thể cập nhật các quyền cũng như tài khoản cho người dùng. Quản lý quyền: Chức năng cho phép quản trị viên có thể tìm kiếm, thêm, cập nhật quyền. Quản lý việc Crawling RSS: Chức năng cho phép quản trị viên có thể cấu hình, thêm, xóa, sửa các URL của những trang báo khác để có thể lấy data từ các URL này.
xv do an - Nhóm chức năng dành cho người dùng: Xem tin tức theo danh mục: Với chức năng này người dùng có thể xem riêng loại tin tức đó. Xem chi tiết tin tức: Với chức năng này người dùng có thể xem chi tiết tin tức, có thể tương tác như like, bỏ like trên mỗi tin tức. Quản lý tài khoản: Người dùng có thể đăng nhập, đăng ký, cập nhật thông tin tài khoản cá nhân của mình. CÁCH TIẾP CẬN VÀ PHƯƠNG PHÁP NGHIÊN CỨU 3.
Đối tượng nghiên cứu Tất cả mọi người hiểu được tiếng Việt và có nhu cầu xem tin tức trực tuyến, cập nhật thông tin liên tục. Phạm vi nghiên cứu Tìm hiểu các kiến thức, công nghệ được sử dụng trong đề tài như: Microservices, Angular 5, RESTful APIs, Spring Boot, PostgreSQL, Spring Security. Tìm hiểu về UI/UX và cách để người dùng có thể sử dụng website một cách dễ dàng, thoải mái, thuận tiện cũng như giao diện hoài hòa, đẹp mắt, cuốn hút. Tìm hiểu và xây dựng website tin tức trực tuyến phù hợp với nhiều lứa tuổi, nhiều đối tượng sử dụng.
Phương pháp nghiên cứu Nghiên cứu và tìm hiểu các tài liệu, website liên quan đến các công nghệ, kiến thức đang tìm hiểu. Tham khảo ý kiến của Thầy hướng dẫn cùng các anh, chị và bạn bè có kinh nghiệm liên quan đến các vấn đề liên quan đến đề tài tiểu luận để tạo tính chính xác và khoa học của đề tài. PHÂN TÍCH CÁC HỆ THỐNG WEBSITE CÓ LIÊN QUAN Đa số các website tin tức trực tuyến đều trình bày theo các danh mục bài viết, người dùng có thể dễ dàng đọc những tin tức mà mình muốn. Tuy nhiên một số ứng dụng vẫn có các nhược điểm mà nhóm em đã tổng hợp được: Một số ứng dụng có giao diện chưa thu hút người dùng.
Một số ứng dụng có giao diện đẹp tuy nhiên hơi khó sử dụng. xvi do an 5. KẾT QUẢ DỰ KIẾN ĐẠT ĐƯỢC Xây dựng được website tin tức trực tuyến thông qua các công nghệ, kiến thức đã nghiên cứu được. xvii do an NỘI DUNG CHƯƠNG 1.
CÁC CÔNG NGHỆ SỬ DỤNG 1. TỔNG QUAN VỀ SPRING BOOT 1. Giới thiệu về Spring Framework 1. Enterprise Javabeans và Spring Có thể nói rằng Spring Framework ra đời là nhờ sự thành công của EJB.
EJB (Enterprise JavaBeans) là một kiến trúc phát triển dành cho các ứng dụng doanh nghiệp đòi hỏi tính mạnh mẽ và khả năng mở rộng cao. EJB là một thành phần quan trọng của nền tảng Java EE. EJB được tạo ra bởi hai gã khổng lồ công nghệ là IBM và Sun vào những năm cuối thập niên 90. Dưới sự phát triển của hai tập đoàn này, EJB đã trở nên nặng nề hơn.
Tiêu chuẩn EJB cũng nhanh chóng được thông qua. Sau tất cả, EJB được ca ngợi là giải pháp tốt nhất để xây dựng các ứng dụng phân tán dành cho doanh nghiệp. Nhưng rồi những chỉ trích về chi tiết kỹ thuật của EJB đã tăng nhanh còn hơn sự nổi tiếng của nó. EJB là một framework lớn với độ phức tạp cao.
Các nhà phát triền khi làm việc với EJB đã nhận ra rằng nó không hoạt động như những gì nó đã đề ra. EJB chỉ tuyệt vời trên bàn giấy, nhưng ra thực tế đó lại là một chuyện khác. Trong những phiên bản đầu tiên, các lập trình viên phải cài đặt các lớp implementation cho 2 interface khác nhau, cần qúa nhiều mã nghi thức (ceremonial code) để đáp ứng yêu cầu của EJB … EJB vẫn được tiếp tục phát triển, dễ sử dụng hơn nhiều so với buổi ban đầu. Nhưng những chỉ trích vẫn còn đó, nỗi thất vọng trong cộng đồng Java ngày càng tăng lên, đòi hỏi cần có một giải pháp thay thế.
Sự ra đời của Spring. Spring là gì? 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 1 do an 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.
Spring là một Framework phát triển các ứng dụng Java được sử dụng bởi hàng triệu lập trình viên. Nó giúp tạo các ứng dụng có hiệu năng cao, dễ kiểm thử, sử dụng lại code… Spring nhẹ và trong suốt (nhẹ: kích thước nhỏ, version cơ bản chỉ khoảng 2MB; trong suốt: hoạt động một cách trong suốt với lập trình viên). Spring là một mã nguồn mở, được phát triển, chia sẻ và có cộng đồng người dùng rất lớn. Spring Framework được xây dựng dựa trên 2 nguyên tắc design chính là: Dependency Injection và Aspect Oriented Programming.
Những tính năng core (cốt lõi) của Spring có thể được sử dụng để phát triển Java Desktop, ứng dụng mobile, Java Web. Mục tiêu chính của Spring là giúp phát triển các ứng dụng J2EE một cách dễ dàng hơn dựa trên mô hình sử dụng POJO (Plain Old Java Object). Kiến trúc, các module của Spring Framework Spring được chia làm nhiều module khác nhau, tùy theo mục đích phát triển ứng dụng mà ta dùng 1 trong các module đó. Dưới đây là kiến trúc tổng thể của Spring Framework: Hình 1.