
Programn
文章平均质量分 82
yunheli6451
这个作者很懒,什么都没留下…
展开
-
小编带你HashMap的工作原理
HashMap的工作原理是近年来常见的Java面试题。几乎每个Java程序员都知道HashMap,都知道哪里要用HashMap,知道Hashtable和HashMap之间的区别,那么为何这道面试题如此特殊呢?是因为这道题考察的深度很深。这题经常出现在高级或中高级面试中。投资银行更喜欢问这个问题,甚至会要求你实现HashMap来考察你的编程能力。ConcurrentHashMap和其它同步集合的引入...原创 2018-08-30 17:32:10 · 122 阅读 · 0 评论 -
小牛带你架构设计之服务限流
v阅读目录v服务限流概念 v为何要服务限流 v如何服务限流 v注意事项 v博客总结v博客前言限流可以认为服务降级的一种,限流就是限制系统的输入和输出流量已达到保护系统的目的。一般来说系统的吞吐量是可以被测算的,为了保证系统的稳定运行,一旦达到的需要限制的阈值,就需要限制流量并采取一些措施以完成限制流量的目的。比如:延迟处理,拒绝处理,或者部分拒绝处理等等。回到顶部v服...原创 2018-09-26 21:08:57 · 193 阅读 · 0 评论 -
模板
一、前言 二、集成 Thymeleaf 模板引擎 三、使用 Thymeleaf 模板回到顶部一、前言 Thymeleaf 的出现是为了取代 JSP,虽然 JSP 存在了很长时间,并在 Java Web 开发中无处不在,但是它也存在一些缺陷:1、JSP 最明显的问题在于它看起来像HTML或XML,但它其实上并不是。大多数的JSP模板都是采用HTML的形式,但是又掺杂上了各种J...原创 2018-10-11 21:02:19 · 506 阅读 · 0 评论 -
solr+tomcat整合
一、solr安装http://archive.apache.org/dist/lucene/solr/这个地址有各个版本的这次我使用的是5.5.4版本和tomcat8版本5.5.4已结内置了jetty可以直接运行直接运行如下用solr start命令启动服务看见这句说明启动成功启动后直接访问 http://localhost:8983/solr/#/ ...原创 2018-09-22 19:49:55 · 993 阅读 · 2 评论 -
学习Spring MVC——从HelloWorld开始
前言: 时隔十二年,中国女排最终过关斩将,用3:1的成绩证明了自己的实力,霸气夺冠,为中国赢得了一枚意义非常的金牌。这是一次全民的狂欢,一场视听盛宴,带给我们不仅是熠熠生辉的金牌,更传递出的是一种女排精神。 每每得分的时候,总能看到球员们歇斯底里的咆哮和欢呼,因为每一分都来的太不容易。 其实码农也是如此,每每解决掉一个bug的时候,内心的舒畅和激动,好似经历了没有尽头的爬坡,几度...原创 2018-10-12 21:16:47 · 178 阅读 · 0 评论 -
小编带你进Spring 核心框架体系结构
很多人都在用spring开发java项目,但是配置maven依赖的时候并不能明确要配置哪些spring的jar,经常是胡乱添加一堆,编译或运行报错就继续配置jar依赖,导致spring依赖混乱,甚至下一次创建相同类型的工程时也不知道要配置哪些spring的依赖,只有拷贝,其实,当初我就是这么干的! spring的jar包只有20个左右,每个都有相应的功能,一个jar还可能依赖了若干其他j...原创 2018-10-06 16:06:50 · 284 阅读 · 0 评论 -
Spring知识点提炼
1. Spring框架的作用轻量:Spring是轻量级的,基本的版本大小为2MB 控制反转:Spring通过控制反转实现了松散耦合,对象们给出它们的依赖,而不是创建或查找依赖的对象们。 面向切面的编程AOP:Spring支持面向切面的编程,并且把应用业务逻辑和系统服务分开。 容器:Spring包含并管理应用中对象的生命周期和配置 MVC框架: Spring-MVC 事务管理:Spri...原创 2018-10-08 20:12:29 · 144 阅读 · 0 评论 -
使用scrapy前的环境搭建
刚开始直接scrapy startproject [名称] 创建项目才遇到挺多问题的,执行这个又会提示那个问题,解决后就觉得还好还好啦1.pip install scrapy 提示pip 版本要升级;You are using pip version 10.0.1, however version 10.0.1 is available.You should consider upgra...原创 2018-10-15 19:42:25 · 332 阅读 · 0 评论 -
SpringBoot+Elasticsearch
1. 前言1.1. 集成方式Spring Boot中集成Elasticsearch有4种方式:本文用后面两种方式来分别连接并操作Elasticsearch1.2. 环境与配置服务端:elasticsearch-6.3.2 1台客户端:elasticsearch 6.4.1服务端配置文件:elasticsearch.yml/etc/security/limits.co...原创 2018-10-09 21:12:01 · 312 阅读 · 0 评论 -
CountDownLatch和CyclicBarrier模拟同时并发请求
有时候要测试一下某个功能的并发能力,又不要想借助于其他测试工具,索性就自己写简单的demo模拟一个并发请求就最方便了。如果熟悉jemter的测试某接口的并发能力其实更专业,此处只是自己折腾着玩。CountDownLatch和CyclicBarrier是jdk concurrent包下非常有用的两个并发工具类,它们提供了一种控制并发流程的手段。其实查看源码它们都是在内部维护了一个计数器控制流...原创 2018-10-10 19:23:39 · 264 阅读 · 0 评论 -
SpringBoot部署流程
一. 项目介绍 a) 本项目为SpringBoot项目 b) 使用内置Tomcat容器一. 操作步骤 a) 配置pom.xml文件,确定打包方式 b) 更改项目返回地址路径 示例: a) 确定访问端口,并保证服务器端口开放 自定义端口在application.properties...原创 2018-09-10 20:51:24 · 477 阅读 · 0 评论 -
Hibernate框架搭建
这是电虫第一次使用博客进行记录自己的学习历程,有不足之处希望大家多加指正,嘻嘻嘻… Pass:很多人都说hibernate已经不怎么用了,因为有了更多的框架让大家更加方便使用,但是电虫还是学习一下,因为这个框架毕竟经历过这么久的时间检验,在用于学习方面的话还是有可取之处的,电虫认为学习一下hibernate应该会让自己对于框架的认知有更全面的认知,而且能学会hibernate难道还学不会其他的框...原创 2018-09-17 21:44:56 · 184 阅读 · 0 评论 -
架构师的必经之路 深入浅出JVM虚拟机
运行时数据区域程序计数器(Programn Counter Register)程序计数器是一块较小的内存空间,它可以看做是当前线程所执行的字节码的行号指示器。由于 Java 虚拟机的多线程是通过线程轮流切换并分配处理器执行时间的方式来实现的,在任何一个确定的时刻,一个处理器(对于多核处理器来说是一个内核)都只会执行一条线程中的指令。因此,为了线程切换后能恢复到正确的执行位置,每条线程都...原创 2018-08-27 17:07:08 · 225 阅读 · 0 评论 -
小编带您Volatile的详解
volatile关键字修饰的共享变量主要有两个特点:1.保证了不同线程访问的内存可见性 2.禁止重排序在说内存可见性和有序性之前,我们有必要看一下Java的内存模型(注意和JVM内存模型的区分)为什么要有java内存模型?首先我们知道内存访问和CPU指令在执行速度上相差非常大,完全不是一个数量级,为了使得java在各个平台上运行的差距减少,哪些搞处理器的大佬就在CPU上加了各种高速缓存...原创 2018-08-28 16:48:57 · 144 阅读 · 0 评论 -
小牛带你nginx反向代理中神奇的斜线
在进行nginx反向代理配置的时候,location和proxy_pass中的斜线会造成各种困扰,有时候多一个或少一个斜线,就会造成完全不同的结果,所以特地将location和proxy_pass后有无斜线的情况进行了排列组合,进行了一次完整的测试,找出原理,以提高姿势水平~〇. 环境信息两台nginx服务器nginx A: 192.168.1.48nginx B: 192.168...原创 2018-08-31 17:40:30 · 294 阅读 · 0 评论 -
Spring AOP的实现原理
AOP(Aspect Orient Programming),我们一般称为面向方面(切面)编程,作为面向对象的一种补充,用于处理系统中分布于各个模块的横切关注点,比如事务管理、日志、缓存等等。AOP实现的关键在于AOP框架自动创建的AOP代理,AOP代理主要分为静态代理和动态代理,静态代理的代表为AspectJ;而动态代理则以Spring AOP为代表。本文会分别对AspectJ和Spring A...原创 2018-09-07 20:31:21 · 133 阅读 · 0 评论 -
Spring AOP的实现原理
AOP(Aspect Orient Programming),我们一般称为面向方面(切面)编程,作为面向对象的一种补充,用于处理系统中分布于各个模块的横切关注点,比如事务管理、日志、缓存等等。AOP实现的关键在于AOP框架自动创建的AOP代理,AOP代理主要分为静态代理和动态代理,静态代理的代表为AspectJ;而动态代理则以Spring AOP为代表。本文会分别对AspectJ和Spring A...原创 2018-09-11 20:46:58 · 131 阅读 · 0 评论 -
小编带你进SimpleDateFormat-多线程问题
SimpleDateFormat-多线程问题:SimpleDateFormat类在多线程环境下中处理日期,极易出现日期转换错误的情况 1 import java.text.ParseException; 2 import java.text.SimpleDateFormat; 3 import java.util.Date; 4 5 /** 6 * 线程类 7 *...原创 2018-09-05 21:12:11 · 341 阅读 · 0 评论 -
带你进spring-集成redis
Redis是key-value存储的非关系型数据库。Spring Data Redis包含了多个模板实现,用来完成Redis数据库的数据存取功能1、如何连接Redis? Spring Data Redis提供了JedisConnectFactory连接工厂(不止这一个)<bean id="jedisConnectionFactory" class="org.spring...原创 2018-09-06 20:58:08 · 155 阅读 · 0 评论 -
小牛带你走进Spring的事务
摘要本文摘抄了Spring事务相关的一些理论,主要讲述事务的特性、事务的传播行为、事务的隔离规则。关键词:事务特性,事务传播,事务隔离一、什么是事务事务是用来保证数据的完整性和一致性,正如金钱转账,金钱总数不会增加也不会减少。数据库 事务管理有四个特性(ACID):特性描述原子性(Atomicity)事务作为一个整体被执行,要么全部被执行,要么都不执行。一致性(Consis...原创 2018-09-16 21:50:02 · 133 阅读 · 0 评论 -
Redis哨兵(sentinel)模式搭建
一、Sentinel介绍之前骚了一波Redis的简介及应用场景,今天试了下他的哨兵模式;Sentinel是Redis的高可用性(HA)解决方案,由一个或多个Sentinel实例组成的Sentinel系统可以监视任意多个主服务器,以及这些主服务器属下的所有从服务器,并在被监视的主服务器进行下线状态时,自动将下线主服务器属下的某个从服务器升级为新的主服务器,然后由新的主服务器代替已下线的主...原创 2018-10-25 19:33:24 · 185 阅读 · 0 评论