自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 收藏
  • 关注

转载 JAVA bean为何要实现序列化

  简而言之:序列化,就是为了在不同时间或不同平台的JVM之间共享实例对象。即序列化出于两个原因:①、用于持久化到磁盘上;②、用于作为数据流在网络上传输。  所谓的Serializable,就是java提供的通用数据保存和读取的接口。至于从什么地方读出来和保存到哪里去,都被隐藏在函数参数的背后了。这样,任何类型只要实现了Serializable接口,就可以被保存到文件中,或者作为数据...

2019-03-31 16:36:00 152

转载 mysql中给查询结果添加序号列

今天同事给了一个小需求,从一个存有不定数量坐标数据的表(map_trace)中每隔20条取一条。最后写了下面这条SQL:  select * from (select @n:=@n+1 as n, a.* from (select * from map_trace order by CREATE_time desc)a,(select @n:=0)b)c where c.n%20&l...

2019-03-31 16:17:00 381

转载 生产问题之StackOverflowError异常小记

  印象中,这是项目中首次遇到 StackOverflowError,在此做个笔记。  (吃饭回来写)  ……  吃饭回来后,尝试把代码回退来分析异常产生原因,然而却无法复现这个栈溢出异常……醉了  有缘再见再写吧-------------------------------------------------  索性做点栈溢出相关知识点笔记吧:StackO...

2019-03-28 14:24:00 155

转载 Linux下DB2指令总结

1、显示当前实例>> get instanceThe current database manager instance is: db2axing2、列出当前实例中激活的数据库>> list active databases Active Databases Database name ...

2019-02-02 15:29:00 149

转载 简单理解TCP/IP协议

一、什么是TCP/IP  TCP/IP是一个协议族,是因为TCP/IP协议包括TCP、IP、UDP、ICMP、RIP、TELNETFTP、SMTP、ARP、TFTP等许多协议,这些协议一起称为TCP/IP协议。通信类似于语言的沟通,可以把协议理解为语言沟通,大家都说中文,咱们两个人能够互相交流。  TCP/IP协议族按照层次分为链路层、网络层、传输层、应用层四个层次。(与TCP/...

2018-10-13 17:48:00 262

转载 多线程内容总结

一、线程的生命周期及五种基本状态:  关于Java中线程的生命周期,首先看一下下面这张较为经典的图:  新建状态(New):当线程对象对创建后,即进入了新建状态,如:Thread t = new MyThread();  就绪状态(Runnable):当调用线程对象的 start() 方法(t.start();),线程即进入就绪状态。处于就绪状态的线程,只是说明...

2018-08-30 20:05:00 129

转载 Linux Redis集群搭建与集群客户端实现

redis集群实现方案:  关于redis的集群化方案 目前有三种   (1)Twitter开发的twemproxy   (2)豌豆荚开发的codis   (3)redis官方的redis-cluster  简介:twemproxy架构简单 就是用proxy对后端redis server进行代理 但是由于代理层的消耗性能很低 而且通常涉及多个key的操作都是不支持的 ...

2018-08-28 11:28:00 115

转载 Redis持久化之RDB&AOF

  在说Redis持久化之前,需要搞明白什么是数据库状态,因为持久化就是将内存中的数据库状态保存到磁盘上。那么什么是数据库状态呢?Redis是一个key-value数据库服务器,一般默认有16个数据库,可以使用select <index>命令进行切换(0-15),这每个非空的数据库又可以包含任意多个键值对,为了方便起见,我们将数据库服务器中的非空数据库以及它们的键值对通常为数...

2018-08-27 21:29:00 92

转载 Redis分布式锁实现秒杀业务(乐观锁、悲观锁)

一、业务场景  所谓秒杀,从业务角度看,是短时间内多个用户“争抢”资源,这里的资源在大部分秒杀场景里是商品;将业务抽象,技术角度看,秒杀就是多个线程对资源进行操作,所以实现秒杀,就必须控制线程对资源的争抢,既要保证高效并发,也要保证操作的正确。二、一些可能的实现  刚才提到过,实现秒杀的关键点是控制线程对资源的争抢,根据基本的线程知识,可以不加思索的想到下面的一些方法:...

2018-08-23 11:26:00 646

转载 Redis实现分布式锁

  目前几乎很多大型网站及应用都是分布式部署的,分布式场景中的数据一致性问题一直是一个比较重要的话题。分布式的CAP理论告诉我们“任何一个分布式系统都无法同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance),最多只能同时满足两项。”所以,很多系统在设计之初就要对这三者做出取舍。在互联网领域的绝大多数的场景中,都...

2018-08-23 11:16:00 86

转载 分布式锁

  在单进程的系统中,当存在多个线程可以同时改变某个变量时,就需要对变量或代码块做同步,使其在修改这种变量时能够线性执行消除并发修改变量。而同步的本质是通过锁来实现的。为了实现多个线程在一个时刻同一个代码块只能有一个线程可执行,那么需要在某个地方做个标记,这个标记必须每个线程都能看到,当标记不存在时可以设置该标记,其余后续线程发现已经有标记了则等待拥有标记的线程结束同步代码块取消标记后再...

2018-08-22 19:00:00 72

转载 并发编程的锁机制:synchronized和lock

1. 锁的种类  锁的种类有很多,包括:自旋锁、自旋锁的其他种类、阻塞锁、可重入锁、读写锁、互斥锁、悲观锁、乐观锁、公平锁、可重入锁等等,其余就不列出了。我们重点看如下几种:可重入锁、读写锁、可中断锁、公平锁。1.1 可重入锁  如果锁具备可重入性,则称作为可重入锁。synchronized和ReentrantLock都是可重入锁,可重入性在我看来实际上表明了锁的分配机制:基...

2018-08-21 21:52:00 69

转载 Redis内存使用优化与存储

常用内存优化手段与参数  我们知道Redis实际上的内存管理成本非常高,即占用了过多的内存,所以我们讨论通过一系列的参数和手段来控制和节省内存。  首先最重要的一点是不要开启Redis的VM选项,即虚拟内存功能,这个本来是作为Redis存储超出物理内存数据的一种数据在内存与磁盘换入换出的一个持久化策略,但是其内存管理成本也非常的高,并且我们后续会分析此种持久化策略并不成熟,所以要...

2018-08-21 21:14:00 72

转载 Redis五种数据类型及应用场景

  MySql+Memcached架构的问题  实际MySQL是适合进行海量数据存储的,通过Memcached将热点数据加载到cache,加速访问,很多公司都曾经使用过这样的架构,但随着业务数据量的不断增加,和访问量的持续增长,我们遇到了很多问题:  1.MySQL需要不断进行拆库拆表,Memcached也需不断跟着扩容,扩容和维护工作占据大量开发时间。  2.Memcach...

2018-08-21 21:03:00 81

转载 linux知识点总结

一、Linux树状目录结构:二、linux查询某个程序的某个进程的id?  PID 代表进程标识号process identification,它在大多数操作系统内核(如 Linux、Unix、macOS 和 Windows)中使用。它是在操作系统中创建时自动分配给每个进程的唯一标识号。一个进程是一个正在运行的程序实例。  除了 init 进程外,其他所有的进程 I...

2018-08-21 20:13:00 164

转载 多线程相关

1.为何要使用同步?Java允许多线程并发控制,当多个线程同时操作一个可共享资源变量时(如数据的增删改查),将会导致数据不准确,相互之间产生冲突,因此加入同步锁以避免在该线程没有完成操作之前,被其他线程的调用,从而保证了该变量的唯一性和准确性。2、同步的方式  ①同步方式即有synchronized关键字修改的方法。由于Java的每个对象都有一个内置锁,当用此...

2018-07-26 14:10:00 68

转载 DB2中常见sqlCode原因分析

000 | 00000 | SQL语句成功完成01xxx | SQL语句成功完成,但是有警告+012 | 01545 | 未限定的列名被解释为一个有相互关系的引用+098 | 01568 | 动态SQL语句用分号结束+100 | 02000 | 没有找到满足SQL语句的行+110 | 01561 | 用DATA CAPTURE定义的表的更新操作不能发送到原来的子系统+111 ...

2018-06-01 16:33:00 414

转载 轻松理解AOP思想(面向切面编程)

本文旨在帮助还没有理解AOP的童鞋看透弄懂AOP,也欢迎高手批评指正。先说一个Spring是什么吧,大家都是它是一个框架,但框架这个词对新手有点抽象,以致于越解释越模糊,不过它确实是个框架的。但那是从功能的角度来定义的,从本质意义上来讲,Spring是一个库,一个Java库。所以我个人觉得应该这样回答Spring是什么:Spring是一个库,它的功能是提供了一个软件框...

2018-05-25 16:33:00 71

转载 说说Runnable与Callable

Callable接口:1 public interface Callable<V> {2 V call() throws Exception;3 }Runnable接口:public interface Runnable { public abstract void run();}相同点:两者都是接口;(废...

2018-04-28 09:15:00 60

转载 SSM框架中IoC、DI与AOP的理解

  框架封装了普通项目中程序员需要重复书写的代码和调用过程,就比如说在传统的jsp项目中,我们的controller接收到前端的请求然后程序员就需要去开发Dao层,里面还涉及数据库的连接和存储过程的代码,大部分都是冗余的代码,而有了SSM框架后极大的简化了程序猿在controller以下层的开发,只需要一个service层和mapper层就行了,mapper层用来连接mapper.xml...

2018-04-26 16:20:00 384

转载 SpringMVC的工作原理及MVC设计模式

SpringMVC的工作原理:  1、当用户在浏览器中点击一个链接或者提交一个表单时,那么就会产生一个请求(request)。这个请求会携带用户请求的信息,离开浏览器。  2、这个请求会首先到达Spring的DispatcherServlet(就是前端控制器),工作是将用户的请求委托给其他的组件(这里是交给SpringMVC的控制器)去处理。此时根据SpringMVC中是否存...

2018-04-26 11:38:00 294

转载 Spring各jar包的作用

  spring.jar是包含有完整发布的单个jar 包,spring.jar中包含除了spring-mock.jar里所包含的内容外其它所有jar包的内容,因为只有在开发环境下才会用到 spring-mock.jar来进行辅助测试,正式应用系统中是用不得这些类的。    除了spring.jar文件,Spring还包括有其它13个独立的jar包,各自包含着对应的Spring组...

2018-04-25 23:49:00 57

转载 SSM三大框架详细整合流程

1、基本概念1.1、Spring Spring是一个开源框架,Spring是于2003年兴起的一个轻量级的Java开发框架,由RodJohnson在其著作ExpertOne-On-OneJ2EEDevelopmentandDesign中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来...

2018-04-25 22:19:00 180

转载 前端页面显示时间格式化问题

问题:前端页面获取到时间数据后显示出:“Thu Apr 19 08:37:23 CST 2018”格式,显示效果不友好,欲将其转换为“yyyy-mm-dd hh:mm:ss”格式。解决方案:1 <!-- 添加标签 -->2 <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %&g...

2018-04-21 10:43:00 506

转载 MyBatis:Parameter Maps collection does not contain value for 的问题解决

Result Maps collection does not contain value for frontpreviewprofitManage.cdata出现上述错误 主要是因为你的select标签内部的resultMap属性指向的不正确在sql文件中只要有一个resultMap或resultType属性指向错误,则在这个文件中其余正确的语句也不能执行,所以在...

2018-04-21 10:06:00 138

转载 Java集合及Concurrent并发包总结

1.集合包  集合包最常用的有Collection和Map两个接口的实现类,Colleciton用于存放多个单对象,Map用于存放Key-Value形式的键值对。  Collection中最常用的又分为两种类型的接口:List和Set,两者最明显的差别为List支持放入重复的元素,而Set不支持。  List最常用的实现类有:ArrayList、LinkedList、Vect...

2018-04-20 17:56:00 46

转载 eclipse 常用快捷键

1、Eclipse常用快捷键 1 Ctrl + F:在当前类中搜索摸一个单词将其替换为另外一个单词 2 Ctrl + L:定位到当前编辑器的某一行(即显示当前行所在类的行数) 3 Ctrl + H: 进行全局搜索和局部搜索 4 Ctrl + Shift + R:查找构建路径重点的所有文件,包含任何文件 5 Ctrl + Shift + F:格式...

2018-04-19 16:34:00 46

转载 乐观锁和 MVCC 的区别?

  二者不是一个层面的东西。  MVCC(Multi-Version Concurrent Control),基于快照隔离机制(Snapshot Isolations)进行多版本并发控制,是一种以乐观锁为理论基础的,用来解决读-写冲突的无锁并发控制。也就是为事务分配单向增长的时间戳,为每个修改保存一个版本,版本与事务时间戳关联,读操作只读该事务开始前的数据库的快照,也就是说,事务开启...

2018-04-10 21:07:00 990

转载 Spring IOC -bean对象的生命周期详解

生命周期执行的过程如下:1) spring对bean进行实例化,默认bean是单例2) spring对bean进行依赖注入3) 如果bean实现了BeanNameAware接口,spring将bean的id传给setBeanName()方法4) 如果bean实现了BeanFactoryAware接口,spring将调用setBeanFactory方法,将BeanFactory实例传进来5...

2018-04-09 20:48:00 115

转载 @RequestBody 和@ResponseBody 注解详解

简介:@RequestBody作用: i) 该注解用于读取Request请求的body部分数据,使用系统默认配置的HttpMessageConverter进行解析,然后把相应的数据绑定到要返回的对象上; ii) 再把HttpMessageConverter返回的对象数据绑定到 controller中方法的参数上。使用时机:A) GET、POS...

2018-04-09 19:47:00 88

转载 servlet的url-pattern匹配规则详细描述

一、概述在利用servlet或Filter进行url请求的匹配时,很关键的一点就是匹配规则,但servlet容器中的匹配规则既不是简单的通配,也不是正则表达式,而是由自己的规则,比较容易混淆。本文来详细举例介绍下。下面的说明都是在tomcat服务器中得到验证的。先介绍一下匹配的概念,上例子代码。在一个app(如名字为myapp)的web.xml文件中,有如下信息:<...

2018-04-09 18:27:00 52

转载 SpringMVC POJO入参过程分析

SpringMVC确定目标方法POJO类型的入参过程1、确认一个key:  (1)、若目标方法的POJO类型的参数没有使用@ModelAttribute作为修饰,则key为POJO类名第一个字母的小写  (2)、若使用@ModelAttribute来修饰,则key为@ModelAttibute注解的value属性值。@RequestMapping("/updateUs...

2018-04-09 17:36:00 158

转载 SpringMVC @ModelAttribute详解

  被@ModelAttribute注释的方法会在此controller每个方法执行前被执行,因此对于一个controller映射多个URL的用法来说,要谨慎使用。  我们编写控制器代码时,会将保存方法独立成一个控制器也是如此。1、注释void返回值的方法@Controllerpublic class HelloModelController { ...

2018-04-09 17:30:00 56

转载 SpringMVC @SessionAttributes注解

@SessionAttributes原理  默认情况下Spring MVC将模型中的数据存储到request域中。当一个请求结束后,数据就失效了。如果要跨页面使用。那么需要使用到session。而@SessionAttributes注解就可以使得模型中的数据存储一份到session域中。@SessionAttributes参数  1、names:这是一个字符串数组。里面...

2018-04-09 17:22:00 76

转载 SpringMVC 向页面传值-Map、Model和ModelMap

  除了使用ModelAndView方式外。还可以使用Map、Model和ModelMap来向前台页面传值  使用后面3种方式,都是在方法参数中,指定一个该类型的参数。例如:Java代码@RequestMapping("/test")public String test(Map<String,Object> map,Model model,Model...

2018-04-09 17:16:00 197

转载 SpringMVC 向前台页面传值-ModelAndView

ModelAndView  该对象中包含了一个model属性和一个view属性  model:其实是一个ModelMap类型。其实ModelMap是一个LinkedHashMap的子类    view:包含了一些视图信息  当视图解释器解析ModelAndVIew是,其中model本生就是一个Map的实现类的子类。视图解析器将model中的每个元素都通过requ...

2018-04-09 17:13:00 192

转载 SpringMVC 使用Servlet原生API作为参数

具体看代码:@RequestMapping("/testServletAPI")public void testServletAPI(HttpServletRequest request, HttpServletResponse response,HttpSession session, Write r out) throws IOExce...

2018-04-09 17:08:00 71

转载 SpringMVC POJO传参方式

有两POJO类Address.javapackage com.proc; public class Address { private String province; private String city; public String getProvince() { return province; ...

2018-04-09 17:05:00 100

转载 SpringMVC @CookieValue注解

@CookieValue的作用  用来获取Cookie中的值@CookieValue参数  1、value:参数名称  2、required:是否必须  3、defaultValue:默认值@CookieValue使用案例1、我们在index.jsp页面中创建cookie值<%@ page language="java" import="j...

2018-04-09 16:55:00 61

转载 SpringMVC 中的注解@RequestParam与@PathVariable的区别

@PathVariable绑定URI模板变量值@PathVariable是用来获得请求url中的动态参数的@PathVariable用于将请求URL中的模板变量映射到功能处理方法的参数上。//配置url和方法的一个关系@RequestMapping("item/{itemId}")/* @RequestMapping 来映射请求,也就是通过它来指定控制器可以处理哪些URL请求...

2018-04-09 16:50:00 72

空空如也

空空如也

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

TA关注的人

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