JSP是嵌入了Java代码的HTML网页;
Servlet是嵌入了HTML内容的Java类。
JSP网页执行前所自动形成的JSP实现类实际上就是一个Servlet,Servlet是JSP的基础。
Servlet返回内容包含汉字时,应将“text/html”改为“text/html;charset=gb2312”或调用resp.setCharacterEncoding("gb2312")。
Servlet线程是不安全的,解决策略:
①用局部变量保存请求中的专有数据
②用Servlet成员变量保存那些在doPost()等方法体内不会改变的数据
③同步访问那些可能被修改的成员变量 将成员变量的代码放到synchronized(this){...}语句块中,但这种方法会降低性能
④将访问外部资源的代码放在synchronized方法体内
由于HTTP协议是无状态协议,在多个相关请求之间并不能保持其连续性。这必将导致服务器无法判断多个请求是否来自同一个客户端。为了解决这个问题,在web应用中会话概念。
会话是一个客户端的连续多个服务请求。web应用应该对这些请求之间共享信息,并保证他们的连贯性。
实现会话管理的方法:
①URL重写
②Cookie
③隐藏表单域
④HttpSession对象
JDBC API:在java.sql包中主要提供了以下接口
①DriverManager 此类用于加载和卸载各种驱动程序并建立数据库的连接
②Connection 此接口表示与数据库的连接
③Statement 此接口用于执行SQL语句并将数据检索到ResultSet中
④PreparedStatement 此接口用于执行预编译的SQL语句
⑤CallableStatement 用于执行存储过程
访问数据库的步骤
①加载驱动程序:Class.forName()方法
②连接数据库:DriverManager.getConnection()方法
③通过Statement执行SQL语句(包括select、insert、update和delete语句)
④如果执行select语句,通过ResultSet获取结果,并处理查询结果
事务是指数据库从一个稳定状态变化到另一个稳定状态的一系列操作。“稳定状态”是指数据库数据完整性没有遭到破坏的状态。