摘要:
排序应用 应用广泛:一旦建立数据库后,就可能根据某些需求对它进行排序。比如,对员工按工资排序,对学生按年级排序,对商品按价格排序,对城市按人口增长率排序,对国家按GDP排序,以及对恒星按大小排序。 重要性:由于排序非常重要而且可能非常耗时,所以它已经成为计算机科学中一个被广泛研究的课题。 排序的稳定
阅读全文
posted @ 2018-12-27 23:52
zhuangrunwei
阅读(504)
推荐(0)
摘要:
二分查找可应用于有序数组 3的2次方等于9,以3为底9的对数是2;计算器log(9)/log(3)=
阅读全文
posted @ 2018-12-27 19:27
zhuangrunwei
阅读(301)
推荐(0)
摘要:
Vector源码分析 public class Vector<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.Serializable { // 底层数组 protected Object
阅读全文
posted @ 2018-12-27 19:18
zhuangrunwei
阅读(149)
推荐(0)
摘要:
数组 数组 数组类型 不可重复 无序(线性查找) 可重复(找到第一个即可) 无序(线性查找) 不可重复 有序(二分查找) 可重复(找到第一个即可) 有序(二分查找) 插入 O(N) O(1) O(logN+N) O(logN+N) 查询 O(N) O(N) O(logN) O(logN) 删除(无洞
阅读全文
posted @ 2018-12-27 17:41
zhuangrunwei
阅读(1269)
推荐(0)
摘要:
概念 抽象数据类型(ADT),脱离具体实现定义数据结构,它的定义着重于做什么,而忽略怎么做 举例 列表、栈、队列 列表 列表,也叫线性表 抽象定义:数据项线性排列,可以插入某一项,删除某一项,读取某一项 栈、队列、优先级队列 抽象定义:访问是受限制的,在某一时刻只有某一个特定的数据项可以被读取或删除
阅读全文
posted @ 2018-12-25 19:14
zhuangrunwei
阅读(522)
推荐(0)
摘要:
JDK动态代理源码 一、public static Object newProxyInstance ——> 调用下面这个方法二、Class<?> cl = getProxyClass0(loader, intfs); ——> 这个方法从下面这个缓存对象中返回代理类Class对象三、return pr
阅读全文
posted @ 2018-12-24 23:46
zhuangrunwei
阅读(616)
推荐(0)
摘要:
面向控制台的计算器一 package com.test.java.features1; import java.util.Scanner; /** * 计算器类 */ public class ComputingCounter { public static void main(String[] a
阅读全文
posted @ 2018-12-18 16:10
zhuangrunwei
阅读(772)
推荐(0)
摘要:
1、打开IntelliJ IDEA 2、选择 "File" 菜单 3、找到 "other settings" 4、选择 “Structure for new Projects” 并设置
阅读全文
posted @ 2018-12-13 22:06
zhuangrunwei
阅读(459)
推荐(0)
摘要:
超类: 子类: 运行结果分析: 1、加载main方法所在的B类,但B类继承了A类,所以在加载B类前先加载A类。 2、加载B类 3、运行main方法,输出start字符串 4、调用构造方法创建B类的对象,但因为B类有父类,所以先调用父类A类的构造方法,但在调用A类的构造方法前要先调用A类的动态方法。
阅读全文
posted @ 2018-12-12 18:05
zhuangrunwei
阅读(681)
推荐(0)
摘要:
<c:set>标签 index.jsp 测试:http://127.0.0.1/index.jsp 响应: BeiJing {Mike=18, Tom=40, Jim=30} {Mike=31, Tom=40, Jim=30} <c:out>标签 示范: 你也许会想这有什么意思?为什么不直接写: 1
阅读全文
posted @ 2018-12-08 18:45
zhuangrunwei
阅读(1472)
推荐(0)
摘要:
<c:redirect>重定向标签 相当于HttpServletResponse的sendRedirect()方法。 <%@page contentType="text/html" pageEncoding="UTF-8" %> <%@taglib prefix="c" uri="http://ja
阅读全文
posted @ 2018-12-08 18:13
zhuangrunwei
阅读(947)
推荐(0)
摘要:
<c:catch>标签 Demo: 错误发生时,不转发至其他网页来显示错误信息,而在当前网页捕捉异常,并显示相关信息。 测试:http://127.0.0.1/index.jsp?a=8&b=p 响应: 8 + p = For input string: "p" java.lang.NumberFo
阅读全文
posted @ 2018-12-08 17:06
zhuangrunwei
阅读(387)
推荐(0)
摘要:
JSTL环境 JSTL是另一个标准规范,并非在JSP的规范中,所以必须另外下载JSTL实现。 要使用JSTL标签库,必须在JSP网页上使用taglib指示元素定义前置名称与uri参考。例如,引入JSTL1.1核心标签库: JSTL分类 JSTL提供的标签库分为五个大类。 1、核心标签库:提供条件判断
阅读全文
posted @ 2018-12-08 16:11
zhuangrunwei
阅读(338)
推荐(0)
摘要:
EL表达式 1、作用 在JSP中取得作用域、请求、标头与Cookie里的值,以及做一些简单的运算或判断。 2、环境 直接编写。 可以使用page指示元素的isELIgnored属性(默认是false),来设置JSP网页是否使用EL。也可以在web.xml中设置<el-ignored>标签为true来
阅读全文
posted @ 2018-12-07 21:18
zhuangrunwei
阅读(155)
推荐(0)
摘要:
<jsp:useBean>标签 会调用java对象的无参构造方法,来创建实例。 <jsp:useBean>标签是用来搭配JavaBean元件的标准标签,这里指的JavaBean是满足以下条件的Java对象: 1、必须实现java.io.Serializable接口 2、具有无参数的构造器 3、没有公
阅读全文
posted @ 2018-12-07 13:58
zhuangrunwei
阅读(1904)
推荐(0)
摘要:
使用方法 标准标签在jsp页面直接编写即可,因为标准标签是JSP规范提供的,所有容器都支持。 被替代性 标准标签的许多功能都可以被JSTL与EL表达式语言所替代。 作用 标准标签可协助编写JSP时减少Scriptlet的使用。 语法 所有标准标签都使用jsp:作为前缀。 标准标签<jsp:inclu
阅读全文
posted @ 2018-12-07 13:24
zhuangrunwei
阅读(364)
推荐(0)
摘要:
隐式对象使用位置 隐式对象在转译为Servlet后,是_jspService()中的局部变量。隐式对象只能在<%与%>之间,或<%=与%>之间直接使用。 无法在<%!与%>之间直接使用隐式对象;但可以给它传递进去,比如: <%@page contentType="text/html" pageEnc
阅读全文
posted @ 2018-12-07 01:22
zhuangrunwei
阅读(486)
推荐(0)
摘要:
声明元素 <%! 类成员声明或方法声明 %> 在声明元素中编写的代码,将转译为Servlet中的类成员或方法。 重新定义jspInit()方法,或是在jspDestroy(),就是在声明元素中编写。 使用声明元素声明变量,必须小心数据共享与线程安全的问题。因为容器默认会使用同一个Servlet实例来
阅读全文
posted @ 2018-12-06 23:01
zhuangrunwei
阅读(553)
推荐(0)
摘要:
JSP提示元素 <%@ 指示类型 [属性="值"]%> 指示类型 指示类型有三种,分别是taglib、include、page taglib指示类型 用于引入标签库 引入JSTL1.1核心标签库:<%@taglib prefix="c" uri="http://java.sun.com/jsp/js
阅读全文
posted @ 2018-12-06 21:14
zhuangrunwei
阅读(536)
推荐(0)
摘要:
概述 在Servlet中编写HTML太麻烦了,应该使用JSP。JSP中可以直接编写HTML,使用指示、声明、脚本(scriptlet)等元素来堆砌各种功能,但JSP最后还是会被容器转译为Servlet源代码、自动编译为.class文件、载入.class文件,然后生成Servlet对象。 在第一次请求
阅读全文
posted @ 2018-12-05 22:42
zhuangrunwei
阅读(1001)
推荐(0)
摘要:
概述 一个简单的web项目下载地址:https://files.cnblogs.com/files/Mike_Chang/hello.rar Tomcat部署应用三种方法。 方法一 将一个WAR文件或者整个应用程序复制到Tomcat的webapps目录下。 如果把web应用文件夹改名为ROOT,那么
阅读全文
posted @ 2018-12-05 17:07
zhuangrunwei
阅读(399)
推荐(0)
摘要:
字面含义 缓冲:缓和冲击 缓存:临时存储 区别 简单来说缓冲偏重于写,而缓存偏重于读。 Buffer的核心作用是用来缓冲,缓和冲击。比如你每秒要写100次硬盘,对系统冲击很大,大量时间在忙着处理开始写和结束写这两件事,而开始读写与终止读写所需要的时间很长。所以用buffer暂存起来,变成每10秒写一
阅读全文
posted @ 2018-12-05 15:16
zhuangrunwei
阅读(1553)
推荐(0)
摘要:
1、Html代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <form method="post" action="hello"> 名称:<in
阅读全文
posted @ 2018-12-04 18:12
zhuangrunwei
阅读(188)
推荐(0)
摘要:
背景 假设有个留言版程序已经上线并正常运作中,但是现在发现,有些用户会在留言中输入一些HTML标签。基于安全性的考量,不希望用户输入的HTML标签直接出现在留言中而被浏览器当作HTML的一部分。例如,并不希望用户在留言中输入com.sina.com.cn这样的信息,你不想信息在留言显示中直接变成超链
阅读全文
posted @ 2018-12-04 16:17
zhuangrunwei
阅读(357)
推荐(0)
摘要:
概念 在容器调用Servlet的service()方法前,Servlet并不会知道有请求的到来,而在Servlet的service()方法运行后,容器真正对浏览器进行HTTP响应之前,浏览器也不会知道Servlet真正的响应是什么。过滤器(Filter)正如其名称所示,是介于Servlet之前,可拦
阅读全文
posted @ 2018-12-04 11:53
zhuangrunwei
阅读(191)
推荐(0)
摘要:
概述 与请求相关的监听器有三个:ServletRequestListener、ServletRequestAttributeListener与AsyncListener。第三个是在Servlet 3.0中新增的监听器。 ServletRequestListener ServletRequestLis
阅读全文
posted @ 2018-12-03 23:47
zhuangrunwei
阅读(306)
推荐(0)
摘要:
概述 与HttpSession相关的监听器有四个:分别是HttpSessionListener、HttpSessionAttributeListener、HttpSessionBindingListener与HttpSessionActivationListener。 HttpSessionList
阅读全文
posted @ 2018-12-03 20:59
zhuangrunwei
阅读(1086)
推荐(0)
摘要:
概述 与ServletContext相关的监听器有ServletContextListener与ServletContextAttributeListener。 ServletContextListener ServletContextListener是“生命周期监听器”,可以让我们知道Web应用程
阅读全文
posted @ 2018-12-03 20:05
zhuangrunwei
阅读(546)
推荐(0)
摘要:
生命周期监听器与属性改变监听器都必须使用@WebListener或在web.xml中声明,容器才会知道要加载、读取相关的监听器。
阅读全文
posted @ 2018-12-03 19:50
zhuangrunwei
阅读(228)
推荐(0)
摘要:
概念 ServletContext本身的名称令人有点困惑,因为它以Servlet作为开头,容易被误认为仅是单一Servlet的代表对象。事实上,当整个Web应用程序加载Web容器之后,容器会生成一个ServletContext对象作为整个应用程序的代表。 1、setAttribute()、getAt
阅读全文
posted @ 2018-12-03 17:47
zhuangrunwei
阅读(233)
推荐(0)
摘要:
GenericServlet实现了Servlet接口的Init()方法 GenericServlet主要目的,就是在容器调用init()方法时将传入的ServletConfig封装起来————赋值给成员变量。 GenericServlet在实现Servlet的init()方法时,也调用了另一个无参数
阅读全文
posted @ 2018-12-03 16:45
zhuangrunwei
阅读(239)
推荐(0)
摘要:
ServletConfig ServletConfig是个别Servlet的设置信息对象。 使用注解设置个别Servlet的初始参数,可以在@WebServlet中使用@WebInitParam设置initParams属性。 在web.xml中设置个别Servlet的初始参数,可以在<servlet
阅读全文
posted @ 2018-12-03 14:34
zhuangrunwei
阅读(137)
推荐(0)
摘要:
package javax.servlet; import java.io.IOException; public interface Servlet { void init(ServletConfig var1) throws ServletException; ServletConfig getServletConfig(); void service(Ser...
阅读全文
posted @ 2018-12-03 14:30
zhuangrunwei
阅读(110)
推荐(0)
posted @ 2018-12-03 14:13
zhuangrunwei
阅读(692)
推荐(1)
摘要:
无论cookie有没有禁用,HttpSession都有效 package com.test; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet
阅读全文
posted @ 2018-12-02 19:52
zhuangrunwei
阅读(156)
推荐(0)
摘要:
url 重写结合HttpSession实现会话管理之 form 提交
阅读全文
posted @ 2018-12-02 19:41
zhuangrunwei
阅读(172)
推荐(0)
摘要:
背景 HttpSession默认使用Cookie存储Session ID,如果在用户禁用浏览器Cookie的功能后,仍打算运用HttpSession来进行会话管理,那么可以搭配URL重写来实现。 实现方法 使用HttpServletResponse的encodeURL()方法协助产生URL。 服务器
阅读全文
posted @ 2018-12-02 18:52
zhuangrunwei
阅读(237)
推荐(0)
摘要:
体验 使用HttpSession进行会话管理,完全可以忽略HTTP无状态的事实。 HttpSession会话管理原理 使用HttpSession进行会话管理十分方便,让Web应用程序看似可以“记得”浏览器发出的请求,连接数个请求间的关系。但无论如何,Web应用程序基于HTTP协议的事实并没有改变。这
阅读全文
posted @ 2018-12-02 18:01
zhuangrunwei
阅读(320)
推荐(0)
摘要:
cookie实现会话 服务器调用response.addCookie()设置set-cookie响应头后,浏览器收到这个响应头与数值后,会将它以文件的形式存储于本地PC上。当浏览器再次访问同一Web服务器时,会将之前收到的cookie作为cookie请求头自动发送给服务器。 Cookie是HTTP
阅读全文
posted @ 2018-12-02 16:50
zhuangrunwei
阅读(173)
推荐(0)
摘要:
隐藏域实现会话管理概述 如果你正在制作一个网络问卷,由于问卷内容很长,因此必须分几个页面,上一页面作答完后,必须请求服务器显示下一个页面。 但是在HTTP协议中,服务器并不会记得上一次请求的状态。既然服务器不会记得两次请求间的关系,那就由服务器将上一页结果以隐藏域的方式响应给浏览器,而浏览器在每次请
阅读全文
posted @ 2018-12-02 14:47
zhuangrunwei
阅读(242)
推荐(0)