package com.cms.dao.Impl;

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 java.util.Map;

import com.cms.dao.AdminDao;
import com.cms.model.Admin;
import com.cms.model.Page;

import dbutil.DBUtil;

public class AdminDaoImpl implements AdminDao {
private static Connection conn=null;
private static PreparedStatement ps=null;
private static ResultSet rs=null;
	@Override
	public boolean addAdmin(Admin admin) {
		try {
			conn=DBUtil.getConnection();
			String sql="insert into s_admin(id,a_name,a_word,a_gender,a_phone,a_email,createtime) values(?,?,?,?,?,?,?)";
			ps=conn.prepareStatement(sql);
			ps.setInt(1,admin.getId());
			ps.setString(2,admin.getA_name());
			ps.setString(3,admin.getA_word());
			ps.setInt(4,admin.getA_gender());
			ps.setString(5,admin.getA_phone());
			ps.setString(6,admin.getA_email());
			ps.setString(7, admin.getCreatetime().toString());
			int count=ps.executeUpdate();
			return count>0?true:false;
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally{
			DBUtil.release(conn, ps, rs);
		}
		return false;
	}

	@Override
	public boolean updateAdmin(Admin admin){
		try {
			conn=DBUtil.getConnection();
			String sql="update s_admin set a_name=?,a_word=?,a_gender=?,a_phone=?,a_email=?,createtime=? where id=?";
		    ps=conn.prepareStatement(sql);
		    ps.setString(1,admin.getA_name());
			ps.setString(2,admin.getA_word());
			ps.setInt(3, admin.getA_gender());
			ps.setString(4,admin.getA_phone());
			ps.setString(5,admin.getA_email());
			ps.setString(6, admin.getCreatetime().toString());
			ps.setInt(7,admin.getId());
			int count=ps.executeUpdate();
			return count>0?true:false;
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally {
			DBUtil.release(conn, ps, rs);
		}
		return false;
	}

	@Override
	public boolean deleteAdmin(int id) {
	      try {
			conn=DBUtil.getConnection();
			String sql="delete from s_admin where id =?";
			ps=conn.prepareStatement(sql);
			ps.setInt(1,id);
			int count=ps.executeUpdate();
			return count>0?true:false;
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally {
			DBUtil.release(conn, ps, rs);
		}
		return false;
	}

	@Override
	public List<Admin> selectAllAdmin(Page page) {
		List<Admin> admins=new ArrayList<Admin>();
		try {
			conn=DBUtil.getConnection();
			String sql="select * from s_admin limit ?,?";
			ps=conn.prepareStatement(sql);
			ps.setInt(1,page.getStartIndex());
			ps.setInt(2,page.getPageSize());
			rs=ps.executeQuery();
			while (rs.next()) {
				//这里注意一下,每有一条记录就产生一个新的对象
				//切记不要写在while循坏外
				Admin admin=new Admin();
				admin.setId(rs.getInt(1));
				admin.setA_name(rs.getString(2));
				admin.setA_word(rs.getString(3));
				admin.setA_gender(rs.getInt(4));
				admin.setA_phone(rs.getString(5));
				admin.setA_email(rs.getString(6));
				admin.setCreatetime(rs.getDate(7)+"");
				admins.add(admin);
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}finally {
			DBUtil.release(conn, ps, rs);
		}
		return admins;
	}

	@Override
	public Admin selectOneAdmin(int id) {
		Admin admin=new Admin();
		try {
			conn=DBUtil.getConnection();
			String sql="select * from s_admin where id = ?";
			ps=conn.prepareStatement(sql);
			ps.setInt(1,id);
			rs=ps.executeQuery();
			if (rs.next()) {
				admin.setId(rs.getInt(1));
				admin.setA_name(rs.getString(2));
				admin.setA_word(rs.getString(3));
				admin.setA_gender(rs.getInt(4));
				admin.setA_phone(rs.getString(5));
				admin.setA_email(rs.getString(6));
				admin.setCreatetime(rs.getDate(7)+"");
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally {
			DBUtil.release(conn, ps, rs);
		}
		return admin;
	}

	@Override
	public Admin checkLogin(Map<String, Object> map) {
		Admin admin=new Admin();
		try {
			conn=DBUtil.getConnection();
			String sql="select * from s_admin where a_name = ? and a_word = ?";
			ps=conn.prepareStatement(sql);
			ps.setString(1,(String)map.get("a_name"));
			ps.setString(2,(String)map.get("a_word"));
			rs=ps.executeQuery();
			if (rs.next()) {
				admin.setId(rs.getInt(1));
				admin.setA_name(rs.getString(2));
				admin.setA_word(rs.getString(3));
				admin.setA_gender(rs.getInt(4));
				admin.setA_phone(rs.getString(5));
				admin.setA_email(rs.getString(6));
				admin.setCreatetime(rs.getDate(7)+"");
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally {
			DBUtil.release(conn, ps, rs);
		}
		return admin;
	}
//获取管理员表总记录数
	@Override
	public int totalRecord() {
		int count=0;
		try {
			conn=DBUtil.getConnection();
			String sql="select count(*) from s_admin";
			ps=conn.prepareStatement(sql);
		   rs=ps.executeQuery();
		   while (rs.next()) {
			 count=rs.getInt(1);
		}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally {
			DBUtil.release(conn, ps, rs);
		}
		return count;
	}

}
最近下载更多
a_mika  LV8 2018年10月22日
1271700642  LV1 2018年10月21日
as18214965543  LV7 2018年10月20日
学习吧姜  LV2 2018年10月20日
angao222  LV6 2018年10月19日
hellolb  LV8 2018年10月18日
jellydong  LV7 2018年10月18日
telonj  LV7 2018年10月18日
一名小学生  LV10 2018年10月18日
彬彬9811  LV8 2018年10月18日
最近浏览更多
a_mika  LV8 2018年10月22日
cy522525031  LV15 2018年10月22日
1271700642  LV1 2018年10月21日
gxbhwhn  LV9 2018年10月21日
zhouxuanlin  LV6 2018年10月21日
继元宝  LV9 2018年10月20日
苗毅6666  LV32 2018年10月20日
as18214965543  LV7 2018年10月20日
helloworld123321  LV1 2018年10月20日
学习吧姜  LV2 2018年10月20日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友