Java面试题(四)连接池与cookie

   博主马上要面对几家公司的面试,故自己准备了点面试题,仅供参考!

1,你知道的连接池有哪几些?
答:c3p0,dbcp与druid 三大连接池
DBCP:是一个依赖commons-pool对象池机制的数据库连接池.
DBCP可以直接的在应用程序中使用,Tomcat的数据源使用的就是DBCP。
c3p0:是一个开放源代码的JDBC连接池。
druid:阿里出品,淘宝和支付宝专用数据库连接池,但它不仅仅是一个数据库连接池,它还包含一个
ProxyDriver,一系列内置的JDBC组件库,一个 SQL Parser。支持所有JDBC兼容的数据库
具体配置:
https://www.cnblogs.com/xiaoxiaoyisheng/p/7526869.html

什么是SQL注入攻击?
拼接sql语句,来实现。比如:where userName='' and passowrd='' || 1=1;
在jdbc中,用PreparedStatement,可以避免。
 
 
jsp:
服务器将创建一个cookie,将sessionid放入cookie中,
以名称为"JSESSIONID",值为真实的32位长度的sessionid。

servlet,可以自已创建cookie,再响应回客户端。
Cookie cookie=new Cookie("aa","bb");
response.addCookie(cookie);
-----
cookie的路径问题。同路径下可以共享cookie
cookie.setPath决定了什么?
Cookie cookie=new Cookie("aa","bb");
cookie.setPath(request.getContextPath()+"/aaa/bbb");
cookie.setMaxAge(-60);
response.addCookie(cookie);
获取cookie.注意路径
Cookie[] cs = request.getCookies();
什么是cookie?为什么要用cookie?
cookie是由服务器发送给客户端(浏览器)的小量信息
---
getSession参数false或true时的区别?
request.getSession(false)
为false时,没有就不创建这个session对象,如果有就拿来用。
为true时,没有就创建新的,有就引用之前的。
没有参数时,同为true时一样。
cookie 和session 的区别?
cookie在客户端,大小限制为4K,但是cookie有安全隐患,
session在服务器端。当访问较多,会占用服务器资源。但session是安全的。
所以安全信息放在session中。
posted @ 2018-09-06 19:40  不会飞的云930  阅读(808)  评论(0编辑  收藏  举报