常用的增刪改查的實現之dao層
阿新 • • 發佈:2019-02-20
public interface IFoodTypeDao { //增 輸入:一個物件 輸出:無 void add //刪 輸入:id 輸出:無 void delete(int id); //改 輸入:一個物件 輸出:無 void update(FoodType foodType ); //findById 輸入:id 輸出:NUll或一個物件 FoodType findById(int id); //查詢所有 輸入:無 輸出:List<T>集合 List<FoodType> getAll(); /***由此可以看出,增,刪,改都是不需要返回值的 ***/ } //dao層的實現 public class FoodTypeDao implements IFoodTypeDao { public void add(){ String sql="insert into foodtype(typeName) values(?)"; try { JdbcUtil.getQueryRunner().update(sql, foodType.getTypeName()); } catch (SQLException e) { e.printStackTrace(); throw new RuntimeException(e); } } //後面的實現大致相同 public void delete(int id){ String sql="DELETE FROM foodtype WHERE id=?"; try { JdbcUtil.getQueryRunner().update(sql, id); } catch (SQLException e) { e.printStackTrace(); throw new RuntimeException(e); } } public void update(FoodType foodType){ String sql="update foodtype set TypeName =? where id=?"; try { JdbcUtil.getQueryRunner().update(sql, foodType.getTypeName(),foodType.getId()); } catch (SQLException e) { e.printStackTrace(); throw new RuntimeException(e); } } public FoodType findById(int id){ String sql="select * from foodtype where id=?"; try { return JdbcUtil.getQueryRunner().query(sql, new BeanHandler<FoodType>(FoodType.class), id); } catch (SQLException e) { e.printStackTrace(); throw new RuntimeException(e); } } public List<FoodType> getAll(){ String sql="select * from foodtype"; try { return JdbcUtil.getQueryRunner().query(sql, new BeanListHandler<FoodType>(FoodType.class)); } catch (SQLException e) { e.printStackTrace(); throw new RuntimeException(e); } } }
注意:<c:forEach var="" items=" " ></c:forEach> items 裡通過request域獲取引數值時必須寫 el表示式。