Java
文章平均质量分 81
Java从入门到放弃教程
xianxing.tang
自强不息,厚德载物
展开
-
Hashtable的实现原理
我们先对Hashtable有个整体认识,然后再学习它的源码,最后再通过实例来学会使用Hashtable。第1部分 Hashtable介绍第2部分 Hashtable数据结构第3部分 Hashtable源码解析(基于JDK1.6.0_45)第4部分 Hashtable遍历方式第5部分 Hashtable示例第1部分 Hashtable介绍Hashtable 简介和HashMa...转载 2018-08-09 13:00:23 · 751 阅读 · 0 评论 -
Java 集合系列10之 HashMap详细介绍(源码解析)和使用示例
概要这一章,我们对HashMap进行学习。我们先对HashMap有个整体认识,然后再学习它的源码,最后再通过实例来学会使用HashMap。内容包括:第1部分 HashMap介绍第2部分 HashMap数据结构第3部分 HashMap源码解析(基于JDK1.6.0_45) 第3.1部分 HashMap的“拉链法”相关内容 第3.2部分 HashMap的构造函数 第3.3部分 ...转载 2018-08-09 11:34:38 · 1097 阅读 · 0 评论 -
spring定时任务详解(@Scheduled注解)
在springMVC里使用spring的定时任务步骤如下:(一)在spring的xml配置文件里加入task的命名空间:xmlns:task="http://www.springframework.org/schema/task"xsi:schemaLocation="http://www.springframework.org/schema/task ...原创 2018-08-09 11:35:38 · 346 阅读 · 0 评论 -
JavaWeb:报错信息The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path
JavaWeb: 报错信息The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path好久不写Jsp,今天建立了一个Javaweb工程,并在eclipse中配置了Web容器Tomcat。原本开心的新建jsp页面,添加一个简单的Java类。可是,JSP页面顶端出现“红色”的报错信息:The...转载 2018-07-23 15:09:58 · 112 阅读 · 0 评论 -
shiro-root-1.3.2-source-release.zip安全框架源码
点击打开链接原创 2018-05-03 18:05:42 · 1351 阅读 · 0 评论 -
Java中 final 关键字的使用
在java的关键字中,static和final是两个我们必须掌握的关键字。不同于其他关键字,他们都有多种用法,而且在一定环境下使用,可以提高程序的运行性能,优化程序的结构。final关键字在java中,final的含义在不同的场景下有细微的差别,但总体上来说,它指的是“这是不可变的”。下面,我们来讲final的四种主要用法。1.修饰数据在编写程序时,我们经常需要说明一个数据是不可变...原创 2019-02-21 10:41:36 · 130 阅读 · 0 评论 -
java中的static使用--静态变量、静态方法
Java 中的 static 使用之静态变量大家都知道,我们可以基于一个类创建多个该类的对象,每个对象都拥有自己的成员,互相独立。然而在某些时候,我们更希望该类所有的对象共享同一个成员。此时就是 static 大显身手的时候了!!Java 中被 static 修饰的成员称为静态成员或类成员。它属于整个类所有,而不是某个对象所有,即被类的所有对象所共享。静态成员可以使用类名直接访问,也可以使...原创 2019-02-21 10:32:30 · 233 阅读 · 0 评论 -
servlet request getHeader(“x-forwarded-for”) 获取真实IP
request方法客户端IP: request.getRemoteAddr() 输出:192.168.0.106客户端主机名:request.getRemoteHost()输出:abcrequest.getHeader("Host") 输出:192.168.0.1:8080Web服务器名字:request.getServerName()输出:192.168.0.1服务器监听的端口:re...转载 2019-02-11 10:55:42 · 658 阅读 · 0 评论 -
Java详解JVM工作原理和流程
作为一名Java使用者,掌握JVM的体系结构也是必须的。说起Java,人们首先想到的是Java编程语言,然而事实上,Java是一种技术,它由四方面组成:Java编程语言、Java类文件格式、Java虚拟机和Java应用程序接口(Java API)。它们的关系如下图所示:运行期环境代表着Java平台,开发人员编写Java代码(.java文件),然后将之编译成字节码(.class文件),再然...转载 2018-11-09 10:54:36 · 183 阅读 · 0 评论 -
购物车实现原理
我们设计购物车就是一个 Map<Product,Integer>集合,这个Map集合要存储到session中。一、将商品添加到购物车 1.先在页面上添加一个链接 2.在AddProductToCartServlet中 1.先得到商品的id 2.从数据库中通过id将商品查询出来。 3.将商品添加到购物车 a.从session中获...转载 2018-10-18 14:54:14 · 549 阅读 · 0 评论 -
Java中的值栈
OGNL表达式使用 和 值栈 OGNL是Object Graphic Navigation Language(对象图导航语言)的缩写,它是一个开源项目。 Struts2框架使用OGNL作为默认的表达式语言。* xwork 提供 OGNL表达式* ognl-3.0.5.jarOGNL 是一种比EL 强大很多倍的语言 OGNL 提供五大类功能 1、支持对象方法调用,如x...转载 2018-10-18 10:23:10 · 211 阅读 · 0 评论 -
Struts2+Jquery实现ajax并返回json类型数据
摘要: 主要实现步骤如下: 1、JSP页面使用脚本代码执行ajax请求 2、Action中查询出需要返回的数据,并转换为json类型模式数据 3、配置struts.xml文件 4、页面脚本接受并处理数据 网上看到很多关于Struts2+ajax+jquery+json的例子,但是很多都不完整,也看不明白,主要原因是返回jsno类型数据和原来的返回字符串类型数据不一样,并且网友们实现步骤没有说清...转载 2018-10-17 17:56:58 · 123 阅读 · 0 评论 -
struts2获取前台传递过来的数据的三种方式
struts2获取前台传递过来的数据可以通过属性驱动和模型驱动两种方式获得。属性驱动1、使用变量的方式前台:action:action中要获得前台传递过来的account和password两个参数的数据。那么就必须在action中设置和前台name属性值同样名称的变量。同时必须设置get、set方法。这样在访问action的过程中,struts会自动的为action...转载 2018-10-17 17:21:41 · 599 阅读 · 0 评论 -
spring定时任务(项目总结)
1.首先在web.xml文件中配置web监听器 <listener> <listener-class>com.javacode.timeTask.LzstoneMain</listener-class> </listener>2.写定时任务类 package com.javacode.timeTask;...原创 2018-10-16 11:29:42 · 157 阅读 · 0 评论 -
JSONObject 与 JSON 互转
使用目的目前数据交互大多以 JSON 字符串为信息传输,主要格式有{"age":"22","name":"李四"}[{"age":"21","name":"张三"}]最常见的应用场景是前后端对接,第三方平台文档对接,下面展示转换使用。一、引入 jar , 此处引入 com.alibaba.fastjson 版本的jar包二、建立转载 2018-10-15 14:20:31 · 1925 阅读 · 0 评论 -
jQuery函数attr()与prop()的区别
在jQuery中,attr()函数和prop()函数都用于设置或获取指定的属性,它们的参数和用法也几乎完全相同。但不得不说的是,这两个函数的用处却并不相同。下面我们来详细介绍这两个函数之间的区别。1、操作对象不同很明显,attr和prop分别是单词attribute和property的缩写,并且它们均表示"属性"的意思。不过,在jQuery中,attribute和property却...转载 2018-09-14 10:49:02 · 222 阅读 · 0 评论 -
关于Maven项目build时出现No compiler is provided in this environment的处理
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?的问题, 原以为这是个个例, 源于同事粗心, 配置环境出问题造成, 后到百度查看一下, 遇到这个问题的不在少数, 但是对问题的解释没有说到根源, 于是写下这篇博客供大家参阅, 如有纰漏, 还...转载 2018-08-21 10:01:30 · 118 阅读 · 0 评论 -
sessionid如何产生?由谁产生?保存在哪里?
sessionid是一个会话的key, 浏览器第一次访问服务器会在服务器端生成一个session, 有一个sessionid和它对应。tomcat生成的sessionid叫做jsessionid。session在访问tomcat服务器HttpServletRequest的getSession(true)的时候创建,tomcat的ManagerBase类提供创建sessionid的方法:随机数+...转载 2018-08-11 10:57:05 · 223 阅读 · 0 评论 -
String、StringBuffer、StringBuilder的区别与效率比较
1. String是不可变的,StringBuffer与StringBuilder是可变的。2. String和StringBuffer是线程安全的(StringBuffer的append操作用了synchronized),StringBuilder不是线程安全的。3. String对象串联的效率最慢,单线程下字符串的串联用StringBuilder,多线程下字符串的串联用StrngBuf...转载 2018-08-10 17:09:55 · 366 阅读 · 0 评论 -
HashMap与HashTable的区别
1.从类定义 这个从源代码中可以直接看出来,HashMap继承自AbstractMap,而HashTable继承自Dictionary。public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V> ,Cloneable,Serializablepublic class H...原创 2018-08-09 16:05:32 · 134 阅读 · 0 评论