WeatherApp ใช้ Java Servlet JSP
คำอธิบาย
WeatherApp เป็นเว็บแอปพลิเคชั่น Java ที่พัฒนาโดยใช้ Servlets, JSP, HTML, CSS และ JavaScript มันรวมเข้ากับ OpenWeatherMap API เพื่อดึงข้อมูลสภาพอากาศสำหรับเมืองที่กำหนดและแสดงต่อผู้ใช้
คุณสมบัติ
ดึงข้อมูลสภาพอากาศขึ้นอยู่กับชื่อเมืองอินพุตของผู้ใช้ แสดงสภาพอากาศในปัจจุบันรวมถึงอุณหภูมิความชื้นความเร็วลมการมองเห็นและปกเมฆ ฯลฯ
เทคโนโลยีที่ใช้
- Java Servlets
- หน้า Javaserver (JSP)
- HTML
- CSS
- จาวาสคริปต์
- ห้องสมุด GSON สำหรับการแยกวิเคราะห์ JSON
- OpenWeatherMap API
คำแนะนำการตั้งค่า
- ดาวน์โหลดและติดตั้ง Eclipse IDE (หรือ Intellij Idea)
- ดาวน์โหลดและติดตั้ง Apache Tomcat 10.1.1
- เปิด Eclipse IDE และกำหนดค่าด้วย Apache Tomcat:
- ไปที่
Window -> Preferences - นำทางไปยัง
Server -> Runtime Environments - คลิก
Add และเลือก Apache Tomcat v10.1.1 - จัดเตรียมไดเรกทอรีการติดตั้ง Tomcat และเสร็จสิ้นการตั้งค่า
- โคลนพื้นที่เก็บข้อมูลไปยังเครื่องในพื้นที่ของคุณโดยใช้
git clone <repository_url> - นำเข้าโครงการไปยัง Eclipse IDE:
- ไปที่
File -> Import - เลือก
Existing Projects into Workspace - เลือกไดเรกทอรีโครงการโคลนและนำเข้าสู่คราส
- ตรวจสอบให้แน่ใจว่าไลบรารี GSON รวมอยู่ในไดเรกทอรี
src/webapp/WEB-INF/lib ของโครงการของคุณ ถ้าไม่เพิ่มด้วยตนเองในเส้นทางการสร้าง - รับคีย์ API จาก OpenWeatherMap และแทนที่ตัวยึด
myApiKey ใน MyServlet.java ด้วยคีย์ API ที่แท้จริงของคุณ - เรียกใช้แอปพลิเคชันบนเซิร์ฟเวอร์ Apache Tomcat ในพื้นที่ของคุณ:
- คลิกขวาในโครงการใน Eclipse
- ไป
Run As -> Run on Server - เลือกเซิร์ฟเวอร์ Tomcat ที่กำหนดค่าของคุณแล้วคลิก
Finish
- เข้าถึง WeatherApp ผ่านเว็บเบราว์เซอร์ของคุณโดยใช้ URL ที่ให้ไว้ (โดยปกติจะ
http://localhost:8080/WeatherApp )
การรวม API ใน Servlet:
- สร้าง java servlet (myservlet.java) เพื่อจัดการคำขอ HTTP
- ในวิธีการ DOPOST ดึงชื่อเมืองจากอินพุตแบบฟอร์ม
- สร้าง URL API ด้วยชื่อเมืองและคีย์ API ของคุณ (APIURL) เพื่อดึงข้อมูลสภาพอากาศ
คำขอ http ไปยัง API:
- ใช้ httpurlconnection เพื่อสร้างการเชื่อมต่อกับจุดสิ้นสุด API
- ตั้งค่าวิธีการร้องขอเพื่อรับและดึงการตอบสนอง API โดยใช้สตรีมอินพุต
การประมวลผลการตอบสนอง API:
- การตอบสนอง API อยู่ในรูปแบบ JSON
- ใช้ห้องสมุด GSON เพื่อแยกวิเคราะห์การตอบสนอง JSON เป็น JSONObject
- สกัดข้อมูลสภาพอากาศที่เกี่ยวข้องเช่นอุณหภูมิความชื้นความเร็วลมการมองเห็นสภาพอากาศและเมฆปกคลุมจากการตอบสนอง JSON
การตั้งค่าแอตทริบิวต์คำขอ:
- เก็บข้อมูลสภาพอากาศที่สกัดชื่อเมืองวันที่เวลาและข้อมูลอื่น ๆ ที่เกี่ยวข้องเป็นแอตทริบิวต์การร้องขอโดยใช้ httpservletrequest.setAttribute ()
คำขอส่งต่อไปยัง JSP:
- ส่งต่อคำขอไปยังหน้า jsp (index.jsp) สำหรับการแสดงผลโดยใช้ requestdispatcher.forward ()
การแสดงข้อมูลใน JSP:
- ในหน้า JSP ของเรา (index.jsp) เราใช้ HTML และรหัส Java แบบฝังตัว (EL Expressions) เพื่อแสดงข้อมูลสภาพอากาศ
- เข้าถึงข้อมูลจากแอตทริบิวต์คำขอโดยใช้ไวยากรณ์ $ {attributeName}
ภาพหน้าจอ



สร้างโดย: