package com.happy.dao.impl; import com.happy.Model.AdminManager; import com.happy.Model.File; import com.happy.Until.UUIDUtil; import com.happy.dao.FileDao; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.jdbc.core.BeanPropertyRowMapper; import org.springframework.jdbc.core.namedparam.MapSqlParameterSource; import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate; import org.springframework.stereotype.Repository; import java.util.List; @Repository("FileDao") public class FileImplDao implements FileDao { @Autowired private NamedParameterJdbcTemplate namedParameterJdbcTemplate; public NamedParameterJdbcTemplate getNamedParameterJdbcTemplate() { return namedParameterJdbcTemplate; } public void setNamedParameterJdbcTemplate( NamedParameterJdbcTemplate namedParameterJdbcTemplate) { this.namedParameterJdbcTemplate = namedParameterJdbcTemplate; } @Override public int insertFile(File file) { String sql = "INSERT INTO file (id, link_id, file_url, file_name) VALUES (:id, :link_id, :file_url, :file_name)"; MapSqlParameterSource sps = new MapSqlParameterSource(); sps.addValue("link_id",file.getLinkId()); sps.addValue("file_url",file.getFileUrl()); sps.addValue("file_name",file.getFileName()); if(file.getId()==null){ sps.addValue("id", UUIDUtil.generateID()); } int num = 0; try{ num = namedParameterJdbcTemplate.update(sql, sps); } catch(Exception e){ e.printStackTrace(); } return num; } @Override public int updateFile(File file) { String sql = "UPDATE file SET id = :id, link_id = :link_id, file_url = :file_url, file_name = :file_name WHERE id = :id"; MapSqlParameterSource sps = new MapSqlParameterSource(); sps.addValue("link_id",file.getLinkId()); sps.addValue("file_url",file.getFileUrl()); sps.addValue("file_name",file.getFileName()); sps.addValue("id",file.getId()); int num = 0; try{ num = namedParameterJdbcTemplate.update(sql, sps); } catch(Exception e){ e.printStackTrace(); } return num; } @Override public int delFile(int id) { String sql = "DELETE FROM `file` WHERE id = :id "; MapSqlParameterSource sps = new MapSqlParameterSource(); sps.addValue("id",id); int num = 0; try{ num = namedParameterJdbcTemplate.update(sql, sps); }catch (Exception e){ e.printStackTrace(); } return num; } @Override public int delLinkFile(int linkId) { String sql = "DELETE FROM `file` WHERE link_id = :link_id "; MapSqlParameterSource sps = new MapSqlParameterSource(); sps.addValue("link_id",linkId); int num = 0; try{ num = namedParameterJdbcTemplate.update(sql, sps); }catch (Exception e){ e.printStackTrace(); } return num; } @Override public File getById(int id) { String sql = "SELECT * FROM `file` WHERE id = :id "; MapSqlParameterSource sps = new MapSqlParameterSource(); sps.addValue("id",id); List list = null; try{ list = namedParameterJdbcTemplate.query(sql, sps, new BeanPropertyRowMapper<>(File.class)); }catch (Exception e){ e.printStackTrace(); } if(list != null && list.size()>0) return list.get(0); return null; } @Override public List queryPage(String sqlx, int page, int rows) { int start = (page - 1) * rows;// 每页的起始下标 String sql = "SELECT * FROM `file` WHERE 1=1 "+sqlx+" ORDER BY id DESC limit :start,:rows "; MapSqlParameterSource sps = new MapSqlParameterSource(); sps.addValue("start", start); sps.addValue("rows", rows); List list = namedParameterJdbcTemplate.query(sql, sps, new BeanPropertyRowMapper<>(File.class)); if (list != null && list.size() > 0) return list; return null; } @Override public int queryTotal(String sqlx) { String sql = "SELECT count(*) FROM`file` where 1=1 "+sqlx; MapSqlParameterSource sps = new MapSqlParameterSource(); return namedParameterJdbcTemplate.queryForInt(sql, sps); } @Override public List queryList(String sqlx) { String sql = "SELECT * FROM `file` WHERE 1=1 "+sqlx; List list = null; try{ list = namedParameterJdbcTemplate.query(sql, new BeanPropertyRowMapper<>(File.class)); }catch (Exception e){ e.printStackTrace(); } if(list != null && list.size()>0) return list; return null; } }