笔记 JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用 Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序JDBC 的使用要通过四个步骤 1.加载驱动Class.forName("com.mysql.jdbc.Driver"); 2.获得连接 Connectionconn = DriverManager.getConnection("jdbc:mysql://localhost:3306(固定语句)/web_test3(连接到的数据库名称)","root(用户名)", "abc(密码)");
3.基本操作:执行SQL 3.1编写sql语句 3.2预编译 3.3执行语句 4。释放资源
servletcontext域(application域) 1)作用域的实际大小。(是什么?) servletcontext域起作用的范围是:整个web应用程序。 数据产生之后,不仅等会还要用 ,还要给别人用,则请使用servletcontext。 它是四个域中范围最大的域。 2) 作用域的作用。(有什么用?) 由于一个web应用中的所有servlet共享同一个servletcontext对象,所以多个servlet通过servletcontext对象实现了数据在不同servlet之间的共享。 3)它这样使用实现的原理或优缺点。(为什么可以这么用?) servlet并不适合做数据输出,故需要将数据转发给JSP文件进行美化再输出给客户端。 JSP中可嵌入java代码,这使得它接收java数据变得可能。同时,由于servletcontext域可使整个web应用共享该数据,因此而带来“线程安全”问题同样影响对转发的数据,故而需要使用request域。 Httpsession域(session域) 1)作用域的实际大小。(是什么?) Httpsession的作用域是:一次会话。 数据产生之后显示给用户了,等会还要使用的情况下使用Httpsession域。 它是四个域中范围第二大的域。 2) 作用域的作用。(有什么用?) (会话范围)在第一次调用request.getSession()方法时,服务器会检查是否已经有对应的session。如果没有,就在内存中创建一个session并返回。当一短时间内(默认30分钟)session没有被使用,则服务器会销毁该session。若服务器非正常关闭,未到期的session也会跟着销毁。若调用session提供的invalidate()方法,可以立即销毁session。 ServletRequest域(request域) 1)作用域的实际大小。(是什么?) ServletRequset域是:整个请求链(请求转发也存在)。 数据产生之后,只需要使用一次,这种情况下请使用ServletRequset域。 它是四个域中范围排第三的域。 2) 作用域的作用。(有什么用?) 在整个请求链中共享数据。 最常用到:在servlet中处理好的数据交给JSP显示,此时参数就可以放置在ServletRequset域中带过去。 3)它这样使用实现的原理。(为什么可以这么用?) 在service方法调用前由服务器创建,传入service方法。整个请求结束,request生命结束 常见的会话技术: * Cookie :将数据保存到客户端浏览器. * Session :将数据保存到服务器端. Cookie本身是有大小和个数的限制.Session没有限制.Cookie的数据保存在客户端,Session数据保存在服务器端. session 的几个方法: HttpSession session = request.getSession(); session.setAttribute(String name,Object value); Object vlaue = session.getAttribute(String name);removeAttribute(String name); public Object getAttribute(String name)返回与此会话中的指定名称绑定在一起的对象,如果没有对象绑定在该名称下,则返回 null public void setAttribute(String name, Object value)使用指定名称将对象绑定到此会话。如果具有同样名称的对象已经绑定到该会话,则替换该对象 public java.util.Enumeration<E> getAttributeNames()返回包含绑定到此会话的所有对象的名称的 String 对象的 Enumeration 范围:一次会话(根本原因:存SesssionID的cookie默认是会话级别的) 配置sessionion过期时间:web.xml <session-config>
<session-timeout>5</session-timeout> <!--单位是分钟-->
</session-config>session何时创建和销毁?作用范围: * 创建:服务器端第一次调用getSession()创建session. * 销毁:三种情况销毁session: *1.session过期. 默认过期时间为30分钟. * 2.非正常关闭服务器.如果正常关闭session序列化到硬盘. *3.手动调用 session.invalidate(); JSP jsp: Java Server Pages(Java服务器端的页面) JSP = HTML + Java代码 + JSP自身的东西 注释 : ctrl+shift+/ H TML的注释 :<!-- 注释 --> Java代码的注释 :// 单行注释 /多行注释/ /** 文档注释 */ JSP的注释 :<%-- JSP的注释 --%> 三大指令: page 指令, include指令, taglib指令 page: 设置 JSP的属性 include:设置包含其他页面 taglib:指示JSP引入标签库 language :JSP脚本中使用的语言.现在只能写java. contentType :设置浏览器打开这个JSP的时候采用的默认的字符集的编码. pageEncoding :设置文件保存到本地硬盘,以及生成Servlet后,Servlet保存到硬盘上的编码. import :在JSP中引入类对象.但是import可以出现多次. extends :设置JSP翻译成Servlet后继承的类,默认值:org.apache.jasper.runtime.HttpJspBase,这个值要想修改,这个类必须是HttpServlet的子类 autoFlush :设置JSP的缓存自动刷出.true:自动刷出. buffer :设置JSP的缓冲区的大小,默认8kb. session :设置在JSP中是否可以直接使用session对象.默认值是true. isELIgnored :设置在JSP中是否忽略EL表达式.默认值是false不忽略. errorPage :设置错误友好页面的提示. isErrorPage :通过这个设置显示JSP的错误信息. 全局错误友好页面的配置:
<error-page>
<error-code>404</error-code>
<location>/404.jsp</location>
</error-page>
<error-page>
<error-code>500</error-code>
<location>/500.jsp</location>
</error-page>include指令 可以引入其他页面 <%@ include file="路径" %> request HttpServletRequest getParameter(), setAttribute(Stringname,Object value); response HttpServletResponse setHeader(String name,Stringvalue);getOutputStream() session HttpSession setAttribute(); getAttribute(); application ServletContext setAttribute(); getAttribute(); page Object toString(); wait(); pageContext PageContext setAttribute() ;getAttribute(); config ServletConfig getServletName() ; getServletContext(); out JspWriter write(),print(); exception Throwable getMessage(), getCause(); 动作标签:<jsp:forward /> :用于页面的转 <jsp:include /> :动态包含 <jsp:param /> :用于带有路径的标签下,传递参数. <jsp:useBean /> :用于在JSP中使用JavaBean. <jsp:setProperty /> :用于在JSP中向JavaBean设置属性的. <jsp:getProperty /> :用于在JSP中获得JavaBean的属性. 静态包含和动态包含的区别静态包含:相当于源代码的拷贝,只会翻译成一个Java类,有一个执行结果 动态包含:各自分别去翻译,各自执行,最终包含的是
|