07 2019 档案
摘要:1.一个人不论做错了多少事,100次中有99次不会自责。 2.我们总是渴望赞扬,同样我们也害怕指责。 3. 塔夫脱:“我不知道我怎样做才能够和以前有所不同”。 4.我们所要纠正和指责的人总是会为他们做自我辩护,并反过来指责我们。 5.林肯:“不议论别人,别人才不会议论你。” 6.与人相处时,一定要记
阅读全文
摘要:XML的应用场景 xml把数据从html分离出来 简化数据共享 简化数据的传输 简化平台的变更 XML的优势 简单易用的标记语言 严格的格式 数据逻辑和显示逻辑分离 XML文档规则 有且只有一个根元素 元素必须合理结束 元素之间必须合理嵌套 元素的属性必须有值 XML声明 <?xml version
阅读全文
摘要:JSTL的fmt标签完成的国际化,后面使用框架提供的标签完成 实现中文、英文切换: 》提供两个超简洁,携带不同的变量值 》根据变量值确定对应的Locale对象 》把Locale对象放入到session中 》绑定Locale对应的资源文件。
阅读全文
摘要:ResourceBundle类: * ResourceBundle类用于描述一个资源包,一个资源包用于包含一组与某个本地环境相关的对象,可以从一个资源包中获取特定于本地环境的对象。对于不同的本地环境,可以有不同的ResourceBundle对象与之关联,关联的ResourceBundle对象中包含该
阅读全文
摘要:MessageFormat: 可以格式化模式字符串 模式字符串:带占位符的字符串:"Date:{0},Salary:{1}" 可以通过format方法会模式字符串进行格式化 可以更改表达格式 Date:2019-7-23,Salary:¥12,345.12 另外一种: Date:19-7-23 下午
阅读全文
摘要:NumberFormat类 * NumberFormat可以将一个数值格式化为符合某个国家地区习惯的数值字符串,也可以将符合某个国家地区习惯的数值字符串解析为对应的数值 * NumberFormat类的方法: —format方法:将一个数值格式化为符合某个国家地区习惯的数值字符串 —parse方法:
阅读全文
摘要:DateFormat类 * DateFormat类可以将一个日期/时间对象格式化为表示某个国家地区的日期/时间字符串,也可以将表示某个本地的日期/时间的字符串解析为相应的日期/时间对象 * DateFormat类定义了一些用于描述日期/时间的显示模式的int型的常量,包括FULL,LONG,MEDI
阅读全文
摘要:Locale类 * Locale实例对象代表一个特定的地理,政治或文化上的区域。 * 一个Locale对象本身不会验证它代表的语言和国家地区信息是否正确,只是向本地敏感的类提供本地信息,与国际化相关的格式化和解析任务由本地敏感的类(若JDK中的某个类在运行时需要根据Locale对象来调整其功能,这个
阅读全文
摘要:文件的下载 1)步骤: Ⅰ.设置contentType响应头:设置响应的类型是什么?通知浏览器是个下载文件 response.setContentType("appliation/x-msdownload"); Ⅱ.设置Content-Disposition响应头:通知浏览器不再有浏览器来自行处理(
阅读全文
摘要:使用fileupload组件完成文件的上传应用 1)需求: Ⅰ。上传 > 在upload.jsp页面上使用jQuery实现"新增一个附件",”删除附件“,但至少需要保留一个。 > 对文件的扩展名和文件的大小进行验证,以下的规则是可配置的,而不是写死在程序中的 >>文件的扩展名必须为.pptx,doc
阅读全文
摘要:①搭建环境 commons-fileupload.jar commons-io.jar ②基本思想 > commons-fileupload可以解析请求,得到一个FileItem对象组成的List > commons-fileupload把所有的请求信息都解析为FileItem对象。无论是一个一般的
阅读全文
摘要:进行文件上传时,表单需要做的准备: 1)请求方式POST:<form action="uploadServlet" method="post" ...> 2) 使用file表单域:<input type="file" name="file"/> 关于enctype: > application/x-
阅读全文
摘要:HttpSessionActivationListener接口 1)实现了HttpSessionBindingListener接口和Serializable接口JavaBean对象可以感知自己被活化(从硬盘中读出)和钝化(从内存中写道硬盘上)的事件 》活化:从磁盘中读取session对象 》钝化:向
阅读全文
摘要:感知Session绑定的事件监听器 * 保存在Session域中的对象可以有多种状态: 》绑定到Session中;从Session域中解除绑定;(1)随Session对象的持久化到一个存储设备中;(2)随Session对象从一个存储设备中恢复。 * Servlet定义两个接口帮助JavaBean对象
阅读全文
摘要:XXXAttributeListener 1)监听ServletContext,HttpSession,ServletRequest中添加属性,替换属性,移除属性的事件监听器。 2)以ServletRequestAttributeListener为例: 3)这三个监听器较少被使用 4)API: Se
阅读全文
摘要:利用ServletReuqestListener、HttpSessionListener以及ServletContextListener可以把request,session,application的生命周期进一步的了解 》request:是一个请求,当一个响应返回时,即被销毁,当发送一个请求时被创建
阅读全文
摘要:ServletContextListener: 1)what:监听ServletContext对象被创建或被销毁的Servlet监听器 2)how: > 创建一个实现了ServletContextListener的类,并且实现其中的两个方法 public class HelloServletCont
阅读全文
摘要:简介: 监听器:专门用于对其他对象身上发生的事件或状态改变进行监听和相应处理的对象,当被监视的对象发生情况时,立即采取相应的行动。 Servlet监听器:它用于监听web应用程序中ServletContext、HttpSession、ServletRequest等域对象的创建和销毁事件,以及监听这些
阅读全文
摘要:1.使用Filter完成一个简单的权限模型: 1)需求: ①.管理权限 > 查看某人的权限 > 修改某人的权限 ②.对访问进行权限控制:有权限则可以访问,否则提示:没有对应的权限,请返回 2)实现: ②.对访问进行权限控制: > 使用Filter进行权限的过滤:检验用户是否有权限,若有,则直接响应目
阅读全文
摘要:检测用户是否登录的过滤器: ——情景:系统中某些页面只有在正常登录后才可以使用,用户请求这些页面时要检查session中有无该用户信息,但在所有必要的页面加上session的判断相当麻烦的事情 ——解决方案:编写一个用于检测用户是否登录的过滤器,如果用户未登录,则重定向到指定的登录页面 ——要求:需
阅读全文
摘要:编写一个EncodingFilter 1.读取web.xml文件中配置的当前WEB应用的初始化参数encoding 2.指定请求的字符编码为1读取到的编码 3.调用chain.doFilter()方法"放行"请求 web.xml
阅读全文
摘要:使用浏览器不缓存页面的浏览器: 有3个HTTP响应头字段都可以禁止浏览器缓存当前页面, 以下代码写道HttpFilter的子类中的doFilter()方法。 response.setDataHeader("Expires",-1); response.setHeader("Cache-Control
阅读全文
摘要:<dispatcher>元素: 指定过滤器所拦截的资源被Servlet容器调用的方式。可以是REQUEST,INCLUDE和ERROR之一,默认REQUEST. 可以设置多个<dispatcher>子元素用来指定Filter对资源的多种调用方式进行拦截 <1>REQUEST:当用户直接访问页面时,W
阅读全文
摘要:package com.demo.filter; import javax.servlet.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; /** * 自定义HttpFilter,实现Filt...
阅读全文
摘要:1.创建两个Filter过滤器UserNameFilter/PassWordFilter 2.进行Filter的注册和配置 3.Filter初始化参数和web应用的初始化参数 4.在Filter中完成信息比较 实现效果: 实现代码: UserNameFilter PassWordFilter web
阅读全文
摘要:1.Filter(过滤器)简介 Filter的基本功能是对Servlet容器调用Servlet的过程进行拦截,从而在Servlet进行响应处理的前后实现一些特殊的功能。 Filter程序:Filter,FilterChain,FilterConfig Filter程序是一个实现了Filter接口的J
阅读全文
摘要:URL操作 JSTL包含三个与URL操作有关的标签,分别是:<c:import><c:redirect><c:url>.主要的功能是:用来将其他文件的内容包装起来、网页的导向,还有url的产生。 <c:import> <c:import>可以把其他静态或动态文件包含至本身JSP网页,它和JSP Ac
阅读全文
摘要:迭代操作 <c:forEach>:可以对数组,collection,map进行遍历,begin(对于集合begin从0开始算),end,step <c:forEach>为循环控制,它可以将集合(collection)中的成员循序浏览一遍。运作方式为当条件符合时,就会持续重复执行<c: forEach
阅读全文
摘要:流程控制: <c: if><c: choose><c: when><c: otherwise> <c: if>:没有else,但可以把判断的结果储存起来,以备之后使用 <c: if test="${param.age > 18}" var="isAdult" scope="request"></c:
阅读全文
摘要:1.安装jstl -导两个jar包 -在jsp页面上导入 2.JSTL表达式操作分类: out set remove catch if choose when otherwise forEach forTokens Import param url redirect 一、表达式操作: <c: out
阅读全文
摘要:EL自定义函数 —在EL自定义函数:在EL表达式中调用的某个Java类的静态方法,这个静态方法需在WEB应用程序中进行配置可以被EL表达式调用。 —EL自定义函数可以扩展EL表达式的功能,让EL表达式完成普通Java程序代码所能完成的功能。
阅读全文
摘要:1.开发有父标签的标签: 1)父标签无法获取子标签的引用,父标签仅把子标签作为标签体来使用 2)子标签可以通过getParent()方法获取父标签的引用(需继承SimpleTagSupport或自实现SimpleTag接口的该方法): 若子标签的确有父标签,JSP引擎会把代表父标签的引用通过setP
阅读全文
摘要:1.带标签体的自定义标签 1)若一个标签有标签体: 在自定义标签的标签处理器中使用JspFragment对象封装标签体信息 2)若配置了标签含有标签体,则JSP引擎会调用setJspBody()方法把JspFragment传递给标签处理器类。 在SimpleTagSupport中还定义了一个getJ
阅读全文
摘要:练习一:<max:num1="" num2=""/> <petrelsky:maxTagDemo num1="23" num2="35"> 练习二:定制一个带有一个属性的标签<xxx:readFile src="">用于输出指定文件的内容 <petrelsky:readFileTagDemo src
阅读全文
摘要:1)setJspContext:一定会被JSP引擎所调用,先于doTag,把代表JSP引擎的pageContext传给标签处理器类 2)带属性的自定义标签 <1>先在标签处理器类中定义setter方法,建议把所有的属性类型都设置为String类型。 <2>在tld描述文件中来描述属性: <3>在页面
阅读全文
摘要:传统标签和简单标签 可发自定义标签,其核心就是编写处理器类,一个标签对应一个标签处理器类,而一个标签库则是很多标签处理器的集合。所有标签处理器类都要实现JspTag接口,该接口没有定义任何方法,主要作为Tag和SimpleTag接口的父接口。 在JSP2.0以前,所有标签处理器类都必须实现Tag接口
阅读全文
摘要:11个隐含对象(Implicit Object)分为三类: 1.与范围有关的隐含对象 applicationScope sessionScope requestScope pageScope 2.与输入有关的隐含对象 param paramValues 3.其他隐含对象 cookie header
阅读全文
摘要:EL简介: EL全名为Expression Language,它原本是JSTL1.0为方便存取数据所自定义的语言,当时EL只能在JSTL标签中使用, <c:out value="${3+7}"> 程序执行结果为10,但是你却不能直接在JSP网页中使用: <p>Hi! ${username}</p>
阅读全文
摘要:JavaBean: 用作JavaBean的类必须具有一个公共的、无参的构造方法。 JavaBean的属性是以方法定义的形式出现的 属性修改器必须以小写的set前缀开始,后跟属性名,且属性名的第一个字母要改为大写。例如:nickName属性修改器名称为setNickName。 属性访问器通常以小写的g
阅读全文
摘要:使用HttpSession实现验证码 1)基本原理:和表单重复提交一致: >在原表单页面,生成一个验证码的图片,生成图片的同时,需要把该图片中的字符串放入session中。 >在原表单页面,定义一个文本域,用于输入验证码。 提交到servlet >在目标的Servlet中:获取session和表单域
阅读全文
摘要:表单的重复提交 1)重复提交的情况 1>在表单提交到一个Servlet,而Servlet又通过请求转发的方式响应了一个JSP(HTML)页面,此时地址栏还保留着Servlet的那个路径,在响应页面点击“刷新”。 2>在响应页面没有到达时重复点击“提交按钮” 3>点击“返回”,再点击“提交” 2)不是
阅读全文
摘要:绝对路径的问题: 1)开发时建议编写“绝对路径”:写绝对路径肯定没有问题,但写相对路径却可能会有问题。 在由Servlet转发到JSP页面时,此时浏览器地址栏上显示的是Servlet的路径,而若JSP页面的超链接还是相对于该JSP页面的地址,则可能会出现路径混乱的问题 /a.jsp -path /b
阅读全文
摘要:step1.jsp step1.jsp效果图: Step1Servlet Step2.jsp step2.jsp效果图 Step2Servlet submit.jsp submit.jsp效果图 层级关系:
阅读全文
摘要:Servlet规范引入了一种补充的会话管理机制,它允许不支持Cookie的浏览器也可以与WEB服务器保持连续的会话 有会话标识号以参数形式附加在超链接的URL地址后面的技术称为URL重写 HttpServletResponse接口中定义了两个用于完成URL重写的方法: 》encodeURL方法 》e
阅读全文
摘要:HttpSession接口中方法 getId() getCreationTime() getLastAccessedTime() setMaxInactiveInterval() getMaxInactiveInterval() isNew():如果客户端请求消息中返回了一个与Servlet程序当前
阅读全文
摘要:Session机制: session机制采用的是在服务器端保持HTTP状态信息的方案 如果需要创建session时,首先去在这个请求搜索session,如果有,不会去创建session,如果没有会去创建一个session 保存session id的几种方式: 保存session id的方式可以采用c
阅读全文
摘要:设置Cookie的作用范围 cookie.setPath(request.getContextPath());//——>/项目名 cookie的作用范围:可以作用当前目录和当前目录的子目录,但不能作用于当前目录的上一级目录。 可以通过setPath方法来设置Cookie的作用范围,其中/代表站点的根
阅读全文
摘要:books.jsp book.jsp 效果图:
阅读全文
摘要:会话和会话状态 WEB应用中的会话是指一个客户端浏览器与WEB服务器之间连续发生的一系列请求和响应过程。 WEB应用的会话状态是指WEB服务器与浏览器在会话过程中产生的状态信息,借助会话状态,WEB服务器能够把属于同一会话中的一系列的请求和响应过程关联起来。 如何实现有状态的会话: 需要浏览器对其发
阅读全文
摘要:深入理解面向接口编程:在类中调用接口的方法,而不必关心具体的实现。这将有利于代码的解耦。使程序有更好的可移植性和可扩展性 1)动态修改Customer的存储方式:通过修改类路径下的switch.properties文件的方式来实现 2)CustomerServlet中不能在通过private Cus
阅读全文
摘要:修改: ——先显示(SELECT操作)修改的页面,在进行修改(update) ——显示修改页面 Update的超链接:<a href="edit.do?id=<%=customer.getId()%>"> edit方法:获取id,调用CustomerDAO的方法获取id对应的Customer对象 J
阅读全文
摘要:步骤: 1.编写query.jsp代码 2.delete.do
阅读全文
摘要:页面使用重定向可以避免表单的重复提交问题 如果页面中需要使用域对象中的属性,必须使用转发。此外都使用重定向。 逻辑关系: 点击超链——>add.jsp(接收meg信息,接收参数的值)——>add.do(判断用户名是否存在)——存在(放入meg信息到request域中)——>add.jsp ——不存在
阅读全文
摘要:模糊查询: ——根据传入的name,password属性列进行查询 ——需要在CustomerDAO接口中定义一个getForListWithCriteriaCustomer(CriteriaCustomer cc). 其中CriteriaCustomer用于封装查询条件:name,address,
阅读全文
摘要:方法一: CustomerServlet JSP代码 注册servlet代码: 问题: 1.当添加一个请求时,需要在Servlet中修改两处的代码:switch、添加方法 2.url中使用method=xxx暴漏了要调用的方法,不私密,有安全隐患。 方法二: CustomerServlet web.
阅读全文
摘要:要求一:加入C3P0数据源 ——C3P0 ——数据库驱动的jar包 1.首先在src目录下创建c3p0的配置文件c3p0-config.xml 2.创建一个JdbcUtil类,创建一个c3p0连接池,并且创建连接,销毁连接。 3.可以创建一个测试类来测试,第一个测试是否可以获取一个连接。 要求二:编
阅读全文
摘要:1.最常用配置 1.initialPoolSize: 连接池初始化时创建的连接数,default : 3(建议使用) 2.minPoolSize: 连接池保持的最小连接数,default : 3(建议使用) 3.maxPoolSize: 连接池中拥有的最大连接数,如果获得新连接时,连接总数超过这个
阅读全文
摘要:流程图 student.java studentDAO servlet 1.listallstudents 2.deleteservlet 页面跳转: 1.链接页面: 2.查询页面: 3.删除页面: 结果图: 数据库:
阅读全文
摘要:MVC案例 ——没有业务层,直接由Servlet调用DAO,所以也没有事务操作。所以可以在DAO中直接获取Connection对象 ——采取MVC设计模式 ——使用到的技术 MVC设计模式:JSP,Servlet,POJO 数据库使用MysSQL 连接数据库需要使用C3P0数据库连接池 JDBC工具
阅读全文

浙公网安备 33010602011771号