最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

實(shí)現(xiàn)自己的地圖導(dǎo)航!技術(shù)向!和哥一起學(xué)技術(shù)!

2023-03-29 23:37 作者:十九小課堂開課了  | 我要投稿


首先,需要確保已經(jīng)安裝好了 JDK 和 Maven,并已經(jīng)設(shè)置好了相關(guān)的環(huán)境變量。然后,可以按照以下步驟來實(shí)現(xiàn)這個應(yīng)用程序:


1. 創(chuàng)建一個 Maven 項(xiàng)目

可以使用 Maven Archetype 創(chuàng)建一個新的 Maven 項(xiàng)目。在命令行中執(zhí)行以下命令:

這將創(chuàng)建一個名為 pathfinder 的 Maven 項(xiàng)目,并包含一個基本的 Web 應(yīng)用程序結(jié)構(gòu)。


2. 添加 Spring 和 GraphHopper 依賴項(xiàng)

在 pom.xml 文件中添加以下依賴項(xiàng):

這步操作直接起飛將添加 Spring Web 和 Spring Web MVC 依賴項(xiàng),以及 GraphHopper Web 依賴項(xiàng)。


3. 創(chuàng)建 Spring 配置文件

在 src/main/resources 目錄下創(chuàng)建一個名為 applicationContext.xml 的 Spring 配置文件。在這個文件中,可以配置 Spring 應(yīng)用程序上下文和 MVC 模塊。以下是一個示例配置:

這里面,<context:component-scan> 用于掃描并注冊 Spring 管理的組件,<mvc:annotation-driven> 用于啟用 Spring MVC 注解支持。<bean> 標(biāo)簽用于創(chuàng)建一個 GraphHopperServer 實(shí)例,這是一個 GraphHopper 服務(wù)器,可以將它用于路線規(guī)劃。


4.?創(chuàng)建控制器類

這一步步很重要?。。?!在 com.example.pathfinder 包中創(chuàng)建一個名為 PathfinderController 的控制器類,這個類將處理來自客戶端的請求,并使用 GraphHopper 技術(shù)計(jì)算最短路徑。以下是一個示例控制器類:

其中,@Controller 和 @RequestMapping 注解用于將這個類標(biāo)記為 Spring MVC 控制器,并映射到 /pathfinder 路徑。@Autowired 注解用于將 GraphHopperServer 實(shí)例注入到這個類中。@GetMapping 注解用于處理 GET 請求,并從請求參數(shù)中獲取起點(diǎn)和終點(diǎn)坐標(biāo)。然后,它將創(chuàng)建一個 GHRequest 對象,并使用 GraphHopperServer 計(jì)算最短路徑。如果出現(xiàn)錯誤,它將將錯誤消息添加到模型中,并返回 "error" 視圖。否則,它將將路徑坐標(biāo)添加到模型中,并返回 "route" 視圖。


5. 創(chuàng)建視圖

在 src/main/webapp/WEB-INF/views 目錄下創(chuàng)建兩個名為 "route.jsp" 和 "error.jsp" 的 JSP 視圖文件。以下是一個示例 "route.jsp" 文件:

這個文件將顯示一個包含路徑的 Mapbox 地圖。它使用 ${coordinates} 表達(dá)式獲取控制器類中添加到模型中的路徑坐標(biāo),并將其轉(zhuǎn)換為 JavaScript 數(shù)組。在 "map.on('load', function() {...})" 回調(diào)函數(shù)中,它使用 Mapbox GL JS API 添加一個名為 "route" 的圖層,并將路徑坐標(biāo)添加到這個圖層的 "source" 屬性中。

類似地,"error.jsp" 文件將顯示一個錯誤消息,并提示用戶返回到主頁:


6. 配置 Spring MVC

在 src/main/webapp/WEB-INF 目錄下創(chuàng)建一個名為 "spring-servlet.xml" 的 Spring MVC 配置文件。以下是一個示例配置文件:

這個文件配置了 Spring MVC 的組件掃描、注解驅(qū)動和視圖解析器。它還定義了 GraphHopperServer 和 GraphHopper 對象的 bean。你需要將 "path/to/your/graphhopper/folder" 和 "path/to/your/osm/file" 替換為你的 GraphHopper 文件夾和 OpenStreetMap 文件路徑。


7.配置 Web 應(yīng)用

在 src/main/webapp/WEB-INF 目錄下創(chuàng)建一個名為 "web.xml" 的 web.xml 文件。以下是一個示例文件:

這個文件配置了 Spring MVC 的 DispatcherServlet 和路徑映射。它將所有請求映射到 "/" 路徑,然后由 DispatcherServlet 處理。

起飛起飛?。?!運(yùn)行應(yīng)用

現(xiàn)在你可以使用 Maven 構(gòu)建并運(yùn)行應(yīng)用了。在項(xiàng)目根目錄下運(yùn)行以下命令:

這將啟動一個嵌入式 Tomcat 服務(wù)器,并在本地主機(jī)的端口號為 8080 的位置上運(yùn)行應(yīng)用。你可以在瀏覽器中輸入 "http://localhost:8080/" 訪問應(yīng)用,并在搜索框中輸入起點(diǎn)和終點(diǎn)坐標(biāo)來查找路徑。

后記(前面起飛就行了,后邊是留給嗷嗷想學(xué)習(xí)的同學(xué)的)

添加其他功能

你現(xiàn)在可以添加其他功能來完善你的危險品運(yùn)輸管理系統(tǒng)。例如,你可以添加一個登陸頁面來限制用戶訪問,或者添加一個實(shí)時交通信息功能來讓用戶更準(zhǔn)確地規(guī)劃路線。這些功能可以通過在 Spring MVC 中添加新的控制器和視圖來實(shí)現(xiàn)。

測試和部署

在添加新功能后,你需要進(jìn)行測試并將應(yīng)用部署到服務(wù)器上。你可以使用 JUnit 測試來測試你的控制器和服務(wù)層代碼。在將應(yīng)用部署到服務(wù)器上之前,你需要將應(yīng)用配置文件中的相關(guān)配置更改為生產(chǎn)環(huán)境的配置。

總結(jié)

在這次教程力,咱們一起學(xué)習(xí)了如何使用 Spring 和 GraphHopper 技術(shù)來實(shí)現(xiàn)一個web應(yīng)用的導(dǎo)航模塊,創(chuàng)建了一個 Spring MVC 應(yīng)用程序,并使用 GraphHopper 進(jìn)行路徑規(guī)劃。你還學(xué)習(xí)了如何將應(yīng)用程序部署到 Tomcat 服務(wù)器,并添加其他功能來完善應(yīng)用程序?,F(xiàn)在你可以使用這些技術(shù)來開發(fā)其他類型的 Web 應(yīng)用程序,其實(shí)現(xiàn)在graphhopper已經(jīng)更新到7.0了真的要制作自己的導(dǎo)航可以直接去github搜索然后git他的開源UI代碼部署到本地就可以,哥只是提供一個思路。


實(shí)現(xiàn)自己的地圖導(dǎo)航!技術(shù)向!和哥一起學(xué)技術(shù)!的評論 (共 條)

分享到微博請遵守國家法律
阿图什市| 吴堡县| 吴江市| 双江| 博乐市| 乾安县| 甘南县| 玉田县| 叶城县| 得荣县| 万年县| 新巴尔虎右旗| 台湾省| 镇巴县| 广东省| 兖州市| 大化| 贵定县| 延津县| 嘉荫县| 盈江县| 海阳市| 吉木萨尔县| 文成县| 广河县| 崇义县| 乌鲁木齐县| 双辽市| 乐业县| 奈曼旗| 田阳县| 根河市| 襄汾县| 永福县| 和平区| 巢湖市| 龙州县| 庐江县| 石狮市| 梁平县| 乃东县|