LỜI CAM ĐOAN
Em xin cam đoan rằng đồ án tốt nghiệp này do chính em thực hiện, không sao
chép từ công trình nghiên cứu nào khác, tàiliệu sử dụng trong đồ án tốt nghiệp này
đều được ghi rõ nguồn gốc.
Sinh viên
Phan Nhật Nguyệt
1
LỜI CẢM ƠN
Sau quá trình tìm hiểu đề tài “Xây dựng ứng dụng trực tuyến theo dõi và quản
lý cây gỗ quý vườn quốc gia Xuân Sơn, tỉnh Phú Thọ sử dụng mã nguồn mở
Google Map Javascript API”, em đã hoàn thành tiến độ như dự kiến. Để đạt được
kết quả này, em đã nỗ lực thực hiện và đồng thời cũng nhận được rất nhiều sự giúp
đỡ, quan tâm của thầy cô, bạn bè và gia đình.
Để có thể hoàn thành khóa luận tốt nghiệp này em xin gửi lời cảm ơn chân thành
nhất tới TS. Lê Phú Hưng – Phó Trưởng khoa Công Nghệ Thông Tin. Thầy đã tận
tình hướng dẫn, quan tâm, chỉ bảo, tạo mọi điều kiện giúp đỡ em trong suốt quá
trình thực hiện đồ án tốt nghiệp. Đồng thời, em xin chân thành cảm ơn các thầy cô
và ban lãnh đạo trường Đại học Tài Nguyên và Môi Trường Hà Nội đã nhiệt tình
giảng dạy và truyền đạt kiến thức quý báu và bổ ích trong suốt quá trình em học tập
tại trường. Em xin cảm ơn các anh/chị thuộc Công ty cổ phần phần mềm FPT soft
đã hỗ trợ cho em về mặt thời gian lần kiến thức để em có thể hoàn thành đồ án tốt
nghiệp.
Vì thời gian có hạn nên không thể tránh khỏi thiếu sót, em rất mong được
sựđóng góp ý kiến từ thầy cô và các bạn để có thể giúp hoàn thiện đề tài.
Em xin chân thành cảm ơn!
2
DANH MỤC BẢNG
DANH MỤC HÌNH ẢNH
7
LỜI MỞ ĐẦU
1.Lý do chọn đề tài
Trong tình hình hiện nay cùng với xu hướng phát triển của công nghiệp hóa hiện
đại hóa đã và đang có nhiều các ứng dụng tiên tiến ra đời nhằm tiết kiệm tối đa chi
phí, thời gian và sức lực con người mà vẫn có thể quản lý tốt. Một trong những lĩnh
vực mang tầm quan trọng em muốn đề cập đến là việc bảo vệ và quản lý tài nguyên
thiên nhiên, các loại cây gỗ quý hiếm cần được bảo tồn ở Việt Nam nói riêng, thế
giới nói chung. Trong rừng vì địa lý hiểm trở nên việc xác định vị trí và quản lý các
loại cây gỗ quý là rất khó khăn, phức tạp cho những người quản lý. Em muốn xây
dựng một ứng dụng tự động hóa có thể thêm, sửa, xóa, thống kê và cập nhật được
tình trạng các loại cây gỗ quý. Qua đó chúng ta có thể xác định được vị trí của cây,
xem các thông tin mô tả, số lượng về loại cây đó. Ứng dụng giúp người dùng chủ
động trong việc quản lý.
Hiện nay, lĩnh vực nào cũng có xu hướng phát triển mạnh, thế nhưng vấn đề tài
nguyên thiên nhiên và đặc biệt là tài nguyên quý hiếm cần được bảo vệ cấp bách và
cần thiết. Chính vì mức độ quan trọng và mong muốn xây dựng nên một ứng dụng
để người dùng có thể quản lý một các dễ dạng và tự động nên em đã lựa chọn đề tài
“Xây dựng ứng dụng trực tuyến theo dõi và quản lý cây gỗ quý vườn quốc gia
Xuân Sơn, tỉnh Phú Thọ sử dụng mã nguồn mở Google Map Javascript API” làm
đề tài đồ án tốt nghiệp của mình.
2. Nội dung chính của đề tài
Mục đích chính của đề tài là xây dựng thành công ứng dụng phục vụ công tác
Chương 3: Xây dựng các chức năng của chương trình.
9
CHƯƠNG 1: GIỚI THIỆU
1.1. Công nghệ Google Map API
1.1.1. Google Map API là gì
Google Map là một dịch vụ ứng dụng và công nghệ bản đồ trực tuyến trên web
miễn phí được cung cấp bởi Google, hỗ trợ nhiều dịch vụ khác của Google nổi bật
là dẫn đường. Cho phép thấy bản đồ đường sá, đường đi cho xe đạp, cho người đi
bộ và xe hơi, và những địa điểm kinh doanh trong khu vực cũng như khắp nơi trên
thế giới.
Map API là gì?
- Đó là một phương thức cho phép 1 website B sử dụng dịch vụ bản đồ của
site A (gọi là Map API) và nhúng vào website của mình (site B). Site A ở đây là
google map, site B là các web site cá nhân hoặc tổ chức muốn sử dụng dịch vụ của
google, có thể rê chuột, room, đánh dấu trên bản đồ...
- Các ứng dụng xây dựng trên maps được nhúng vào trang web cá nhân thông
qua các thẻ javascripts do vậy việc sử dụng API google rất dễ dàng.
- Google Map API đã được nâng cấp. Phiên bản này hỗ trợ không chỉ cho các
máy để bàn truyền thống mà cho cả các thiết bị di động. Nhanh hơn và nhiều hơn
các ứng dụng.
- Điều quan trọng là các dịch vụ hoàn toàn miễn phí với việc xây dựng một
ứng dụng nhỏ. Trả phí nếu đó là việc sử dụng cho mục đích kinh doanh, doanh
nghiệp.
1.1.2. Một số ứng dụng của Google Map API
- Đánh dấu các địa điểm trên bản đồ cùng các thông tin cho địa điểm: các khu vui
chơi giải trí, nhà hàng khách sạn, các quán ăn ngon, các shop quần áo, nữ trang...
- Chỉ dẫn đường đến các địa điểm cần tìm,chỉ dẫn đường giao thông công cộng.
key=AIzaSyDY0kkJiTPVd@U7aT0Awhc9ySH6oHxOIYM&sensor=false”>
</script>
<script>
//Khoi tao map
function initialize()
{
//Khai bao cac thuoc tinh cho map
var mapProp = {
//Tao ban do, quy dinh boi kinh do va vi do
center:new google.maps.LatLng(51.508742,-0.120850),
//Do zoom cua ban do khi duoc load
zoom:5,
//dinh nghia type cua ban do
mapTypeId:google.maps.MapTypeId.ROADMAP
};
//Truyen cac thuoc tinh Map cho div chua map
var map = new
google.maps.Map(document.getElementByID(“googleMap”),mapProp);
}
//load ban do khi load trang
google.maps.event.addDomListener(window,’load’initialize);
</script>
</head>
<body>
12
//Khai bao the div chua map
<div id=”googleMap” style = “width:500px; height:380px;”>< /div>
<body>
dùng để cập nhật bảng Products sẽ hiển thị các hộp văn bản, drop-down list, và các
check box dựa trên trạng thái hiện tại của một đối tượng Product.
Controllers: Controller là các thành phần dùng để quản lý tương tác người dùng,
làm việc với model và chọn view để hiển thị giao diện người dùng. Trong một ứng
dụng MVC, view chỉ được dùng để hiển thị thông tin, controller chịu trách nhiệm
quản lý và đáp trả nội dung người dùng nhập và tương tác với người dùng.
Để quản lý sự phức tạp của ứng dụng, mẫu MVC giúp cho chúng ta có thể kiểm
thử ứng dụng dễ dàng hơn hẳn so với khi áp dụng mẫu Web Forms.
Hơn thế nữa, việc kiểm thử trên nền tảng Web Forms yêu cầu phải sử dụng đến
web server. Nền tảng MVC phân tách các thành phần và sử dụng các interface
(kháiniệm giao diện trong lập trình hướng đối tượng), và nhờ đó có thể kiểm thử các
thành phần riêng biệt trong tình trạng phân lập với các yếu tố còn lại của ứng dụng.
14
Sự phân tách rạch ròi ba thành phần của ứng dụng MVC còn giúp cho việc lập
trình diễn ra song song. Ví dụ như một lập trình viên làm việc với view, lập trình
viên thứ hai lo cài đặt logic của controller và lập trình viên thứ ba có thể tập trung
vào logic tác vụ của model tại cùng một thời điểm.
1.2.2. Lịch sử phát triển của ASP.NET MVC [2]
- Asp.Net 1.0 : Phiên bản đầu tiên được phát hành vào tháng 3 năm 2009 trên nền
tảng bộ .Net Framework 3.5 bộ Visual Studio 2008.
- Asp.Net 2.0 : Phiên bản này được phát hành vào tháng 3 năm 2010 trên bộ .Net
Framework 3.5 và .Net Framework 4.0 bộ Visual Studio 2010.
- Asp.Net MVC 3 : Phiên bản này được phát hành vào tháng 1 năm 2011 trên nền
tảng bộ .Net Framework 4.0, các đặc điểm chính của phiên bản này.
- Asp.Net 4.0 : Phiên bản này được phát hành vào tháng 8 năm 2012 trên nền
tảng bộ .Net Framework 4.0 và .Net Framework 4.5 trên phiên bản Visual Studio
2010 SP1 and Visual Studio 2012.
- Asp.Net MVC 5 : Phiên bản này được phát hành vào tháng 10 năm 2013 trên
- Lợi ích của ứng dụng được xây dựng trên nền tảng Web Forms
+ Nó hỗ trợ cách lập trình hướng sự kiện, quản lý trạng thái trên giao thức
HTTP, tiện dụng cho việc phát triển các ứng dụng Web phục vụ kinh doanh. Các
ứng dụng trên nền tảng Web Forms cung cấp hàng tá các sự kiện được hỗ trợ bởi
hàng trăm các server controls.
+ Sử dụng mẫu Page Controller. Xem thêm ở mục Page Controller trên MSDN
+ Mô hình này sử dụng view state hoặc server-based form, nhờ đó sẽ giúp cho
việc quản lý trạng thái các trang web dễ dàng.
16
Nói tóm lại, áp dụng Web Forms giúp giảm bớt sự phức tạp trong xây dựng ứng
dụng, bởi vì các thành phần (lớp Page, controls,…) được tích hợp chặc chẽ và
thường thì giúp bạn viết ít code hơn là áp dụng theo mô hình MVC.
1.2.4. Các tính năng của nền tảng ASP.NET MVC[1]
+ Tách bạch các tác vụ của ứng dụng (logic nhập liệu, business logic, và logic
giao diện), dễ dàng kiểm thử và mặc định áp dụng hướng phát triển TDD. Tất cả các
tính năng chính của mô hình MVC được cài đặt dựa trên interface và được kiểm thử
bằng cách sử dụng các đối tượng mocks, mock object là các đối tượng mô phỏng
các tính năng của những đối tượng thực sự trong ứng dụng.
+ MVC là một nền tảng khả mở rộng (extensible) & khả nhúng (pluggable). Các
thành phần của ASP.NET MVC được thiết kể để chúng có thể được thay thế một
cách dễ dàng hoặc dễ dàng tùy chỉnh. Bạn có thể nhúng thêm view engine, cơ chế
định tuyến cho URL, cách kết xuất tham số của action-method và các thành phần
khác.
+ ASP.NET MVC có thành phần ánh xạ URL mạnh mẽ cho phép bạn xây dựng
những ứng dụng có các địa chỉ URL xúc tích và dễ tìm kiếm. Các địa chỉ URL
không cần phải có phần mở rộng của tên tập tin và được thiết kế để hỗ trợ các mẫu
định dạng tên phù hợp với việc tối ưu hóa tìm kiếm (URL) và phù hợp với lập địa
chỉ theo kiểu REST.
Routing engine kiểm tra cấu hình điều hướng trong file RouteConfig nằm trong
thưc mục App_Start của ứng dụng, chuyển đến các controller “Home” và action
“Index” để thực thi
Do Home Controller và phương thức Index không được tìm thấy, bộ điều hướng
sẽ chỉ ra rằng controller không được tìm thấy và MVC Engine sẽ báo lỗi cho trình
duyệt.
Hình 1.7: Lỗi khi chạy ứng dụng rỗng
19
Bước 4 : Thêm mới control Home và phương thức Index để thực hiện chương
trình, thông qua các bước sau :
Click phải vào thưc mục Controllers trong thư mục ứng dụng, chọn Add sau đó
lựa chọn Controller từ pop-up menus.
Chọn MVC 5 Control-Empty để tạo Control
Hình 1.8: Tạo control mới để thực hiện chương trình
Bước 5 : Chạy lại chương trình chương trình. Chúng ta sẽ nhìn thấy thông báo
lỗi, do đây ASP.Net MVC chưa tìm thấy view tương ứng với Control Home và
phương thức Index.
Hình 1.9: Lỗi view khi chạy chương trình
20
Bước 6 : Tạo mới View, thông qua các bước sau :
Click phải vào phương thức Index trong Controller Home, sau đó chọn Add
View.
Bổ sung một số các thuộc tính khi Add View, ví dụ như sử dụng Layout Page
nhận chính thức thông qua nghị định. Đến tháng 8/2015, cả nước có 31 vườn quốc
gia gồm: Ba Bể, Bái Tử Long, Hoàng Liên, Du Già-Cao nguyên đá Đồng Văn,Tam
Đảo, Xuân Sơn, Ba Vì, Cát Bà, Xuân Thủy, Cúc Phương, Bến En, Pù Mát, Vũ
Quang, Phong Nha-Kẻ Bàng, Bạch Mã, Núi Chúa, Bidoup Núi Bà, Phước Bình,
Chư Mom Ray, Chư Yang Sin, Kon Ka Kinh, Yok Đôn, Lò Gò-Xa Mát, Tràm Chim,
Mũi Cà Mau, U Minh Hạ, U Minh Thượng, Phú Quốc, Côn Đảo.
22
Có 4 vườn quốc gia được công nhận di sản ASEAN đó là vườn quốc gia Hoàng
Liên, Ba Bể, Chư Mom Ray và Kon Ka Kinh. Để được công nhận là vườn di sản,
vườn quốc gia phải đảm bảo được các tiêu chí về tính tự nhiên, hoang dã, tính
nguyên vẹn về hệ sinh thái, sự đa dạng và giá trị nổi bật quần thể
1.3.3. Tình trạng của vườn quốc gia Xuân Sơn:
Vườn quốc gia Xuân Sơn là một vườn quốc gia nằm trên địa bàn huyện Tân Sơn,
tỉnh Phú Thọ. Với kiểu địa hình núi đá vôi đặc trưng. Được chuyển từ khu bảo tồn
thiên nhiên Xuân Sơn thành vườn quốc gia theo Quyết định của Thủ tướng chính
phủ Cộng hòa xã hội chủ nghĩa Việt Nam số 49/2002/QĐ-TTg ngày 17 tháng 4 năm
2002.
-
Vị trí địa lý:
Vườn quốc gia Xuân Sơn nằm ở huyện Tân Sơn, tỉnh Phú Thọ, cách thành phố
Việt Trì 80 km, Hà Nội 120 km, có phạm vi ranh giới được xác định như sau:
+ Phía Đông: Giáp các xã Tân Phú, Minh Đài, Long Cốc, huyện Tân Sơn.
+ Phía Tây: Giáp huyện Phù Yên (tỉnh Sơn La), huyện Đà Bắc (tỉnh Hoà Bình).
+ Phía Nam: Giáp huyện Đà Bắc (tỉnh Hoà Bình).
+ Phía Bắc: Giáp xã Thu Cúc, huyện Tân Sơn.
Tọa độ địa lý: Từ 21°03' đến 21°12' vĩ bắc và từ 104°51' đến 105°01' kinh đông.
và thiếu lại phải quản lý trên một địa bàn rộng, địa hình phức tạp, nên còn gặp rất
nhiều khó khăn.
Do đó, việc xây dựng ứng dụng trực tuyến theo dõi và quản lý cây gỗ quý vườn
quốc gia Xuân Sơn là điều rất cần thiết.
24
CHƯƠNG 2:PHÂN TÍCH THIẾT KẾ HỆ THỐNG VÀ
XÂY DỰNG CƠ SỞ DỮ LIỆU
2.1. Phân tích thiết kế hệ thống
Khái quát chức năng chính của hệ thống, các chức năng có tính tổng quát dễ
dàng nhìn thấy được trên quan điểm của các tác nhân. Dựa vào yêu cầu của bài toán
ta có usecase tổng quát như sau:
Xác định actor bài toán
Bảng 2.1: Các Actor của bài toán
STT
Actor
Diễn Giải
Là người chỉ có thể xem chi tiết tên
cây, số lượng cây thống kê theo loại,
1
Người dùng
tìm kiếm cây, xem khoanh vùng theo
loại cây, xem mô tả thông tin của các