左耳听风 第三十六周
每周完成一个ARTS: 每周至少做一个 leetcode 的算法题、阅读并点评至少一篇英文技术文章、学习至少一个技术技巧、分享一篇有观点和思考的技术文章。(也就是 Algorithm、Review、Tip、Share 简称ARTS)
Algorithm
继续按顺序来完成「LeetCode」前 200 题,以下为个人题解:
review
Am I a “real” Software Engineer yet? 「我真的是一个软件工程师吗?」
作者讲述了自己开始自学编程,做出项目,找到工作却在这个过程中不断遭受「不是一个真正的软件工程师」的质疑,最终找到了自己想要的答案,继续从事编程的故事。
谁呢说清楚「软件工程师」的真正定义呢?是要能够独立做出一个项目?还是需要找到一份软件工程师的工作?还是一定要获得软件工程学位证书,学会各种高大上的技术,在软件行业从事几十年呢?
对于你编程能力的成长来说,这些并没有多大的意义。而且在你从一个菜鸟码农成长为一个能够编程大牛前,会遇到更多的质疑,甚至更多的是 你对自己能力的质疑。
回应别人的质疑的最好答案就是将恐惧、不安转化为你更为努力的动力,努力的学习你工作中所缺乏的知识,通过编程去解决问题(或者更好的解决问题),获得成长,这才是面对问题的正确态度。不要轻易给自己的人生设限,你能够做的更好。
Tip
基于 MySQL 数据库提供的限制语句 limit arg1,arg (参数1「arg1」代表查询结果的起始索引限制,参数2「arg2」代表对查询结果数量限制),实现分页功能
参考代码
public List<Hero> findByPage(int start,String row){
// sql 语句
String sql = "SELECT name,role_main,attack_range,hp_growth FROM heros limit " + start + "," + row;
// 通过 BeanPropertyRowMapper 将查询结果封装成 heros 集合
List<Hero> heroes = template.query(sql, new BeanPropertyRowMapper<>(Hero.class));
// 返回查询的分页结果
return heroes;
}
前端只需要将对应的页号以及默认每页所显示的行数发送给后端即可。
SQL语句中的 起始索引 start = (页号-1)*行数。(索引从 0 开始,页号从 1 开始)
行数与前端传递一致
总页数为:查询总数/行数(若能整除不变否则再 +1)
share
根据最近学习的 HTTP 方面的基础知识整理成了文章。初探 HTTP