(2)在dao包中声明具体要实现的操作
/*声明具体要实现的操作*/
package dao;
import java.util.List;
import vo.Reader;
public interface ReaderDAO {
/*向reader表中插入一条记录*/
public int add(Reader reader)throws Exception;
/*向reader表中删除一条记录*/
public int delete(int id)throws Exception;
/*向reader表中修改一条记录*/
public int update(Reader reader)throws Exception;
/*向reader表中根据id搜索一条记录*/
public Reader findByID(int id)throws Exception;
/*向reader表中查询所有记录*/
public List findAll()throws Exception;
}
(3)在impl包里写出如下实现:
package dao.impl;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
import vo.Reader;
import dao.ReaderDAO;
public class ReaderDAOImpl implements ReaderDAO {
private Connection con = null;//
数据库连接,由外部提供,只负责声明操作的实现
public ReaderDAOImpl(Connection con) {
super();
this.con = con;
}
@Override
public int add(Reader reader) throws Exception {
// TODO Auto-generated method stub
int count = 0;
String sql = "INSERT reader (readerid,cardid,readername,password,sex,idcard,homeaddress,phone,jobaddress,booksum,carddate,abatedate,borrowersum,xueli,remark) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
PreparedStatement pstmt = null;
try {
pstmt = this.con.prepareStatement(sql);
pstmt.setInt(1, reader.getReaderid());
pstmt.setString(2, reader.getCardid());
pstmt.setString(3, reader.getReadername());
pstmt.setString(4, reader.getPassword());
pstmt.setString(5, reader.getSex());
pstmt.setString(6, reader.getIdcard());
pstmt.setString(7, reader.getHomeaddress());
pstmt.setString(8, reader.getPhone());
pstmt.setString(9, reader.getJobaddress());
pstmt.setInt(10, reader.getBooksum());
pstmt.setString(11, reader.getCarddate());
pstmt.setString(12, reader.getAbatedate());
pstmt.setInt(13,reader.getBorrowersum());
pstmt.setString(14,reader.getXueli());
pstmt.setString(15, reader.getRemark());
count = pstmt.executeUpdate();//执行更新
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
pstmt.close();
}
return count;
}
@Override
public int delete(int id) throws Exception {
// TODO Auto-generated method stub
int count = 0;
String sql = "DELETE FROM reader WHERE readerid=?";
PreparedStatement pstmt = null;
try {
pstmt = this.con.prepareStatement(sql);
pstmt.setInt(1, id);
count = pstmt.executeUpdate();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
pstmt.close();
}
return co
课程设计小知识(二)
jobaddress;
}
public void setJobaddress(String jobaddress) {
this.jobaddress = jobaddress;
}
public int getBooksum() {
return booksum;
}
public void setBooksum(int booksum) {
this.booksum = booksum;
}
public String getCarddate() {
return carddate;
}
public void setCarddate(String carddate) {
this.carddate = carddate;
}
public String getAbatedate() {
return abatedate;
}
public void setAbatedate(String abatedate) {
this.abatedate = abatedate;
}
public String getXueli() {
return xueli;
}
public void setXueli(String xueli) {
this.xueli = xueli;
}
public int getBorrowersum() {
return borrowersum;
}
public void setBorrowersum(int borrowersum) {
this.borrowersum = borrowersum;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
}