事务的四个特性:
原子性(atomicity)。一个事务是一个不可分割的工作单位,事务中包括的诸操作要么都做,要么都不做。
一致性(consistency)。事务必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。
隔离性(isolation)。一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。
持久性(durability)。持久性也称永久性(permanence),指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其有任何影响。
servlet和jsp的异同:
相同点:都是Servlet的执行的方式,同样都有声明周期。
不同点:
Servlet:
1、继承的是HttpServlet。
2、Servlet设计的初衷是为了控制层操作。
JSP
1、继承的是HttpJspBase。
2、JSP设计作用是视图层展示。
3、JSP的本质就是一个Servlet。
转发和重定向的区别:
1、转发是服务器行为,重定向是客户端行为
2、转发是一次请求可以携带参数,重定向是两次请求,互不干扰所以不能携带参数。
3、转发浏览器的URL不变,重定向因为通知客户端重新访问,所以地址栏发生变化。
4、转发是一次请求,访问快、重定向是两次请求,相比慢一些。
转发:
request.getRequestDispatcher(“地址”).forward(request, response);
重定向:
response.sendRedirect(“地址”);
cookie和session的异同:
Cookie是客户端会话技术、默认生命周期是关闭浏览器,可以手动设置时间。数据保存至客户端本地,减少服务器压力。
Session是服务端会话技术,数据保存在服务器中。默认时间为30分钟或者关闭服务器。因为数据在服务器中所以是安全的
session会话工作原理:
会话技术是指当前session服务器对象能够实现会话的一种技术。原理是session创建的时候会产生一个JSESSIONID这个ID会直接通过服务器发送客户端并保存至客户端的cookie中,之后每次客户端请求都会携带这个JSESSIONID,如果未携带这个值,可能浏览器已经关闭重启,那么服务器会重新创建一个新的JSESSIONID发送给客户端,这样就完成了一次会话。