📄 carddao.java
字号:
package edu.yinhe.mis.model;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import edu.yinhe.mis.dto.CardDTO;
import edu.yinhe.mis.vo.CardVO;
import edu.yinhe.system.model.BaseDAO;
public class CardDAO extends BaseDAO {
/**
* @param obj对象
* @return boolea型的值 根据id删除对应记录
*/
public Object delete(Object obj) throws SQLException {
boolean falg = false;
Integer id = (Integer) obj;
String SQL = null;
PreparedStatement ps = null;
SQL = "DELETE FROM card WHERE ID="+id;
ps = conn.prepareStatement(SQL);
ps.executeUpdate();
falg = true;
if (ps != null) {
ps.close();
}
return falg;
}
public Object find() throws SQLException {
// TODO Auto-generated method stub
return null;
}
public Object find(Object arg0) throws SQLException {
// TODO Auto-generated method stub
return null;
}
public Object findAll() throws SQLException {
return null;
}
/**
* @param 传入CardDTO对象
* @return 返回一个list集合
*/
public Object findAll(Object obj) throws SQLException {
PreparedStatement ps = null;
ResultSet rs = null;
CardDTO dto=null;
Object[] objs = new Object[2];
CardVO vo = new CardVO();
String SQL = null;
ArrayList list = new ArrayList();
dto=(CardDTO)obj;
objs[0]=this.getCount(dto);
SQL = "select c.id,c.LEVEL,c.SENDCARDER,c.card_title,c.CREATE_TIME,(select count(*) from revert r where r.card_id=c.id) a,(select max(revert_time) from revert r where r.card_id=c.id),(select r.reverter from revert r where r.revert_time=(select max(revert_time) from revert r where r.card_id=c.id)) from card c ORDER BY LEVEL DESC limit ?,?";
ps = conn.prepareStatement(SQL);
int first=(Integer.valueOf(dto.getCurrentPage())-1)*Integer.valueOf(dto.getCurrentPage());
ps.setInt(1, first);
ps.setInt(2, Integer.parseInt(dto.getRowperPage()));
rs = ps.executeQuery();
while (rs.next()) {
vo = new CardVO();
vo = new CardVO();
vo.setID(rs.getInt(1));
vo.setLEVEL(rs.getInt(2));
vo.setSENDCARDER(rs.getString(3));
vo.setCARD_TITLE(rs.getString(4));
vo.setCREATE_TIME(rs.getTimestamp(5).toString().substring(0, 19));
vo.setCount(rs.getInt(6));
vo.setLastdate(rs.getString(7));
vo.setREVERTER(rs.getString(8));
list.add(vo);
}
objs[1]=list;
if (ps != null) {
ps.close();
}
if (rs != null) {
rs.close();
}
return objs;
}
public Object findById(Object obj) throws SQLException {
String sql = "";
CardVO vo = null;
CardDTO cdto = null;
PreparedStatement ps = null;
ResultSet rs = null;
ArrayList list = new ArrayList();
try {
cdto = (CardDTO) obj;
sql = "SELECT * FROM card WHERE id = ?";
ps = conn.prepareStatement(sql);
ps.setInt(1, cdto.getID());
rs = ps.executeQuery();
while (rs.next()) {
vo = new CardVO();
vo.setID(rs.getInt("ID"));
vo.setCARD_TITLE(rs.getString("CARD_TITLE"));
vo.setCREATE_TIME(rs.getTimestamp("CREATE_TIME").toString().substring(0, 19));
vo.setCARD_CONTENT(rs.getString("CARD_CONTENT"));
}
} catch (SQLException e) {
System.out.println(e.getMessage());
} finally {
if (ps != null)
ps.close();// 由于项目庞大,节约资源
sql = null;// 由于项目庞大,节约资源
cdto = null; // 由于项目庞大,节约资源
}
return vo;
}
public Object findByObject(Object arg0) throws SQLException {
// TODO Auto-generated method stub
return null;
}
public int getCount(Object obj) throws SQLException {
String SQL = null;
CardDTO dto = null;
PreparedStatement pstat = null;
ResultSet rst = null;
Integer integer = new Integer(0);
try {
dto = (CardDTO)obj;// 由于前面传参数的时候,已经向上转型,所以这里可以向下转型,即把父类的引用给
// //子类的引用,只有先向上转型才可以向下转型.
SQL = "SELECT count(*) FROM card";
pstat = conn.prepareStatement(SQL);
rst = pstat.executeQuery();
while (rst.next()) {
integer = rst.getInt(1);
}
} finally {
if (rst != null)
rst.close();// 由于项目庞大,节约资源
if (pstat != null)
pstat.close();// 由于项目庞大,节约资源
SQL = null;// 由于项目庞大,节约资源
dto = null; // 由于项目庞大,节约资源
}
return integer;
}
public Object getMaxId(Object arg0) throws SQLException {
// TODO Auto-generated method stub
return null;
}
/**
* @param 传入CardDTO对象
* @return boolea型的值 ,插入成功返回true,不成功返回false
*/
public Object insert(Object obj) throws SQLException {
boolean flag = false;
int ok = 0;
PreparedStatement ps = null;
CardDTO dto = (CardDTO) obj;
String SQL = null;
SQL = "INSERT INTO card(CARD_TITLE,CARD_CONTENT,CREATE_TIME,SENDCARDER) VALUES(?,?,?,?)";
ps = conn.prepareStatement(SQL);
ps.setString(1, dto.getCARD_TITLE());
ps.setString(2, dto.getCARD_CONTENT());
ps.setString(3, dto.getCREATE_TIME());
ps.setString(4, dto.getSENDCARDER());
ok = ps.executeUpdate();
if (ok != -1)
flag = true;
return flag;
}
/**
* @param 传入CardDTO对象
* @return boolea型的值 根据id修改对应记录
*/
public Object update(Object obj) throws SQLException {
boolean falg = false;
PreparedStatement ps = null;
CardDTO dto=(CardDTO) obj;
String SQL = null;
SQL = "UPDATE card SET LEVEL=? WHERE id=?";
ps = conn.prepareStatement(SQL);
ps.setInt(1, dto.getLEVEL());
ps.setInt(2, dto.getID());
ps.executeUpdate();
falg = true;
if (ps != null) {
ps.close();
}
SQL = null;
return falg;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -