servlet的dao層如何寫(xiě)

這篇文章主要介紹servlet的dao層如何寫(xiě),文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

創(chuàng)新互聯(lián)公司從2013年開(kāi)始,公司自成立以來(lái)始終致力于為企業(yè)提供官網(wǎng)建設(shè)、移動(dòng)互聯(lián)網(wǎng)業(yè)務(wù)開(kāi)發(fā)(重慶小程序開(kāi)發(fā)、手機(jī)網(wǎng)站建設(shè)、成都App定制開(kāi)發(fā)等),并且包含互聯(lián)網(wǎng)基礎(chǔ)服務(wù)(域名、主機(jī)服務(wù)、企業(yè)郵箱、網(wǎng)絡(luò)營(yíng)銷等)應(yīng)用服務(wù);以先進(jìn)完善的建站體系及不斷開(kāi)拓創(chuàng)新的精神理念,幫助企業(yè)客戶實(shí)現(xiàn)互聯(lián)網(wǎng)業(yè)務(wù),嚴(yán)格把控項(xiàng)目進(jìn)度與質(zhì)量監(jiān)控加上過(guò)硬的技術(shù)實(shí)力獲得客戶的一致贊譽(yù)。

dao層:dao層叫數(shù)據(jù)訪問(wèn)層,全稱為data access object,屬于一種比較底層,比較基礎(chǔ)的操作,具體到對(duì)于某個(gè)表、某個(gè)實(shí)體的增刪改查。

servlet的dao層如何寫(xiě)

Dao層
先聲明一個(gè)接口類,類里聲明一些將會(huì)用的方法,
同一層內(nèi)寫(xiě)一個(gè)實(shí)現(xiàn)這個(gè)接口類的類,重寫(xiě)接口類里的方法

以實(shí)現(xiàn)Mybatis的寫(xiě)法
方法主要是處理數(shù)據(jù)的方法;

public interface IStuClassDao {
    //全表查詢方法
    public List findAllStuClassInfo();
    //classID查詢
    public Map<String, Object> findStuClassById(int classId) ;
    //增加方法
    public void addStuClassById(Stuclass sc) ;
    //更新方法
    public void updateStuClassById(Stuclass sc) ;
    //查詢方法
    public String findClassNamesByIds(String ids);
}

以對(duì)于user的操作為例進(jìn)行說(shuō)明:

未實(shí)現(xiàn)Mybatis的寫(xiě)法

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;
/**
 * 對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作
 * @author dell-
 *
 */
public class AnimalDAO {


	//添加動(dòng)物信息
	public void addAnimal(Animal animal){
		//1建立連接
		Connection conn= JDBCUtil.getConnection();
		//2創(chuàng)建sql語(yǔ)句
		String sql = "insert into animal (aid,aname,atime)values(?,?,?)";
		//3創(chuàng)建sql執(zhí)行對(duì)象
		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 List<Animal> getAll(){
		List<Animal> list = new ArrayList<Animal>();
		//1連接數(shù)據(jù)庫(kù)
		Connection conn = JDBCUtil.getConnection();
		//2拼裝sql
		String sql="select * from animal";
		//3創(chuàng)建sql執(zhí)行對(duì)象
		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;
	}
	//通過(guò)aid 刪除動(dòng)物信息
	public void deleteAnimal(int aid){
		//1建立數(shù)據(jù)庫(kù)連接
		Connection conn = JDBCUtil.getConnection();
		//2拼裝sql
		String sql = "delete from animal where aid=?";
		//3創(chuàng)建sql執(zhí)行對(duì)象
		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);
		}
		}
		//通過(guò)aid修改動(dòng)物信息
		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í)行對(duì)象
			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ù)庫(kù)
		Connection conn= JDBCUtil.getConnection();
		//2創(chuàng)建sql語(yǔ)句
		String sql = "select * from animal where aid=?";
		//3創(chuàng)建sql執(zhí)行對(duì)象
		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層如何寫(xiě)的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

當(dāng)前文章:servlet的dao層如何寫(xiě)
當(dāng)前路徑:http://bm7419.com/article40/psdeeo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開(kāi)發(fā)、網(wǎng)站建設(shè)、商城網(wǎng)站、關(guān)鍵詞優(yōu)化、自適應(yīng)網(wǎng)站、小程序開(kāi)發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司