
技术
文章平均质量分 76
CCUTwangning
不滞于物,草木竹石均可为剑。自此精修,渐进于无剑胜有剑之境!
展开
-
推荐分布式开放消息系统(RocketMQ)的原理与实践链接
分布式开放消息系统(RocketMQ)的原理与实践这篇文章,让我一个从未接触过Mq的小白,茅塞顿开。贴出链接跟大家分享RocketMQ作为阿里开源的一款高性能、高吞吐量的消息中间件,它是怎样来解决这两个问题的?RocketMQ 有哪些关键特性?其实现原理是怎样的?http://www.jianshu.com/p/453c6e7ff81c#原创 2017-01-02 09:41:19 · 2135 阅读 · 0 评论 -
Spring学习(九)使用ioc注解方式配置bean
context层 : 上下文环境/容器环境 applicationContext.xml1 ioc注解功能 注解 简化xml文件配置 如 hibernate 映射文件 ioc注解 简化 ioc容器的配置 1 bean对象定义过程 @Component 该注解用于标注一个类转载 2017-02-13 14:50:19 · 481 阅读 · 0 评论 -
从零开始学spring-理解IOC
对spring有所了解的都应该知道,spring贯穿始终的两个重要的思想,一个是IOC(控制反转),一个是DI(依赖注入),对于新手而言,这两个概念比较难理解,我用自己的想法来解释下首先我们要知道在程序开发中为什么要使用spring框架。这里先引入两个概念:耦合性、侵入性。简单的讲:耦合性,在Java中表现为类之间的关系,耦合性强说明类之间的依赖关系强;侵入性:框架对代码的侵入,比转载 2017-02-04 09:34:47 · 561 阅读 · 0 评论 -
volatile与synchronized的区别
1、锁提供了两种主要特性:互斥(mutual exclusion) 和可见性(visibility)。 互斥即一次只允许一个线程持有某个特定的锁,因此可使用该特性实现对共享数据的协调访问协议,这样,一次就只有一个线程能够使用该共享数据。 可见性要更加复杂一些,它必须确保释放锁之前对共享数据做出的更改对于随后获得该锁的另一个线程是可见的 —— 如果没有同步机制提供的这种可见性保证,线程看原创 2017-03-10 14:45:04 · 437 阅读 · 0 评论 -
OSI七层模型详解
OSI7层模型的小结由于OSI是一个理想的模型,因此一般网络系统只涉及其中的几层,很少有系统能够具有所有的7层,并完全遵循它的规定。在7层模型中,每一层都提供一个特殊的网络功能。从网络功能的角度观察:下面4层(物理层、数据链路层、网络层和传输层)主要提供数据传输和交换功能,即以节点到节点之间的通信为主;第4层作为上下两部分的桥梁,是整个网络体系结构中最关键的部分;而上3层(会话层、表示层和原创 2017-03-13 08:59:09 · 1173 阅读 · 0 评论 -
datetimepicker用法总结-设置控件只能选择一个月之内的日期
最近写代码遇到一个需求,时间控件开始时间只能选择当前时间之前的一个月的,截止时间不能超过当前时间,搞了好久今天天贴出来 跟大家分享,顺便总结一下datetimepicker的用法,主要注意startDate属性$("#startDate").datetimepicker({ language: 'zh-CN', format: "yyyy-mm原创 2017-03-13 16:12:37 · 20805 阅读 · 1 评论 -
spring boot 学习
今天学习了 自己搭建了 一下Spring boot ,觉得非常有意思,在这分享给大家,推荐给大家几个参考链接,本人全部实践过,如果大家搭建过程中,遇到什么问题,可以给我评论,我会给大家解答。 参考链接1:初识Spring Boot (在Intellij中搭建Spring Boot) 参考链接2:使用Spring Boot开发Web项目 参考链接3原创 2017-03-17 15:33:16 · 1288 阅读 · 0 评论 -
emoji 表情不能存入mysql 数据库和在jsp 页面显示的处理
问题1处理办法1、1.MySQL数据库需要设置支持emoji编码为utf8mb4,2、对象表和字段也需要设置成utf8mb4,并重启mysql2、将emoji unicoude 进行URLencoder 进行编码,用的时候再进行URLDecoder 进行解码问题2 处理办法在jsp页面显示,没有微信提供的emoji显示能力,给大家提供一个demo,利用js正则表原创 2017-04-19 10:55:23 · 1846 阅读 · 0 评论 -
spring 事务的隔离级别和传播属性
五个事务隔级别分别为:lsolation的属性值1,default默认的事务隔离级别2,read_uncommitted读未提交,一个事务可以操作另外一个未提交的事务,不能避免脏读,不可重复读,幻读,隔离级别最低,并发性 能最高3,read_committed读已提交,一个事务不可以操作另外一个未提交的事务, 能防止脏读,不能避免不可重复读,幻读。4,repeatabl原创 2017-04-20 15:06:59 · 502 阅读 · 0 评论 -
RocketMQ服务端组件介绍
RocketMQ服务端的组件有三个,NameServer,Broker,FilterServer(可选,部署于和Broker同一台机器)Name ServerName Server是RocketMQ的寻址服务。用于把Broker的路由信息做聚合。客户端依靠Name Server决定去获取对应topic的路由信息,从而决定对哪些Broker做连接。Name Ser原创 2017-04-20 18:09:04 · 1254 阅读 · 1 评论 -
推荐一篇springBoot+Dubbo+Zookerper搭建好文章
Springboot 整合 Dubbo/ZooKeeper 详解 SOA 案例摘要: 原创出处:www.bysocket.com 泥瓦匠BYSocket 希望转载,保留摘要,谢谢! 原文链接:http://www.cnblogs.com/Alandre/p/6490142.html本人亲测,原创 2017-06-01 16:23:37 · 3492 阅读 · 0 评论 -
mybatis 防止 sql 注入 和 mybatis 的预编译
今天在项目中遇到了,老项目中 用 jdbc template 实现的sql 中出现sql注入的情况检查了一下 自己所用的mybatis 会不会有这种情况,收货颇丰,在这跟大家分享一下sql注入大家都不陌生,是一种常见的攻击方式,攻击者在界面的表单信息或url上输入一些奇怪的sql片段,例如“or ‘1’=’1’”这样的语句,有可能入侵参数校验不足的应用程序。所以在我们的应转载 2017-06-14 11:33:11 · 9060 阅读 · 0 评论 -
elasticsearch 分页遇到的坑
最近项目比较忙,好久没写博客了,今天跟大家分享一个在项目中遇到的es 的坑es java api 中的from + size 分页 当from 超过10000 的时候 会抛异常,看了这篇文章恍然大悟,分享给大家!使用scroll实现Elasticsearch数据遍历和深度分页 http://www.jianshu.com/p/627887e3eea3原创 2017-08-03 19:21:59 · 2889 阅读 · 0 评论 -
最详细的quartz表达式解释
3.1 Cron 表达式包括以下 7 个字段: 秒 分 小时 月内日期 月 周内日期 年(可选) 3.2 特殊字符 0 * * ? * 4 / 表示增量值 (例如,在秒字段中“5/15”代表从第 5 秒开始,每 15 秒一次) ? L 只有在月内日期和周内日期字段中可用 ?表示这个字段不包含具体值。所以,如果指定月内日期,可以在周内日期字段原创 2017-02-14 09:41:41 · 2267 阅读 · 1 评论 -
Spring学习(十)spring mvc入门
一、spring mvc和spring的关系spring mvc是spring框架提供的七层体系架构中的一个层,是spring框架的一部分,是spring用于处理客户端请求的MVC工具,取代表现层框架struts1/2。在使用时,spring mvc和spring框架的使用方式是相互独立的。spring mvc是脱离了spring框架的单独的表现层框架二、如何在web工程中添加sp转载 2017-02-13 16:33:28 · 460 阅读 · 0 评论 -
深入理解乐观锁与悲观锁
在数据库的锁机制中介绍过,数据库管理系统(DBMS)中的并发控制的任务是确保在多个事务同时存取数据库中同一数据时不破坏事务的隔离性和统一性以及数据库的统一性。乐观并发控制(乐观锁)和悲观并发控制(悲观锁)是并发控制主要采用的技术手段。无论是悲观锁还是乐观锁,都是人们定义出来的概念,可以认为是一种思想。其实不仅仅是关系型数据库系统中有乐观锁和悲观锁的概念,像memcache、hibernat转载 2016-12-07 14:08:46 · 4478 阅读 · 1 评论 -
Java中synchronized的用法
synchronized是Java中的关键字,是一种同步锁。它修饰的对象有以下几种:1. 修饰一个代码块,被修饰的代码块称为同步语句块,其作用的范围是大括号{}括起来的代码,作用的对象是调用这个代码块的对象;2. 修饰一个方法,被修饰的方法称为同步方法,其作用的范围是整个方法,作用的对象是调用这个方法的对象;3. 修改一个静态的方法,其作用的范围是整个静态方法,作用的对象是这个类的所有转载 2016-12-01 15:36:48 · 372 阅读 · 0 评论 -
DispatcherServlet详解
DispatcherServlet是前端控制器设计模式的实现,提供spring Web MVC的集中访问点,而且负责职责的分派,而且与Spring IoC容器无缝集成,从而可以获得Spring的所有好处。 具体请参考第二章的图2-1。DispatcherServlet主要用作职责调度工作,本身主要用于控制流程,主要职责如下:1、文件上传解析,如果请求类型是multipart将通过Mul转载 2016-11-17 16:27:39 · 520 阅读 · 0 评论 -
Java虚拟机学习(1):体系结构 内存模型
一:Java技术体系模块图二:JVM内存区域模型1.方法区也称”永久代” 、“非堆”, 它用于存储虚拟机加载的类信息、常量、静态变量、是各个线程共享的内存区域。默认最小值为16MB,最大值为64MB,可以通过-XX:PermSize 和 -XX:MaxPermSize 参数限制方法区的大小。运行时常量池:是方法区的一部分,Class文件中除了有类的版本、字段、方法、接转载 2016-11-11 13:45:34 · 429 阅读 · 0 评论 -
Java虚拟机学习(2):垃圾收集算法
跟踪收集器跟踪收集器采用的为集中式的管理方式,全局记录对象之间的引用状态,执行时从一些列GC Roots的对象做为起点,从这些节点向下开始进行搜索所有的引用链,当一个对象到GC Roots 没有任何引用链时,则证明此对象是不可用的。下图中,对象Object6、Object7、Object8虽然互相引用,但他们的GC Roots是不可到达的,所以它们将会被判定为是可回收的对象。可转载 2016-11-11 14:31:33 · 434 阅读 · 0 评论 -
Java虚拟机学习(3): 类加载机制
类加载机制JVM把class文件加载的内存,并对数据进行校验、转换解析和初始化,最终形成JVM可以直接使用的Java类型的过程就是加载机制。类从被加载到虚拟机内存中开始,到卸载出内存为止,它的生命周期包括了:加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Initialization)、使用(Using)、卸载转载 2016-11-14 16:57:18 · 439 阅读 · 0 评论 -
Java虚拟机学习(4):JDK可视化监控工具
1.JConsoleJConsole工具在JDK/bin目录下,启动JConsole后,将自动搜索本机运行的jvm进程,不需要jps命令来查询指定。双击其中一个jvm进程即可开始监控,也可使用“远程进程”来连接远程服务器。进入JConsole主界面,有“概述”、“内存”、“线程”、“类”、“VM摘要”和”Mbean”六个页签:内存页签相当于jstat命令,用于监视收集器管理的虚转载 2016-11-15 16:53:08 · 453 阅读 · 0 评论 -
java模拟发送http的get、post请求
public class HttpRequest { /** * 向指定URL发送GET方法的请求 * * @param url * 发送请求的URL * @param param * 请求参数,请求参数应该是 name1=value1&name2=value2 的形式。 *原创 2017-01-13 09:37:13 · 581 阅读 · 0 评论 -
JDK7与JDK8中HashMap的实现的区别
JDK7中的HashMapHashMap底层维护一个数组,数组中的每一项都是一个Entrytransient Entry[] table;我们向 HashMap 中所放置的对象实际上是存储在该数组当中;而Map中的key,value则以Entry的形式存放在数组中static class Entry implements Map.Entry { fina原创 2017-01-19 15:15:18 · 2180 阅读 · 0 评论 -
Spring学习(二)spring ioc注入的三种方式
一、spring ioc注入有哪三种方式:a setter 原理 : 在目标对象中,定义需要注入的依赖对象对应的属性和setter方法;“让ioc容器调用该setter方法”,将ioc容器实例化的依赖对象通过setter注入给目标对象,封装在目标对象的属性中。b 构造器 原理 : 为目标对象提供一个构造方法,在构造方法中添加一个依赖对象对应的参数。i转载 2017-02-13 11:18:55 · 1634 阅读 · 0 评论 -
Spring学习(三)ioc工厂bean深入理解
我所理解的工厂bean:我们在使用ioc容器形成类之间的依赖关系,也就是在配置文件中配置bean的时候,一般是class指向的是实体bean类,通过ref将另外一个bean对象注入到这个类中。如下图示:这里圆圈里面的就是一个类,所以这个id为action的bean对象可以直接通过ref注入别的类中。然而当我们要注入一个接口,这个接口没有实现类的时候就不能这样操作了。因为无法实例转载 2017-02-13 11:42:02 · 469 阅读 · 0 评论 -
Spring学习(七)spring整合mybatis
相对于mybatis的平常写法,spring中在使用mybatis时,不需要mybatis-config.xml配置,以及MybatisFactory工厂,在applicationContext.xml中配置即可。还是使用上次的案例:mybatis传送门->工厂bean不理解的点这里->附上applicationContext.xml:<beans xmlns="h转载 2017-02-13 13:53:15 · 525 阅读 · 0 评论 -
JDK源码解读 HashSet
//继承了AbstractSet抽象类,实现了Set接口,在HashMap基础上实现了Set的操作,源码比较简单 public class HashSet<E> extends AbstractSet<E> implements Set<E>, Cloneable, java.io.Serializable { //内部存储结构,通过HashMap来存储转载 2017-12-06 16:54:27 · 349 阅读 · 0 评论