บทที่ 6 :JSP กับการติดต่อฐานข้อมูล

Download Report

Transcript บทที่ 6 :JSP กับการติดต่อฐานข้อมูล

[email protected]
JSP ติดต่ อฐานข้ อมูล
ตรวจสอบความพร้อมก่อนเรี ยน
J2SE (Set Environment ให้เรี ยบร้อย)
 Tomcat (Start Service ให้เรี ยบร้อย)
 เปิ ด home ของ tomcat
D:\TomcatWeb

Install : mysql , navincat (สามารถ download จากเว็บไซต์)
ขั้นตอนการเขียนโปรแกรมเพือ่ เชื่อมต่อกับฐานข้อมูล
โปรแกรม Java
1.
2.
3.
4.
5.
6.
Driver
โหลด Driver
สร้าง Connection เพื่อเชื่อมต่อกับฐานข้อมูล
สร้าง Statement หรื อวัตถุที่จะส่ งคาสัง่ sql ไปยังฐานข้อมูล
ส่ งคาสัง่ sql
แสดงผลการทางาน
ปิ ดการเชื่อมต่อ
Database
1โหลด Driver
รู ปแบบ
Class.forName(ชื่อคลาสที่เป็ นไดร์เวอร์);
ฐานข้ อมูล
ชื่อคลาสทีเ่ ป็ นไดร์ เวอร์
Mysql
com.mysql.jdbc.Driver
Microsoft Access
sun.jdbc.odbc.JdbcOdbcDriver
Microsoft SQL com.Microsoft.sqlserver.jdbc.SQLServerDriver
Server
Oraclr
Oracle.jdbc.driver.OracleDriver
2.สร้าง Connection เพื่อเชื่อมต่อกับDB
รูปแบบ
Connection คอนเน็คชัน่ =DriverManager.getConnection(URI_ของฐานข้อมูล);
หรื อ
Connection คอนเน็คชัน่ =DriverManager.getConnection(URI_ของฐานข้อมูล
,ชื่อผูใ้ ช้,รหัสผ่าน);
URI(uniform resource identifier)
ของฐานข้อมูล Mysql มีรูปแบบดังนี้
Jdbc:mysql://ชื่อserver/ชื่อdatabase
เมื่อเขียนเสร็ จแล้วถ้าไม่เกิด exception ขึ้นก็แสดงว่าเชื่อมต่อกับ
ฐานข้อมูลได้
ตัวอย่าง URL ของฐานข้อมูลชนิดต่าง ๆ
ฐานข้ อมูล
Mysql
Derby(Embedded)
Derby
Microsoft Access
Microsoft SQL Server
Oracel
URI
jdbc:mysql://ชื่อเซิร์ฟเวอร์ [:port]/ชื่อฐานข้อมูล
jdbc:derby:ชื่อฐานข้อมูล
jdbc:derby//ชื่อเซิร์ฟเวอร์[:port]/ชื่อฐานข้อมูล
jdbc:odbc:Driver={Microsoft Access Driver
(*.mdb)}; DBQ=ชื่อฐานข้อมูล.mdb
jdbc:sqlserver//ชื่อเซิร์ฟเวอร์ [:port];database=ชื่อ
ฐานข้อมูล
jdbc:oracle:thin:@ชื่อเซิร์ฟเวอร์:หมายเลขพอร์ท:
ชื่อฐานข้อมูล
3.statement

รูปแบบ
เตรียม คาสัง่ เพื่อจะใช้ sql
Statement ตัวแปร=conn.createStatement();
ตัวอย่าง
Statement stmt=conn.createStatement();
4. Method ที่น่าสนใจของคาสัง่ ดังนี้
4.1 กรณี insert ,Update , Delete
stmt.executeUpdate();
เมื่อใช้คาสัง่ ข้างต้นผลที่ return กลับมาจะเป็ นจานวนเต็มแสดงถึงแถว
ที่ถูกเปลี่ยนแปลง
4. Method ที่น่าสนใจของคาสัง่ ดังนี้
4.2 กรณี Select
stmt.executeQuery();
เมื่อใช้คาสัง่ ข้างต้นผลที่ return กลับมาจะเป็ น ResultSet ซึ่งมี
ลักษณะคล้ายตารางของกลุ่มข้อมูล
ยกตัวอย่าง การ insert
String sql=“insert into employee
(id,name,salary) values(4,’Mr Jo’,30000);”;
Int result = stmt.executeUpdate(sql);
ยกตัวอย่าง การ Select
String sql=“select * from employee;”;
ResultSet rs = stmt.executeQuery(sql);
while(rs.next()){
//อ่านข้อมูลจาก ResultSet โดยใช้เมธอด getXXX()
//เช่น rs.getInt(1) อ่านชนิดข้อมูลint จากคอมลัมน์แรก
// rs.getString(“name”); อ่านชนิดStringจาคอลัมธ์ชื่อ name
}
ตัวอย่าง
while(rs.next()){
out.println(rs.getInt(“id”));
out.println(rs.getString(“name”));
}
ปล. filed เป็ น int ใช้ getInt
filed เป็ น char ,varchar หรื ออื่นๆ ใช้ getString
ตัวอย่าง select
ตัวอย่าง select
5.ปิ ดการเชื่อมต่อ
ให้ปิด Connection ,Statement ,ResultSet
รูปแบบ
ตัวแปร.close();
ตัวอย่ าง
rs.close(); // เฉพาะกรณี ของ select
conn.close();
stmt.close();
ขั้นตอนเตรี ยมข้อมูลต่าง ๆ
1.ขั้นตอนเตรี ยม ข้อมูล และฐานข้อมูล
 2.ขั้นตอน download และ Install Driver ของ MySQL
 3. สร้าง JSP และจัดการกับฐานข้อมูลด้วยคาสัง่

ขั้นตอนสร้าง Database,table,data
ใช้โปรแกรม Navincat for Mysql
1.คลิก Conncetion เพื่อติดต่อไปยัง mysql
ขั้นตอนสร้าง Database,table,data
ใช้โปรแกรม Navincat for Mysql
2.ระบุขอ้ มูลของ Server ที่ตอ้ งการติดต่อ ในกรณี น้ ี ติดต่อที่เครื่ องของผูพ้ ฒั นา
สร้างชื่อการ
ติดต่อ
ติดต่อมาที่เครื่ อง
locahost
คลิกทดสอบ
รหัสเข้าใช้
mysql
ขั้นตอนสร้าง Database,table,data
ใช้โปรแกรม Navincat for Mysql
3.เมื่อติดต่อ mysql ได้กจ็ ะแสดงข้อมูล database ที่มีท้ งั หมดนะขณะนั้น
ขั้นตอนสร้าง Database,table,data
ใช้โปรแกรม Navincat for Mysql
4.สร้าง databasae ใหม่โดยคลิกขวา
และเลือก new database
ให้นกั ศึกษาสร้าง table guestbook

ข้อมูลดังนี้
ฝึ กปฏิบตั ิ

ติดต่อฐานข้อมูล
Insert
 Select
 Delete
 Update

ฝึ กปฏิบตั ิ

ฝึ กปฏิบตั ิสร้าง guestbookในชัว่ โมงเรี ยน