java
文章平均质量分 66
god_love_hlq_xff
这个作者很懒,什么都没留下…
展开
-
商品添加到购物车模块java程序
该java程序是把商品放入购物车,并且下次用同一浏览器再打开始还能够看到,项目是一步一步做出来的,技术的积累很重要!原创 2015-07-13 14:52:15 · 6532 阅读 · 3 评论 -
Cookie——项目实战:运用Cookie技术,显示用户上次登录的时间
Cookie技术在servlet中的运行原理:当用户首次登录时,服务器端创建一个Cookie,把当前的时间以字符串的形式保存进去。同时设定好Cookie的最大生命周期,最后返回给客户端浏览器,浏览器会创建临时Cookie的文件保存返回的数据。当下次再次登录时,request对象就能从客户端发来的Cookie中读取到上次的登录时间信息。原创 2015-07-09 15:28:48 · 1924 阅读 · 0 评论 -
Java集合学习系列之:HashMap的实现原理
面试中集合是重点之中的重点,总结一下,方便以后的复习!原创 2015-08-02 22:10:35 · 456 阅读 · 0 评论 -
Servlet——Session会话技术小实验
/* * Session 会话技术目的是服务器只能服务一个浏览器,防止非法登陆,运行在服务器端; */原创 2015-07-10 15:43:08 · 677 阅读 · 0 评论 -
Servlet——Session会话mini项目
Session 会话技术 ,目的是服务器只能服务一个浏览器,防止非法登陆,运行在服务器端;原创 2015-07-10 15:46:54 · 409 阅读 · 0 评论 -
redis
redis积累转载 2017-07-11 21:49:18 · 303 阅读 · 0 评论 -
nginx的常用用法
nginx的常用用法:1注册系统服务 2 负载均衡 3文件服务器。一:如何安装成window 64系统服务从官网上下载 http://nginx.org/en/download.html下载解压后放到C:\nginx-1.10.1 启动nginx.exe,默认端口为80,从conf.xml可以看到,然后在浏览器输入本地ip即可windows转载 2017-11-06 22:29:29 · 632 阅读 · 0 评论 -
PriorityBlockingQueue 简单实用例子
PriorityBlockingQueue 简单实用例子原创 2017-11-12 22:31:14 · 3242 阅读 · 0 评论 -
IntelliJ IDEA使用教程 (总目录篇)
IntelliJ IDEA使用教程 (总目录篇)硬件要求IntelliJ IDEA 的硬件要求安装包云盘分享IntelliJ IDEA 15,16 win 7 64位安装包以及注册码 百度云盘(最新链接在文章底部评论里)注册与激活(建议下载安装专业版)IntelliJ IDEA(或者JetBrains PyCharm)中弹出“IntelliJ IDEA Li转载 2017-11-17 15:17:38 · 259 阅读 · 0 评论 -
hashMap拉链形成
先看hashmap底层是个数组结构,数组上面存的数据都是 Entry 这个类型的数据。然后看他的主要实现如下:[java] view plain copy print? static class Entry implements Map.Entry { final K key; V value; Entr转载 2017-11-17 15:58:57 · 828 阅读 · 0 评论 -
Java 集合深入理解(17):HashMap 在 JDK 1.8 后新增的红黑树结构
上篇文章我们介绍了 HashMap 的主要特点和关键方法源码解读,这篇文章我们介绍 HashMap 在 JDK1.8 新增树形化相关的内容。读完本文你将了解到:点击查看 Java 集合框架深入理解 系列 - - 乾杯传统 HashMap 的缺点HashMap 在 JDK 18 中新增的数据结构 红黑树HashMap 中关于红黑树的三个关键参数HashM转载 2017-11-17 16:11:31 · 213 阅读 · 0 评论 -
Java 集合深入理解(16):HashMap 主要特点和关键方法源码解读
[+]点击查看 Java 集合框架深入理解 系列 - - 乾杯什么是 HashMapHashMap 的特点HashMap 的 13 个成员变量HashMap 的初始容量和加载因子HashMap 的关键方法HashMap 的 4 个构造方法HashMap 中的链表节点HashMap 中的添加操作HashMap 中的哈希函数 hashHashMap 中的初始化扩容方法转载 2017-11-17 16:12:38 · 551 阅读 · 0 评论 -
高可用,高并
本文的架子参考张开套的《亿级流量网站架构核心技术》这本书分为四个部分:指导原则,高可用,高并发,实践案例。这篇文章说一说前三个部分,大部分内容都是我自己的思考,书只作为参考。指导原则高可用事前副本技术隔离技术配额技术探知技术预案事发监控和报警事中降级回滚failXXX系列事后高并发提高处理速度缓存异步增加处理人手转载 2017-11-14 12:53:05 · 683 阅读 · 0 评论 -
必读|提高代码阅读能力的七种实用方法
随着越来越多的公司使用敏捷开发,能够阅读别人的代码比以往显得更重要。这就需要学习一些如何提高这项技能的技巧。本文提供了7种提高代码阅读技巧的方法,以下是译文。在软件开发人员的职位描述中有阅读源代码。然而,这体验并不总能令人愉悦。不是每个人都喜欢阅读别人的代码,因为他们觉得那很乏味,甚至有时令人感到沮丧。有些案例中,你开始阅读别人的代码,最终会产生一种痛苦的感觉,因为你不能理解这些代码,转载 2017-11-15 09:54:43 · 849 阅读 · 0 评论 -
Java 9 中的 9 个新特性
Java 8 发布三年多之后,即将快到2017年7月下一个版本发布的日期了。 你可能已经听说过 Java 9 的模块系统,但是这个新版本还有许多其它的更新。 这里有九个令人兴奋的新功能将与 Java 9 一起发布。1. Java 平台级模块系统Java 9 的定义功能是一套全新的模块系统。当代码库越来越大,创建复杂,盘根错节的“意大利面条式代码”的几率呈指数级的增长。这时候就得面对转载 2017-11-29 12:58:34 · 160 阅读 · 0 评论 -
Java NIO原理 图文分析及代码实现
最近在分析hadoop的RPC(Remote Procedure Call Protocol ,远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。可以参考:http://baike.baidu.com/view/32726.htm )机制时,发现hadoop的RPC机制的实现主要用到了两个技术:动态代理(动态代理可以参考博客:http://weixi转载 2017-11-20 19:56:38 · 190 阅读 · 0 评论 -
Java之美[从菜鸟到高手演变]系列之博文阅读导航
随着博文越来越多,为博客添加一个导航很有必要!本博客将相继开通Java、CloudFoundry、Linux、Ruby等专栏,都会设立目录,希望读者朋友们能更加方便的阅读!在阅读的过程中有任何问题,请联系:egg。邮箱:xtfggef@gmail.com 微博:http://weibo.com/xtfggef QQ群:169480361(请在本博文下面留言,验证信转载 2017-11-30 09:25:14 · 586 阅读 · 1 评论 -
高可用+高并发+负载均衡架构设计
原创2017-09-05 58沈剑架构师之路 架构师之路架构师之路微信号 road5858 功能介绍 架构师之路,坚持撰写接地气的架构文章 前篇:《无限容量数据库架构设计》《MQ消息可达性+幂等性+延时性架构设计》都收到网友好评:系统性,全局性看问题体会更深刻简单易懂本文再做总结转载 2017-12-09 21:43:44 · 444 阅读 · 0 评论 -
Java 面试题 : 百度前 200 页都在这里了
基本概念操作系统中 heap 和 stack 的区别什么是基于注解的切面实现什么是 对象/关系 映射集成模块什么是 Java 的反射机制什么是 ACIDBS与CS的联系与区别Cookie 和 Session的区别fail-fast 与 fail-safe 机制有什么区别get 和 post请求的区别Inte转载 2017-11-27 09:46:37 · 633 阅读 · 0 评论 -
一致性Hash算法
致性Hash算法关于一致性Hash算法,在我之前的博文中已经有多次提到了,MemCache超详细解读一文中"一致性Hash算法"部分,对于为什么要使用一致性Hash算法、一致性Hash算法的算法原理做了详细的解读。算法的具体原理这里再次贴上:先构造一个长度为232的整数环(这个环被称为一致性Hash环),根据节点名称的Hash值(其分布为[0, 232-1])将服务器节点放转载 2017-11-27 09:48:37 · 208 阅读 · 0 评论 -
微服务架构适用场景分析
核心要点微服务并不是什么灵丹妙言,在现代架构中,它有自己的位置,但并不适用于任何的地方;在判断基于微服务的方案是否适合时,理解业务域是至关重要的;单职责原则是划分微服务边界的关键;与其他架构风格类似,微服务是由一系列的原则来监管的;微服务必须在更广阔的分布式架构和分布式计算上下文中进行考量。在本文中,我们将会深入研究主数据管理(Master Data Management,MDM)转载 2017-12-06 22:51:45 · 8725 阅读 · 0 评论 -
java Daemon (守护)线程理解
Daemon 线程是一种支持性线程,例如:web服务器中的Servlet,容器启动时后台初始化一个服务线程,即调度线程,负责处理http请求,然后每个请求过来调度线程从线程池中取出一个工作者线程来处理该请求,从而实现并发控制的目的。因此它的主要作用是作为程序后台调度及支持性服务类工作,这也意味着当java虚拟机中不存在非Damemon线程时,java虚拟机将会退出,Daemon线程失去了服务对象也原创 2017-12-08 00:18:53 · 539 阅读 · 0 评论 -
基于AOP的动态数据源实现
基于AOP的动态数据源实现当页面请求处理到service层时,触发调用方法中的拦截切面类DataSourceInterceptor,将当前线程中的数据源引用存入HandlerDataSource的handlerThredLocal集合中,然后进入service层中的事务拦截,开启事务管理,DataSourceTransactionManager中的doBegin方法获取数据库连接时,会调用...原创 2018-08-12 15:56:06 · 358 阅读 · 0 评论 -
HashMap? ConcurrentHashMap? 相信看完这篇没人能难住你!
前言Map 这样的 Key Value 在软件开发中是非常经典的结构,常用于在内存中存放数据。本篇主要想讨论 ConcurrentHashMap 这样一个并发容器,在正式开始之前我觉得有必要谈谈 HashMap,没有它就不会有后面的 ConcurrentHashMap。HashMap众所周知 HashMap 底层是基于 数组 + 链表 组成的,不过在 jdk1.7 和 1....转载 2018-08-23 23:08:05 · 111 阅读 · 0 评论 -
java知识积累
1.关于HashCode 不能根据hashCode值判断两个对象是否相等,但可以直接根据hashCode值判断两个对象不相等。 如果两个对象的hashCode值不等,一定是不同的对象,要判断两个对象是否真正相等,必须通过equals()方法 如果调用equals()方法得到的结果为true,则两个对象的hashCode值一定相等 ...转载 2018-09-04 23:25:15 · 297 阅读 · 0 评论 -
spring 容器基本实现
https://www.cnblogs.com/VergiLyn/p/6130188.html1:spring 直接读取xml配置文件方式有两种: BeanFactory bf = new XmlBeanFactory(new ClassPathResource("beanFactory.xml)); (3.1以后已被过时注解@Deprecated) ...原创 2018-09-08 17:35:53 · 295 阅读 · 0 评论 -
spring 整合mybatis源码分析
spring 整合mybatis时,底层就是依靠两个类,sqlSessionFactoryBean 和 mapperFactoryBean 实现;这两个类有一个共同的特点的特点,就是都实现了spring的FactoryBean InitializingBean 接口;实现了FactoryBean 接口,当调用getBean时返回的对象为getObject()方法返回的对象 ;而实现Init...原创 2018-09-11 22:39:30 · 189 阅读 · 0 评论 -
Mybatis 相关的源码分析链接
https://blog.csdn.net/nmgrd/article/details/54608702https://blog.csdn.net/bingospunky/article/details/79283104https://www.cnblogs.com/quiet-snowy-day/p/6228198.html(spring restTemplate)转载 2018-09-11 22:46:09 · 119 阅读 · 0 评论 -
Spring xml bean标签的解析,注册
spring 中对xml中标签解析提取时,会将自定义与默认标签分开解析,因为两种方式存在很大的不同;protected void parseBeanDefinitions(Element root, BeanDefinitionParserDelegate delegate) { if (delegate.isDefaultNamespace(root)) { NodeList ...原创 2018-09-08 22:44:45 · 580 阅读 · 0 评论 -
spring bean的加载
BeanFactory bg = new XmlBeanFactory(new ClassPathResource("bean.xml")); MyTestBean bean = (MyTestBean)bg.getBean("myTestBean");上篇bean注册完成后,存入map中后,当需要实例化某对象时,调取DefaultListableFactory 类中,getBea...原创 2018-09-09 17:51:57 · 145 阅读 · 0 评论 -
Netty源码分析
先说结论,Netty 服务端启动和交互的逻辑的底层实现是借助于Java NIO ServerSocketChannel来实现,Java NIO ServerSocketChannel作为服务端的绑定端口、接受客户端的连接的样式代码如下: /* * 既然是服务器端,肯定需要一个ServerSocketChannel来监听新进来的TCP连接。 *...转载 2018-09-15 20:40:11 · 233 阅读 · 0 评论 -
常访问的源码链接收藏
bosshttp://www.iocoder.cn/#mybatishttp://www.iocoder.cn/MyBatis/good-collection/RabbitMQ 实现原理与源码解析系统http://www.iocoder.cn/RabbitMQ/good-collection/springhttp://www.iocoder.cn/Spring/good...原创 2018-09-13 00:08:22 · 220 阅读 · 0 评论 -
Netty 源码分析之 一 客户端代码分析
没有创新,或者拾人牙慧,知识本来就是这样搬运着传播的。客户端核心代码如下:public static void start(){ ClientChannelHandler channelHandler = new ClientChannelHandler(); EventLoopGroup bossGroup = new NioEventLoopGroup...原创 2018-09-18 22:53:47 · 749 阅读 · 0 评论 -
Netty 源码分析之服务端
服务器端在分析客户端的代码时, 我们已经对 Bootstrap 启动 Netty 有了一个大致的认识, 那么接下来分析服务器端时, 就会相对简单一些了.首先还是来看一下服务器端的启动代码:public final class EchoServer { static final boolean SSL = System.getProperty("ssl") != null; ...转载 2018-09-18 23:49:01 · 139 阅读 · 0 评论 -
Netty 源码分析之 三 EventLoop (一)
Netty 的 IO 处理循环在 Netty 中, 一个 EventLoop 需要负责两个工作, 第一个是作为 IO 线程, 负责相应的 IO 操作; 第二个是作为任务线程, 执行 taskQueue 中的任务. 接下来我们先从 IO 操纵方面入手, 看一下 TCP 数据是如何从 Java NIO Socket 传递到我们的 handler 中的.Netty 是 Reactor 模型的一个...转载 2018-09-24 21:34:20 · 150 阅读 · 0 评论 -
Netty 源码分析之 三 EventLoop(二)
https://segmentfault.com/a/1190000015484187https://segmentfault.com/u/huamingfengqingyang/articlesNetty 的 IO 处理循环在 Netty 中, 一个 EventLoop 需要负责两个工作, 第一个是作为 IO 线程, 负责相应的 IO 操作; 第二个是作为任务线程, 执行 ta...转载 2018-09-24 21:38:46 · 157 阅读 · 0 评论 -
基于 Redis 的分布式锁
前言分布式锁在分布式应用中应用广泛,想要搞懂一个新事物首先得了解它的由来,这样才能更加的理解甚至可以举一反三。首先谈到分布式锁自然也就联想到分布式应用。在我们将应用拆分为分布式应用之前的单机系统中,对一些并发场景读取公共资源时如扣库存,卖车票之类的需求可以简单的使用同步或者是加锁就可以实现。但是应用分布式了之后系统由以前的单进程多线程的程序变为了多进程多线程,这时使用以上的解决方案...转载 2018-09-24 21:43:41 · 121 阅读 · 0 评论 -
Netty 源码分析之ChannelPipeline 以4.0.15 final版
一:Channel 与 ChannelPipeline 每个Channel在初始化时都会在其父类构造器中顺带构建一个ChannelPipeline,unSafe对象;即每个channel都有一个与之关联的channelPipeline;而channelPipeline是channelHandler承载的事件流容器,底层是以DefaultChannelHandlerContext为...原创 2018-09-19 23:55:24 · 194 阅读 · 0 评论 -
netty开发入门代码
NettyServer 端 服务端public class NettyServer { public static void main(String[] args) throws Exception{ NettyServer.start(); } public static void start() throws Exception{ final NettyServerHand...原创 2018-09-14 23:31:11 · 267 阅读 · 0 评论 -
spring 知识积累
1:BeanFactory bf = XmlBeanFactory(new ClassPathResource(new Resource(“applicationContext.xml”)));Sping 从xml到bean对象,总共经历以下阶段:定位,加载,注册,后置初始化(包含增强)Spring 1:定位,resource实现类去查找xml文件,用XmlBeanDefinitionR...原创 2018-09-25 21:53:09 · 92 阅读 · 0 评论