利用SimpleJdbcTemplate进行增删改查
来源:互联网 发布:淘宝上开刃刀 编辑:程序博客网 时间:2024/06/04 19:02
private SimpleJdbcTemplate simpleJdbcTemplate;//查询实体对象:public AdPostInfoBean selectByKey(int apId, int targetId, int targetType) { String sql = "select * from adpostinfo where apid=? and targetid=? and targettype=?"; try { return this.simpleJdbcTemplate.queryForObject(sql, ParameterizedBeanPropertyRowMapper .newInstance(AdPostInfoBean.class), apId, targetId, targetType); } catch (EmptyResultDataAccessException e) { return null; } }//查询列表public List<AdPostInfoBean> selectByApid(int apId) { String sql = "select * from adpostinfo where apid=?"; return this.simpleJdbcTemplate.query(sql, ParameterizedBeanPropertyRowMapper .newInstance(AdPostInfoBean.class), apId); }//删除public int deleteByApId(int apId) { String sql = "delete from adpostinfo where apid=?"; return this.simpleJdbcTemplate.update(sql, apId); }//添加public int insert(AdPlayInfoBean adPlayInfo){String sql = "insert into adplayinfo (APID, PBID, ModifyTime, Status) values (:apId, :pbId, :modifytime, :status)";KeyHolder keyHolder = new GeneratedKeyHolder(); this.simpleJdbcTemplate.getNamedParameterJdbcOperations().update( sql, new BeanPropertySqlParameterSource(adPlayInfo), keyHolder ); return keyHolder.getKey().intValue();}//普通修改public int updateStatusByPbId(int pbId, int oldStatus, int newStatus){String sql = "update adplayinfo set Status = ? where pbId = ? and Status = ?";return this.simpleJdbcTemplate.update(sql, newStatus, pbId, oldStatus);}//批量修改public int[] update(List<AdPostInfoBean> adPostInfos) { if (adPostInfos == null) return new int[] {}; String sql = "update adpostinfo set postuser:=postuser,posttime=:posttime,poststatus=:poststatus" + " where apid=:apid and targetid=:targetid and targettype=:targettype"; return this.simpleJdbcTemplate.batchUpdate(sql, SqlParameterSourceUtils .createBatch(adPostInfos.toArray())); }//查询表数量public int getUsedRotateTime(int pbid){StringBuffer sqlbuf = new StringBuffer("select sum(Length) from ADDataRotator a"+ " join ADPlanRotator b on a.apid = b.apid"+ " join ADPlayInfo c on c.apid = b.apid where 1=1");sqlbuf.append(" and a.ADType = ").append(PlayTaskType.video);sqlbuf.append(" and c.status > 0 and b.RotatorCycle > 0 and c.PBID = ?");String sql = sqlbuf.toString();try{return this.simpleJdbcTemplate.queryForInt(sql, pbid);}catch (EmptyResultDataAccessException e) {return 0;}}