码迷,mamicode.com
首页 > 编程语言 > 详细

javaweb笔记—04(预编译和泛型)

时间:2017-08-05 20:35:19      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:等于   出错   后台   lag   有一个   set   处理异常   总结   数据库驱动   

预编译:ps对象
1.ps可进行预编译,占位符传值,性能高于sta的(数据库驱动层有优化)
2.比较灵活,数据库将预编译的SQL缓存了,第二次访问,就不用预编译,直接执行。
3.较为安全,不会发生SQL注入。
4.简单,不用拼接SQL,少出错。

SQL注入; select * from user where name = ‘"+name+"‘ or 1=1
and pwd = ‘"+pwd+"‘ or 1=1;

5.把结果集中的数据放到list集合中的方法
while(rs.next()) {
 Book book = new Book(rs.getInt("id"), rs.getString("name"), rs.getString("author"), rs.getFloat("price"));
 list.add(book);
}
总结:当结果集是一个对象时,用if遍历,当结果集为多个对象时,用while
遍历。


6.分页笔记,分页时在后台有一个转换,npage;异常的话 npage = 1:跳转到第一页
,因为,有人可能在地址栏搞乱,比如给:nowPage = "搞乱字符串";
npage的赋值就会出现异常,而跳转到第一业,所以要有一个npage的转换

加npage的转换处理了两个问题:
第一个:在nowPage = 0时,会出现异常,它就能处理异常
第二个:就是上边说的,有人在地址栏的捣乱,输入字符串。

分页时后台要判断,如果当前页nowPage = 0;那么让当前页赋值等于1;

如果


7.
 泛型类:具有一个或者多个类型(类形式)变量的类,Pager是具有一个类型变量的类。一个类在另一个类中做变量
 * 类型变量可以指定方法的返回类型以及域和局部变量的类型。
 * 方法返回:public T getPager() {}
 * 域:Pager<T, U>:第一个域和第二个域使用不同的类型
 * 局部变量类型: public void setPager(T t) {
 *     this.t = t;
 *  }

 

8.得到pageData的SQL
select top "+pageSize+" * from book where id not in (select top "+flag+" id from book)

javaweb笔记—04(预编译和泛型)

标签:等于   出错   后台   lag   有一个   set   处理异常   总结   数据库驱动   

原文地址:http://www.cnblogs.com/StephenChowcai/p/7291240.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!