開發(fā)dao模型
開發(fā)dao模型:接口是用來定義操作的,在這里應(yīng)該定義:添、刪、改、查(ID查、查詢?nèi)俊⒛:樵儯┑炔僮鳌?nbsp;
import java.util.* ;
// 規(guī)定出了操作person表在此項目里的全部方法
public interface PersonDAO
{
// 增加操作
public void insert(Person person) throws Exception;
// 修改操作
public void update(Person person) throws Exception;
// 刪除操作
public void delete(String id) throws Exception;
// 按ID查詢操作
public Person queryById(String id) throws Exception;
// 查詢?nèi)?nbsp;
public List queryAll() throws Exception;
// 模糊查詢
public List queryByLike(String cond) throws Exception;
}
另創(chuàng)建一個類
import java.util.*;
public class PersonDAOImpl implements PersonDAO
{
// 增加操作
public void insert(Person person) throws Exception
{
}
// 修改操作
public void update(Person person) throws Exception
{
}
// 刪除操作
public void delete(String id) throws Exception
{
}
// 按ID查詢操作
public Person queryById(String id) throws Exception
{
}
// 查詢?nèi)?nbsp;
public List queryAll() throws Exception
{
}
// 模糊查詢
public List queryByLike(String cond) throws Exception
{
}
}
接下來我們按方法一個一個的實現(xiàn)功能:
(1)添加操作,傳入?yún)?shù)是Person person,同學(xué)們要理解為什么傳入Person,因為Person是數(shù)據(jù)bean,是用來存放數(shù)據(jù)的不管從前臺到后臺數(shù)據(jù)庫還是從后臺數(shù)據(jù)庫到前臺,Person的角色都是用來傳送數(shù)據(jù)的。
sql = "INSERT INTO person (id,name,password,age,email) VALUES (?,?,?,?,?)" ;
(2)修改操作與添加操作類似傳入?yún)?shù)也為person對象,只是SQL的執(zhí)行語句不同,當(dāng)然修改要有條件,即修改誰,這里是以id作為修改條件的。
sql = "UPDATE person SET name=?,password=?,age=?,email=? WHERE id=?" ;
(3)刪除操作,為什么這里沒有以Person做參數(shù)呢,原因是使用的過程中刪除操作都是通過id來標(biāo)志一行記錄的,為了使用方便所以傳一個id就可以實現(xiàn)刪除操作。
sql = "DELETE FROM person WHERE id=?" ;
(4)查詢操作一般分為三種:按ID查詢、查詢?nèi)俊⒛:樵儭?nbsp;
第一種:按ID查詢操作,傳入一個id號返回一條記錄,也就是一個person對象,person對應(yīng)著數(shù)據(jù)庫里的一行記錄,所以返回值應(yīng)該為Person類型。
sql = "SELECT id,name,password,age,email FROM person WHERE id=?" ;
第二種:查詢?nèi)浚簿褪遣樵冋麖埍淼娜繑?shù)據(jù),因為整張表有多條記錄,所以對應(yīng)就應(yīng)該有多個person對象,查詢的時候我們可以用list存放多個person對象,查詢之后將該list返回。
sql = "SELECT id,name,password,age,email FROM person" ;
第三種:模糊查詢,所謂模糊查詢是指在數(shù)據(jù)表中查找與指定字符串部分相匹配的字段的行,如我們可以在一個用戶的數(shù)據(jù)庫中查找姓名中含有“靜”字的所有記錄,可以用like語句來實現(xiàn)。由于結(jié)果可能有多條記錄,所以返回值好是存放Person對象的List。
sql = "SELECT id,name,password,age,email FROM person "+"WHERE name LIKE ? or email LIKE ?" ;
posted on 2012-09-20 00:48 奮斗成就男人 閱讀(330) 評論(0) 編輯 收藏 所屬分類: J2EE