public List getAttachs(final int userId){
String sql = "SELECT post_id,post_attach FROM t_post where user_id =? and post_attach is not null";
return getJdbcTemplate().query(
sql,new Object[] {userId},
new RowMapper() {
public Object mapRow(ResultSet rs, int rowNum) throws SQLException {
Post post = new Post();
int postId = rs.getInt(1);
byte[] attach = lobHandler.getBlobAsBytes(rs, 2);
post.setPostId(postId);
post.setPostAttach(attach);
return post;
高性能 MySQL(六):索引类型
索引(Index)是存储引擎用于快速找到记录的一种数据结构,在 MySQL 中也被叫做键(Key)。索引对于良好的性能非常关键。尤其是当表中的数据量越来越大时,索引对性能的影响愈发重要。
索引是对查询性能优化最有效的手段,能够轻易地将查询性能提高几个数量级。索引也有多种类型,而选择“最优”的索引有时比“最好”的索引性能要好两个数量级,这通常需要重写查询。
索引有很多种类型,可以为不同的场景提供更好的性能。索引位于存储引擎层,不同存储引擎中索引的工作方式也并不一样,也不是所有存储引擎都支持所有类型的索引。即使多个存储引擎支持同一种类型的索引,其底层的实现也可能不同。