package com.happy.dao.impl; import com.happy.Model.FileInfo; import com.happy.Until.UUIDUtil; import com.happy.dao.FileInfoDao; 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 FileImplInfoDao implements FileInfoDao { @Autowired private NamedParameterJdbcTemplate namedParameterJdbcTemplate; public NamedParameterJdbcTemplate getNamedParameterJdbcTemplate() { return namedParameterJdbcTemplate; } public void setNamedParameterJdbcTemplate( NamedParameterJdbcTemplate namedParameterJdbcTemplate) { this.namedParameterJdbcTemplate = namedParameterJdbcTemplate; } @Override public int insertFile(FileInfo file) { String sql = "INSERT INTO file_info (id, link_id, url, name) VALUES (:id, :link_id, :url, :name)"; MapSqlParameterSource sps = new MapSqlParameterSource(); sps.addValue("link_id",file.getLinkId()); sps.addValue("url",file.getUrl()); sps.addValue("name",file.getName()); if(file.getId()==null){ sps.addValue("id", UUIDUtil.generateID()); }else{ sps.addValue("id", file.getId()); } int num = 0; try{ num = namedParameterJdbcTemplate.update(sql, sps); } catch(Exception e){ e.printStackTrace(); } return num; } @Override public int updateFile(FileInfo file) { String sql = "UPDATE file_info SET id = :id, link_id = :link_id, url = :url, name = :name WHERE id = :id"; MapSqlParameterSource sps = new MapSqlParameterSource(); sps.addValue("link_id",file.getLinkId()); sps.addValue("url",file.getUrl()); sps.addValue("name",file.getName()); 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_info` 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_info` 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 FileInfo getById(int id) { String sql = "SELECT * FROM `file_info` WHERE id = :id "; MapSqlParameterSource sps = new MapSqlParameterSource(); sps.addValue("id",id); List list = null; try{ list = namedParameterJdbcTemplate.query(sql, sps, new BeanPropertyRowMapper<>(FileInfo.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_info` 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<>(FileInfo.class)); if (list != null && list.size() > 0) return list; return null; } @Override public int queryTotal(String sqlx) { String sql = "SELECT count(*) FROM `file_info` where 1=1 "+sqlx; MapSqlParameterSource sps = new MapSqlParameterSource(); return namedParameterJdbcTemplate.queryForInt(sql, sps); } @Override public List queryList(String sqlx) { String sql = "SELECT * FROM `file_info` WHERE 1=1 "+sqlx; List list = null; try{ list = namedParameterJdbcTemplate.query(sql, new BeanPropertyRowMapper<>(FileInfo.class)); }catch (Exception e){ e.printStackTrace(); } if(list != null && list.size()>0) return list; return null; } }