重慶分公司,新征程啟航
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)
這篇文章主要介紹servlet的dao層如何寫,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
創(chuàng)新互聯(lián)公司從2013年開始,公司自成立以來始終致力于為企業(yè)提供官網(wǎng)建設(shè)、移動互聯(lián)網(wǎng)業(yè)務(wù)開發(fā)(重慶小程序開發(fā)、手機網(wǎng)站建設(shè)、成都App定制開發(fā)等),并且包含互聯(lián)網(wǎng)基礎(chǔ)服務(wù)(域名、主機服務(wù)、企業(yè)郵箱、網(wǎng)絡(luò)營銷等)應(yīng)用服務(wù);以先進完善的建站體系及不斷開拓創(chuàng)新的精神理念,幫助企業(yè)客戶實現(xiàn)互聯(lián)網(wǎng)業(yè)務(wù),嚴(yán)格把控項目進度與質(zhì)量監(jiān)控加上過硬的技術(shù)實力獲得客戶的一致贊譽。
dao層:dao層叫數(shù)據(jù)訪問層,全稱為data access object,屬于一種比較底層,比較基礎(chǔ)的操作,具體到對于某個表、某個實體的增刪改查。
Dao層
先聲明一個接口類,類里聲明一些將會用的方法,
同一層內(nèi)寫一個實現(xiàn)這個接口類的類,重寫接口類里的方法
以實現(xiàn)Mybatis的寫法
方法主要是處理數(shù)據(jù)的方法;
public interface IStuClassDao { //全表查詢方法 public List findAllStuClassInfo(); //classID查詢 public MapfindStuClassById(int classId) ; //增加方法 public void addStuClassById(Stuclass sc) ; //更新方法 public void updateStuClassById(Stuclass sc) ; //查詢方法 public String findClassNamesByIds(String ids); }
以對于user的操作為例進行說明:
未實現(xiàn)Mybatis的寫法
AnimalDAO:
package DAO; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import util.JDBCUtil; import entry.Animal; /** * 對數(shù)據(jù)庫進行操作 * @author dell- * */ public class AnimalDAO { //添加動物信息 public void addAnimal(Animal animal){ //1建立連接 Connection conn= JDBCUtil.getConnection(); //2創(chuàng)建sql語句 String sql = "insert into animal (aid,aname,atime)values(?,?,?)"; //3創(chuàng)建sql執(zhí)行對象 PreparedStatement ps =null; try { ps=conn.prepareStatement(sql); ps.setInt(1, animal.getAid()); ps.setString(2, animal.getAname()); ps.setDate(3, new java.sql.Date(animal.getAtime().getTime())); ps.executeUpdate(); } catch (SQLException e) { e.printStackTrace(); }finally{ JDBCUtil.release(null,ps,conn); } } //查詢所有信息 public ListgetAll(){ List list = new ArrayList (); //1連接數(shù)據(jù)庫 Connection conn = JDBCUtil.getConnection(); //2拼裝sql String sql="select * from animal"; //3創(chuàng)建sql執(zhí)行對象 PreparedStatement ps =null; ResultSet rs = null; try { ps = conn.prepareStatement(sql); rs=ps.executeQuery(); while(rs.next()){ Animal animal = new Animal(); animal.setAid(rs.getInt("aid")); animal.setAname(rs.getString("aname")); animal.setAtime(rs.getDate("atime")); list.add(animal); } } catch (SQLException e) { e.printStackTrace(); }finally{ JDBCUtil.release(rs, ps, conn); } return list; } //通過aid 刪除動物信息 public void deleteAnimal(int aid){ //1建立數(shù)據(jù)庫連接 Connection conn = JDBCUtil.getConnection(); //2拼裝sql String sql = "delete from animal where aid=?"; //3創(chuàng)建sql執(zhí)行對象 PreparedStatement ps =null; try { ps = conn.prepareStatement(sql); ps.setInt(1, aid); ps.executeUpdate(); } catch (SQLException e) { e.printStackTrace(); }finally{ JDBCUtil.release(null, ps, conn); } } //通過aid修改動物信息 public void updateAnimal(Animal animal){ //1建立連接 Connection conn = JDBCUtil.getConnection(); //2拼裝sql String sql = "update animal set aname=?,atime=? where aid=?"; //3創(chuàng)建sql執(zhí)行對象 PreparedStatement ps = null; try { ps = conn.prepareStatement(sql); ps.setString(1, animal.getAname()); ps.setDate(2, new java.sql.Date(animal.getAtime().getTime())); ps.setInt(3, animal.getAid()); ps.executeUpdate(); } catch (SQLException e) { e.printStackTrace(); }finally{ JDBCUtil.release(null, ps, conn); } } public Animal getAnimalByid(int aid){ //1鏈接數(shù)據(jù)庫 Connection conn= JDBCUtil.getConnection(); //2創(chuàng)建sql語句 String sql = "select * from animal where aid=?"; //3創(chuàng)建sql執(zhí)行對象 PreparedStatement ps = null; ResultSet rs = null; try { ps = conn.prepareStatement(sql); ps.setInt(1, aid); rs = ps.executeQuery(); if(rs.next()){ Animal animal = new Animal(); animal.setAid(rs.getInt("aid")); animal.setAname(rs.getString("aname")); animal.setAtime(rs.getDate("atime")); return animal; } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ JDBCUtil.release(rs, ps, conn); } return null; } }
以上是servlet的dao層如何寫的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!