Heim >Java >javaLernprogramm >So schreiben Sie die Dao-Schicht eines Servlets
Dao-Schicht: Die Dao-Schicht wird als Datenzugriffsschicht bezeichnet und steht für Datenzugriffsobjekt. Es handelt sich um eine relativ einfache und grundlegende Operation, einschließlich des Hinzufügens, Löschens, Änderns und Abfragens einer bestimmten Tabelle oder Entität.
Empfohlener Kurs: Java-Tutorial.
Dao-Ebene
Deklarieren Sie zunächst eine Schnittstellenklasse, deklarieren Sie einige Methoden, die in der Klasse verwendet werden,
Schreiben Sie eine Klasse in derselben Ebene, die dies implementiert Schnittstellenklasse, schreiben Sie die Methoden in der Schnittstellenklasse neu
, um die Schreibmethode von Mybatis zu implementieren
Die Methode ist hauptsächlich eine Methode zur Datenverarbeitung
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); }
Nehmen Sie die Operation des Benutzers als Beispiel zur Veranschaulichung:
Die Schreibmethode von Mybatis ist nicht implementiert
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; /** * 对数据库进行操作 * @author dell- * */ public class AnimalDAO { //添加动物信息 public void addAnimal(Animal animal){ //1建立连接 Connection conn= JDBCUtil.getConnection(); //2创建sql语句 String sql = "insert into animal (aid,aname,atime)values(?,?,?)"; //3创建sql执行对象 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连接数据库 Connection conn = JDBCUtil.getConnection(); //2拼装sql String sql="select * from animal"; //3创建sql执行对象 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建立数据库连接 Connection conn = JDBCUtil.getConnection(); //2拼装sql String sql = "delete from animal where aid=?"; //3创建sql执行对象 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创建sql执行对象 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链接数据库 Connection conn= JDBCUtil.getConnection(); //2创建sql语句 String sql = "select * from animal where aid=?"; //3创建sql执行对象 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; } }
Das obige ist der detaillierte Inhalt vonSo schreiben Sie die Dao-Schicht eines Servlets. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!