การเรียนรู้จากตัวอย่างใช้ได้ผลสำหรับฉัน
นี่คือตัวอย่างย่อของ idiomatic Java 6
public class Main {
public static void main(String[] args) {
// Shows a list forced to be Strings only
// The Arrays helper uses generics to identify the return type
// and takes varargs (...) to allow arbitary number of arguments
List<String> genericisedList = Arrays.asList("A","B","C");
// Demonstrates a for:each loop (read as for each item in genericisedList)
for (String item: genericisedList) {
System.out.printf("Using print formatting: %s%n",item);
}
// Note that the object is initialised directly with a primitive (autoboxing)
Integer autoboxedInteger = 1;
System.out.println(autoboxedInteger);
}
}
อย่าไปสนใจกับ Java5 เพราะมันเลิกใช้แล้วเกี่ยวกับ Java6
ขั้นตอนถัดไปคำอธิบายประกอบ สิ่งเหล่านี้จะกำหนดลักษณะให้กับโค้ดของคุณที่อนุญาตให้ผู้อ่านคำอธิบายประกอบกรอกข้อมูลในการกำหนดค่าสำเร็จรูปสำหรับคุณ พิจารณาบริการเว็บอย่างง่ายที่ใช้ข้อกำหนด JAX-RS (ทำความเข้าใจกับ RESTful URIs) คุณไม่ต้องการยุ่งกับการทำ WSDL ที่น่ารังเกียจและการล้อเล่นกับ Axis2 ฯลฯ คุณต้องการผลลัพธ์ที่รวดเร็ว ถูกต้องทำสิ่งนี้:
// Response to URIs that start with /Service (after the application context name)
@Path("/Service")
public class WebService {
// Respond to GET requests within the /Service selection
@GET
// Specify a path matcher that takes anything and assigns it to rawPathParams
@Path("/{rawPathParams:.*}")
public Response service(@Context HttpServletRequest request, @PathParam("rawPathParams") String rawPathParams) {
// Do some stuff with the raw path parameters
// Return a 200_OK
return Response.status(200).build();
}
}
ปัง. ด้วยเวทย์มนตร์การกำหนดค่าเล็กน้อยใน web.xml คุณปิดอยู่ หากคุณกำลังสร้างด้วย Maven และมีการกำหนดค่าปลั๊กอิน Jetty โครงการของคุณจะมีเว็บเซิร์ฟเวอร์ตัวเล็ก ๆ ของตัวเองทันทีที่ออกจากกล่อง แบบฟอร์ม:
GET http://localhost:8080/contextName/Service/the/raw/path/params
งานเสร็จแล้ว