ซึ่งก็อาจใช้ในการ ทดสอบโปรแกรมระบบ ได้เช่นกัน
ตัวอย่าง batch file สำหรับ set classpath
Directory of D:\scala-2.9.2 08/11/2012 01:12 AM <dir> . 08/11/2012 01:12 AM <dir> .. 08/11/2012 01:12 AM <dir> bin 04/13/2012 05:25 AM <dir> doc 08/08/2012 12:02 AM <dir> lib 04/13/2012 05:25 AM <dir> man 04/13/2012 05:25 AM <dir> misc 08/11/2012 12:06 AM 152 setpath.bat 04/13/2012 05:25 AM <dir> src
ข้อมูล batch เป็นดังนี้
set path=%PATH%;c:\Program Files\Java\jdk1.7.0_03\bin; set path=%PATH%;D:\scala-2.9.2\bin; set JAVA_HOME=c:\Program Files\Java\jdk1.7.0_03\binSource Code get_http.scala
import java.net.URL import java.net.HttpURLConnection val url = new URL("http","localhost",80,"/apt") val con = url.openConnection.asInstanceOf[HttpURLConnection] con.setRequestProperty("Header","Value") con.connect() val ips = con.getInputStream() for( i <- 1 to ips.available ){ print( ips.read.asInstanceOf[Char] ) }
เป็นการแสดงตัวอย่าง Source Code ภาษา Scala ซึ่งเรียกใช้ object/method ของ java
โดยสร้าง URL ระบุ protocol , host , port , path หรือ ไฟล์
แล้วเปิดคอนเนคชัน และ cast type เป็น HttpURLConnection
ลองส่ง Property ไปเล่นๆ
เปิด connection จริง
ดึงข้อมูล ImputStream ใส่ตัวแปร pointer ips
วนรอบเท่าจำนวนตัวอักษรที่อ่านได้ (ips.available)
แล้ว อ่านทีละตัวอักษรซึ่งจะเป็นเลข interger แล้ว CastType ไปเป็น Char
แล้ว พิมพ์ออกทางหน้าจอ
ตัวอย่างผลลัพธ์
scala> :load get_http.scala
Loading get_http.scala...
import java.net.URL
import java.net.HttpURLConnection
url: java.net.URL = http://localhost:80/apt
con: java.net.HttpURLConnection = sun.net.www.protocol.http.HttpURLConnection:ht
tp://localhost:80/apt
ips: java.io.InputStream = sun.net.www.protocol.http.HttpURLConnection$HttpInput
Stream@3dd423
NO Screen Info !
redirect to $http://localhost/apt/index.php/unmanage/check_d
redirect to $http://localhost/apt/index.php/unmanage/check_d
evice_res/
scala>
จะเห็นว่ามีการดึงข้อมูลได้ ถูกต้อง แต่มีการแสดง Source Code ด้วยเพื่อ ตรวจสอบข้อผิดพลาด
หากต้องการให้ไม่แสดง Source Code ให้ใช้คำสั่ง :silent แล้วโหลด code มารันด้วย :load
ดังนี้
scala> :silent
Switched off result printing.
scala> :load get_http.scala
Loading get_http.scala...
NO Screen Info !
redirect to $http://localhost/apt/index.php/unmanage/check_d
redirect to $http://localhost/apt/index.php/unmanage/check_d
evice_res/
scala>
อ้างอิงจาก
http://docs.oracle.com/javase/1.4.2/docs/api/java/net/HttpURLConnection.html
http://tutorials.jenkov.com/scala/for.html
http://www.codecommit.com/blog/scala/scala-for-java-refugees-part-1
http://tutorials.jenkov.com/scala/for.html
http://www.codecommit.com/blog/scala/scala-for-java-refugees-part-1
No comments:
Post a Comment