发表于: 2018-01-13 23:25:07
1 625
今天完成的事情:
分页:
工具类PageBean(省略getter/setter):
service层的分页查询方法:
dao的xml文件:
jsp对应部分:
ps: 这里有个坑 select count(*) FROM `students` 例如count这类函数 后面千万要紧跟(),不能留空格。
在这里贴下小知识点:
Mysql limit分页语句用法
--语法:
SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset
--举例:
select * from table limit 5; --返回前5行
select * from table limit 0,5; --同上,返回前5行
select * from table limit 5,10; --返回6-15行
select * from table limit 10,-1; --返回11行后所有行数
如何优化limit
当一个查询语句偏移量offset很大的时候,如select * from table limit 10000,10 , 最好不要直接使用limit,而是先获取到offset的id后,再直接使用limit size来获取数据。效果会好很多。
如:
select * From customers Where customer_id >=(
select customer_id From customers Order By customer_id limit 10000,1
) limit 10;
MS SqlServer TOP子句
语法:
SELECT TOP number|percent column_name(s) FROM table_name;
举例:
1. 选取表中前2条记录
select top 2 * from table;
2. 选取表中50%的记录
select top 50 persent from table;
3. 从数据库中检索第10—20条记录
复制代码
SELECT TOP 10 *
FROM TestTable
WHERE (ID NOT IN
(SELECT TOP 20 id
FROM TestTable
ORDER BY id))
ORDER BY ID;
2.尝试对异常进行了处理:
@ControllerAdvice标签的使用
这个地方也非常非常地坑,因为涉及到REST接口,POST和PUT方法需要特殊配置。所以如果拿ExceptionHandler接收异常并且直接回显页面的话,就会导致HTTP 405错误!如下:
HTTP Status 405 - JSPs only permit GET POST or HEAD.
突然想起来,之前在测试RESTful风格的URL时,在web.xml配置了HiddenHttpMethodFilter
转换成了DELETE请求方式,但是我处理了结果后,
需要forword到success.jsp,
然后就出现了405,然后也是:
HTTP Status 405 - JSPs only permit GET POST or HEAD.
初步认定是使用了filter把POST变成了DELETE,
然后spingmvc还是使用DELETE方式请求的success.jsp
所以不能直接回显一个视图,要返回JSON对象,然后拿到前端去装配:
因为时间比较晚了,没有继续学下去....
今天学的比较杂,主要是踩各种坑,估计明天就能把本地部署这块做完了吧。
明天计划的事情:继续任务2
遇到的问题:JSON不会.....明天继续学
收获:对REST接口更加了解了 也学到了一些新知识点
评论