自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 资源 (2)
  • 收藏
  • 关注

原创 Netty工作原理最详细分析

本文链接:https://blog.csdn.net/Peter_Changyb/article/details/82344739Netty是Java程序员通向高阶之路必须要过的门槛之一。干了几年的Java程序员发现业务开发似乎就是在SSH的世界里摸滚打爬的时候,会开始感到迷茫,难道程序员的日子就是如此枯燥么?深入使用一下Netty,另一个世界的大门就会开始打开。枯燥的编码会渐渐变得有趣,...

2019-10-31 00:39:35 1121

原创 Netty高性能原理和框架架构解析

1、引言Netty 是一个广受欢迎的异步事件驱动的Java开源网络应用程序框架,用于快速开发可维护的高性能协议服务器和客户端。本文基于 Netty 4.1 展开介绍相关理论模型,使用场景,基本组件、整体架构,知其然且知其所以然,希望给大家在实际开发实践、学习开源项目方面提供参考。3、JDK 原生 NIO 程序的问题JDK 原生也有一套网络应用程序 API,但是存在一系列问...

2019-10-31 00:33:22 195

原创 分布式锁的实现

1、服务启动的时候,进行缓存预热2、从zk中读取taskid列表3、依次遍历每个taskid,尝试获取分布式锁,如果获取不到,快速报错,不要等待,因为说明已经有其他服务实例在预热了4、直接尝试获取下一个taskid的分布式锁5、即使获取到了分布式锁,也要检查一下这个taskid的预热状态,如果已经被预热过了,就不再预热了6、执行预热操作,遍历productid列表,查询数据,然...

2019-10-13 17:49:30 149

原创 mybatis常一标签及用法

自动增长:一、selectKey二、截取用法trim prefix="" suffix="" suffixOverrides="" prefixOverrides=""></trim>prefix:在trim标签内sql语句加上前缀。suffix:在trim标签内sql语句加上后缀。suffixOverrides:指定去除多余的后缀内容,如:suffixOverr...

2018-10-25 11:36:42 157

原创 shiro框架从入门到精通(一)

今天刚接触shiro框架,以前也看到过,只是没有去学习,今天接触一下,感觉还是很容易的,先就让我们一步步探讨,看看shiro怎么用,我们为什么要用shiro,它能给我们带来了什么好处。一、先学会怎么样使用shiro:本人观点,学知道,再使用,然后精通,因为此框架比较简单,那么让我们直接进入前面两步骤。二、shiro 能做什么声明:本文纯属个人理解    shiro 是一个权限管...

2018-10-25 11:06:02 1360

原创 MySQL8.0.12 安装及配置

一.安装1.从网上下载MySQL8.0.12版本,下载地址:https://dev.mysql.com/downloads/mysql/ 2. 下载完成后解压        我解压的路径是:D:\Java\mysql-8.0.12-winx643. 配置文件        首先在解压的路径下查看是否含有my.ini的文件,如果没有则新建一个,内容如下:    [mysqld]...

2018-10-24 19:34:01 144

原创 如何正确而优雅的终止运行中的线程

一、使用volatile [ˈvɑ:lətl] (不稳定的)标志位首先,实现一个Runnable接口,在其中定义volatile标志位,在run()方法中使用标志位控制程序运行。public class MyRunnable implements Runnable {   //定义退出标志,true会一直执行,false会退出循环 //使用volatile目的是保证可见性,一处修改了...

2018-08-08 17:03:55 695

转载 RPC原理及实现

转载地址:http://my.oschina.net/xianggao/blog/6349681 简介RPC 的主要功能目标是让构建分布式计算(应用)更容易,在提供强大的远程调用能力时不损失本地调用的语义简洁性。为实现该目标,RPC 框架需提供一种透明调用机制让使用者不必显式的区分本地调用和远程调用。2 调用分类RPC 调用分以下两种:同步调用客户方等待调用执行完成并返回结果。异步调用客户方调用后...

2018-05-30 11:12:54 6702 4

转载 springboot零基础搭建

最近在学习微服务,然后想来学习下springBoot,下面是到网上看到的零基础搭建boot,除了有个别小错误外,基本能顺利搭建成功,本人看这篇文章,花了将近2个小时完成,有兴趣的可以试着搭建一下。昨天搭建ssm框架时突然想到可以搭建springboot来完美解决配置复杂的问题,今天学习了一下springboot的搭建,在此记录一下搭建的过程和踩过的坑这里给自己定一个该框架搭建完成的目标,如下 框架...

2018-05-29 18:40:28 252

原创 开发常见问题

一、无法删除sql行问题:存在行锁SELECT s.sid,s.serial# FROM v$locked_object lo ,dba_objects ao, v$session s WHERE ao.object_id = lo.object_id AND lo.session_id = s.sid; ALTER SYSTEM KILL SESSION'580,52051';...

2018-03-20 14:18:53 179

原创 Error configuring application listener of class org.springframework.web.context.ContextLoade

解决方案:1. 打开工程属性对话框,到Deployment Assembly页面,点击Add2. 选择Jave Build Path Entries3. 把程序用于的Library加入进来4. 重新运行Server应该看不到这个问题了

2018-02-01 18:56:24 232 2

原创 页面不刷新

今天用SpringMVC搭框架,遇到一个很奇葩的问题,修改页面时,页面没有刷新。clear下项目也不行,每次都要重新启动tomcat才生效,但是查看Tomcat里,发现tomcat已经编译,换了工作空间还是不行,然后就开始思考,这肯定是springMvc框架的原因,肯定是某个地方有缓存或者延迟检查。然后又开始对照自己的配置一个个去弄明白,果然发现是freemarker 缓存设置(开始的时候设置的是

2017-10-11 18:57:23 664 1

转载 深入理解Spring的事务管理

Spring事务管理(详解+实例)时间:2016-03-26 07:04:31      阅读:120925      评论:0      收藏:5      [点我收藏+] 标签:写这篇博客之前我首先读了《Spring in action》,之后在网上看了一些关于Spring事务管理的文章,感觉都没有讲全,这里就将书上的和网上关于事务的知识总结一下,参考的文章如下:

2017-10-11 11:55:22 230

原创 Java对象的创建方式及其区别

做一件事,首先要明白是做什么,我们为什么要创建对象?创建对象都是在heap里面的分配内存。一、直接new(ClassObj  obj = new ClassObj();)      我们常用的创建方法就是new  object();  这个关键地方肯定是 new 关键字。二、运用反射手段,调用Java.lang.Class或者java.lang.reflect.Constructor类

2017-10-09 11:41:58 753

原创 悲观锁和乐观锁的区别

一、概念:悲观所:顾名思义,所谓的悲观锁就是很悲观的意思。他对世界很悲观,每次去拿数据或者访问的时候都认为别人会改变这数据,于是它就给他锁住,这样别人想拿这个数据就会block直到释放锁。防止正在数据读取的时候数据被修改。乐观锁:乐观锁对世界很乐观,他认为访问概率很低,也就是说他会把所以的准备工作都做好后直到修改数据库时才会将数据锁住。完成更新后释放锁。记忆:简单的说就是:乐观

2016-11-29 15:13:36 1689

原创 MQ、JMS以及ActiveMQ 关系的理解

MQ、JMS以及ActiveMQ 关系的理解 最近刚刚完成了一个项目,基于阿里MQ的分布式框架,现在先总结下消息,后续会修改和总结分布式。阿里MQ消息参考文档:https://help.aliyun.com/document_detail/29546.html?spm=5176.doc29553.6.106.XqtyeT.ms 的一个标准或者说是一个协议.  通常用

2016-11-28 21:55:21 5621 1

原创 深入了解Spring

这篇博文你可以了解到:  1 Spring jar包以及源码使用  2 简单的spring运行示例  3 利用断点调试程序,如何快速的阅读程序【快捷键等的使用】      4  spring的作用和优点  这次阅读的源码比较老了,是3.0.5版本的,由于正好手头有这个版本的源码,而且平时基本上也是用的这个版本Spring,因此后文的分析也都是针对这个版本。  下面贡献一

2016-10-06 11:12:46 518

原创 笔记

1、mydata97日历空间限制时间:

2016-08-30 19:02:27 258

原创 一个很简单的Jqery弹出框

function playVoide(obj){    var video = $(obj).attr("value");    var width = $("#content").width();    var height =  $("#content").height()-50;    var tit = "查看视频内容";    var path ="";    v

2016-08-23 20:09:46 403

原创 Jqery实现简单分页

var pageNo = 1;  //初始页码var pageSize = 20;  //页容量,每页显示条数(function($){    var ms = {        init:function(obj,args){            return (function(){                ms.fillHtml(obj,args);

2016-08-23 20:06:24 379

转载 jqery身份证有效验证

function checkIdcard(idcard){         var Errors=new Array(     "验证通过!",     "身份证号码位数不对!",     "身份证号码出生日期超出范围或含有非法字符!",     "身份证号码校验错误!",     "身份证地区非法!"     );     var area={11:"北京",

2016-08-23 20:00:42 335

原创 freemar对date类型处理

${(foundDate?string("yyyy-MM-dd"))!}

2016-08-10 13:35:19 420

原创 freemarke数据类型处理

操作字符串函数  1. substring(start,end)从一个字符串中截取子串  start:截取子串开始的索引,start必须大于等于0,小于等于endend: 截取子串的长度,end必须大于等于0,小于等于字符串长度,如果省略该参数,默认为字符串长度。例子:${‘str’?substring(0)} 结果为str  ${‘str’?sub

2016-08-10 12:40:05 417

转载 Dubbo分布式服务框架

最近项目用到Dubbo框架,临时抱佛脚分享一下共探讨。 南京招聘会玩或想玩dubbo的程序员,联系我 50625185 地址:江苏软件园29栋西2011. Dubbo是什么?Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。简单的说,dubbo就是个服务框架,如果没有分布式的需求,其实是不需要用的,只有在分布式的时候,才有dubb

2016-07-25 17:17:18 509

原创 生产验证码

Java服务器端public class ValidateCodeController extends WebAbstractController {    @RequestMapping(method = { RequestMethod.GET, RequestMethod.POST })    public void vali(HttpSession session, Http

2016-07-25 16:54:59 2465

原创 60秒重发验证码

验证码:                          //发送验证码var countdown=60; function settime(val) {    var cout = 1; //记录次数    if (countdown == 0) {         val.removeAttribute("disabled");    

2016-07-21 15:49:50 1961

原创 Js各种正则表达试验

// 验证中文名称function isChinaName(name) { varpattern = /^[\u4E00-\u9FA5]{1,6}$/; returnpattern.test(name);} // 验证手机号function isPhoneNo(phone) {  varpattern = /^1[34578]\d{9}$/;

2016-07-15 09:12:36 253

转载 数据库多表连接查询

数据库多表连接查询学习数据库查询的时候对多表连接查询的有些概念还比较模糊。而连接查询是在数据库查询操作的时候肯定要用到的。对于此概念 我用通俗一些的语言和例子来进行讲解。这个例子是我讲课的时候经常采用的例子。 首先我们做两张表:员工信息表和部门信息表,在此,表的建立只为讲述连接的概念,所以字段非常的简单 EmployeeTB(员工信息表): employeeid emplo

2016-07-14 09:55:53 384

转载 sql查询总结

一、简单查询语句1. 查看表结构SQL>DESC emp;2. 查询所有列SQL>SELECT * FROM emp;3. 查询指定列SQL>SELECT empmo, ename, mgr FROM emp;SQL>SELECT DISTINCT mgr FROM emp; 只显示结果不同的项4. 查询指定行SQL>SELECT * FROM emp WHER

2016-07-06 09:49:06 312

转载 SpringMVC中的Interceptor拦截器

SpringMVC中的Interceptor拦截器也是相当重要和相当有用的,它的主要作用是拦截用户的请求并进行相应的处理。比如通过它来进行权限验证,或者是来判断用户是否登陆,或者是像12306那样子判断当前时间是否是购票时间。   一、定义Interceptor实现类   SpringMVC中的Interceptor拦截请求是通过HandlerInterceptor来实现的。在Spring

2016-07-04 18:43:02 287

转载 Spring cache 缓存介绍

注释驱动的 Spring cache 缓存介绍介绍 spring 3.1 激动人心的新特性:注释驱动的缓存,本文通过一个简单的例子进行展开,通过对比我们原来的自定义缓存和 spring 的基于注释的 cache 配置方法,展现了 spring cache 的强大之处,然后介绍了其基本的原理,扩展点和使用场景的限制。通过阅读本文,你可以短时间内掌握 spring 带来的强大缓存技术,在很

2016-06-28 16:04:01 3344

转载 ssm框架

使用SSM(Spring、SpringMVC和Mybatis)已经有三个多月了,项目在技术上已经没有什么难点了,基于现有的技术就可以实现想要的功能,当然肯定有很多可以改进的地方。之前没有记录SSM整合的过程,这次刚刚好基于自己的一个小项目重新搭建了一次,而且比项目搭建的要更好一些。以前解决问题的过程和方法并没有及时记录,以后在自己的小项目中遇到我再整理分享一下。这次,先说说三大框架整合过程。个人认

2016-06-28 14:03:07 602 1

原创 项目总结

做了近两年的java开发,在这其中做了两个月的iOS,做的一些比较常规的功能和技术难度现在会慢慢的总结从来。1、发送电子邮件 2、加密文件 3、自动上传文件 这三个功能是在一个产品公司做的,算是新的开端吧。4聊天系统   5、支付    6推送     7短信接口     8地图热点  定位   这功能是在一家外包公司做的,每个系统都是自己独立开发完成,很多细节东西,以后会慢慢的抽空逐一总结和分享

2016-06-27 18:58:54 243

eshop-cache.rar

zookeeper分布式锁的实现 1、服务启动的时候,进行缓存预热 2、从zk中读取taskid列表 3、依次遍历每个taskid,尝试获取分布式锁,如果获取不到,快速报错,不要等待,因为说明已经有其他服务实例在预热了 4、直接尝试获取下一个taskid的分布式锁 5、即使获取到了分布式锁,也要检查一下这个taskid的预热状态,如果已经被预热过了,就不再预热了 6、执行预热操作,遍历productid列表,查询数据,然后写ehcache和redis 7、预热完成后,设置taskid对应的预热状态

2019-10-13

电影院售票系统

电影院售票系统演示

2015-03-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除