- 多线程的使用-->5:并发编程的特性
路ZP
java开发语言
目录1.并发编程特性:2.并发编程的特性之一:原子性3.并发编程的特性之一:可见性3.1JVM内存模型3.2JMM(Java内存模型)4.并发编程的特性之一:有序性1.并发编程特性:多线程是一种程序开发或设计环境并发编程是一种程序设计概念或设计目标,在多线程开发环境中,同一系列的程序设计与机制的使用,确保多线程开发环境是稳定的,快速的,性能优秀的。并发编程具有3个特征原子性可见性有序性在多线程开发
- 【JVM】Java内存分配与回收:深入理解Java内存管理
逐星ing
Java#jvm八股文/面试题jvmjava开发语言
Java内存分配与回收:深入理解Java内存管理引言Java虚拟机(JVM)的内存管理是确保Java应用程序性能和稳定性的关键。理解Java的内存分配方式和回收过程对于开发者来说至关重要。基础知识JVM内存模型:JVM内存分为堆(Heap)、栈(Stack)、方法区(MethodArea)和程序计数器(ProgramCounter)。堆(Heap):存储对象实例和数组。栈(Stack):存储局部变
- 从头开始学习->JVM(一):java内存模型(JMM)不是java虚拟机内存模型(JVM)哦!
吴里斯蒂亚诺_翀纳尔多
前言在进入jvm的世界之前,我要先给大家整理一个概念上的细节,java内存模型和jvm内存模型,是两回事哦。在网上很多朋友的博客上,都会无意识的将java内存模型和jvm内存模型混为一谈,这让一部分不明白真相的看客都会以为是这样,但是实际上java内存模型和jvm内存模型,在概念上来讲是两回事,当然,不能否认的是这两者有着极大的关联性,甚至某种意义上来讲,JVM是JMM的实现方式,JMM是为JVM
- java8 jvm gc_JVM层GC调优(上)
生命的光彩
java8jvmgc
JVM内存结构简介(jdk1.8)JVM层的GC调优是生产环境上必不可少的一个环节,因为我们需要确定这个进程可以占用多少内存,以及设定一些参数的阀值。以此来优化项目的性能和提高可用性,而且这也是在面试中经常会被问到的问题。想要进行GC调优,我们首先需要简单了解下JVM的内存结构,Java虚拟机的规范文档如下:在介绍JVM内存结构之前,我们需要先知道运行时数据区这样的一个东西,它与JVM的内存结构有
- OOM问题原理解析(二):JVM内存回收机制与GC算法解析
斯音
android算法javajvm编程语言
jvm想必大家听说过,毕竟在工作当中时不时的蹦出了什么OOM…这些东西,让很多的程序员都无从下手,甚至小的互联网公司都流行出了这样的一句话:“性能不够,机器来凑”!那么在此,在工作之余就和大家一起探讨一下jvm调优的一些相关的实战操作,在分析jvm调优之前,你首先要明白java截止今天jdk的版本已经升级到了13的版本,当然我们要了解一下jvm底层的一些gc,也就是垃圾回收器的机制。jvm内存结构
- <转>Spark体系架构
yongjian_luo
Spark
最近看到一篇关于Spark架构的博文,作者是AlexeyGrishchenko。看过Alexey博文的同学应该都知道,他对Spark理解地非常深入,读完他的“spark-architecture”这篇博文,有种醍醐灌顶的感觉,从JVM内存分配到Spark集群的资源管理,步步深入,感触颇多。因此,在周末的业余时间里,将此文的核心内容译成中文,并在这里与大家分享。如在翻译过程中有文字上的表达纰漏,还请
- Tomcat内存配置
云雨殇
Tomcattomcat
1、Tomcat的JVM内存溢出解决方法在生产环境中,tomcat内存设置不好很容易出现JVM内存溢,最直观的解决方法就是修改Tomcat中的catalina.sh文件。在catalina.sh文件中,找到cygwin=false,在这一行的前面加入参数,具体如下:viTOMCAT_HOME/bin/catalina.shJAVA_OPTS="-server-Xms800m-Xmx800m-XX:
- JVM内存模型
dlwlrma ⥳
兴趣类jvm
一:什么是JVMJVM又称为虚拟机,是一种抽象化的计算机,通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机有自己完善的硬体架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。Java虚拟机屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。------------来自百度百科二:JVM的内存结
- 六、SpringCloud Alibaba + Spring Boot + mybatis +数据中台+多租户saas+前后端分离之Spring Cloud Alibaba基于Nacos分布式配置中心
不会写代码的女程序猿
分布式springbootspringcloud
1.前言在上一篇文章,我们实现了基于nacos做分布式配置中心,实施的存储、更新我们的配置文件数据,在使用以往的一些配置中心时,服务重启或者注册中心重启后,配置文件数据将会丢失,这种情况是因为将数据储存在JVM的内存当中,当JVM不再提供运行时,数据也会相应的丢失,一些开源框架默认将数据存储在JVM内存中的还挺多的,那么nacos又是存储在哪里呢?架构技术选型核心框架SpringBootSOASp
- Java大厂面试题—虚拟机(一),Java面试必问
程序媛小白
讲一下JVM内存结构?JVM内存结构分为5大区域,程序计数器、虚拟机栈、本地方法栈、堆、方法区。程序计数器线程私有的,作为当前线程的行号指示器,用于记录当前虚拟机正在执行的线程指令地址。程序计数器主要有两个作用:当前线程所执行的字节码的行号指示器,通过它实现代码的流程控制,如:顺序执行、选择、循环、异常处理。在多线程的情况下,程序计数器用于记录当前线程执行的位置,当线程被切换回来的时候能够知道它上
- 堆栈溢出的原因
木小同
面试jvmjava内存溢出jvm优化内存泄漏
堆和栈在JVM内存模型中,存在这样几个内存结构,主要是堆和栈。堆:JVM运行中产生变量的实际存储地址栈:每一个线程都会对应一个方法栈,主要存储线程运行时声明的变量,栈的大小取决去这个线程运行的深度堆溢出当创建对象时,没有足够的可用空间,则会发生堆溢出。java.lang.OutOfMemoryError:Javaheapspace堆内存空间不足,一种是真的不够,还有一种是发生了死循环,对象一直在创
- JVM内存模型和垃圾回收算法
明豆
javajvm
一、内存模型JVM在执行java程序时,会将它管理的内存划分为若干个不同的区域,每个区域都有自己的用途和创建销毁的时间。主要分为两大部分:线程私有区和共享区。线程私有区1、虚拟机栈与线程的生命周期相同。它是用来管理java方法啊执行的内存模型。每个方法执行时都会创建一个栈帧(stackframe),存储方法的局部变量表、操作数栈、动态链接、返回值和返回地址等信息。栈的大小决定了方法可调用的最大深度
- 深入解析JVM内存模型:面试题及详细解答
道长不会写代码
每天一道Java面试题jvm面试职场和发展
深入解析JVM内存模型:面试题及详细解答1.JVM内存模型概述1.1面试题:请简述JVM内存模型的组成部分及其作用。1.1.1详细解答2.垃圾收集与内存分配2.1面试题:对象在JVM中的内存分配过程是怎样的?2.1.1详细解答3.垃圾收集器与内存回收3.1面试题:请解释什么是垃圾收集,并简述常见的垃圾收集算法。3.1.1详细解答结语1.JVM内存模型概述1.1面试题:请简述JVM内存模型的组成部分
- Java面试题:解释JVM的内存结构,并描述堆、栈、方法区在内存结构中的角色和作用,Java中的多线程是如何实现的,Java垃圾回收机制的基本原理,并讨论常见的垃圾回收算法
杰哥在此
Java系列javajvm算法面试
Java内存模型与多线程的深入探讨在Java的世界里,内存模型和多线程是开发者必须掌握的核心知识点。它们不仅关系到程序的性能和稳定性,还直接影响到系统的可扩展性和可靠性。下面,我将通过三个面试题,带领大家深入理解Java内存模型、多线程以及并发编程的相关原理和实践。面试题一:请解释JVM的内存结构,并描述堆、栈、方法区在内存结构中的角色和作用。关注点:JVM内存结构的基本组成堆、栈、方法区的功能和
- 程序人生——Java中基本类型使用建议
Perley620
#Java面试上岸专栏程序人生javapython
目录引出Java中基本类型使用建议建议21:用偶判断,不用奇判断建议22:用整数类型处理货币建议23:不要让类型默默转换建议24:边界、边界、还是边界建议25:不要让四舍五入亏了一方建议26:提防包装类型的null值建议27:谨慎包装类型的大小比较建议28:优先使用整型池建议29:优先选择基本类型建议30:不要随便设置随机种子深入认识JVMJVM内存分配,类加载创建对象的4种方法总结垃圾回收GCJ
- jvm-jvm类加载机制
诸葛莽夫q
jvmjvm
一,jvm类加载机制1.1什么是类加载机制java代码编译后就会生成JVM能够识别的二进制字节流文件*.class文件,将class文件加载到内存,最终成为可以被JVM直接使用的Java类型,这个过程叫做JVM的类加载机制。1.2类加载过程class文件中的“类”从加载到JVM内存中,到卸载出内存过程有七个生命周期阶段:类加载机制包括了前五个阶段,要注意的是加载、验证、准备、初始化、卸载的开始顺序
- JAVA面试题28
CrazyMax_zh
java开发语言
面试题:Java中的静态变量和实例变量有何区别?它们存储在内存的哪个部分?答案:静态变量属于类,实例变量属于对象。静态变量在内存中只有一份拷贝,存储在方法区(JVM内存中的一部分),而实例变量每个对象都有自己的值,存储在堆内存中。面试题:Java中什么是序列化(Serialization)?如何实现序列化和反序列化?答案:序列化是将对象转换为字节序列以便存储或传输的过程。实现序列化需要让类实现Se
- 【JavaWeb·1】MySQL数据库使用方法
禾苗码上
JavaWeb数据库mysqldatabase
MySQL数据库引言需求:存储一条数据,牛牛–38–99.01、Java程序中:借助JVM内存变量,对数据进行存储(1)将数据存储在对应变量中:局部变量、成员变量(对象)、数组、集合栈空间:局部变量堆空间:对象(2)缺点:利用JVM存储数据,JVM一旦关闭,则空间被回收,空间里的数据也会丢。这种存储数据的方式,没有达到持久化。2、利用IO流技术,将数据存储在文件中(1)利用IO的输出流,将JVM中
- 高级 Java 必须突破的 10 个知识点,你get到几个了?
LiJiaSi
对于搞开发的我们其实也是一样,现在流行的框架越来越多,封装的也越来越完善,各种框架可以搞定一切,几乎不用关注底层的实现,初级程序员只要熟悉基本的使用方法,便可以快速的开发上线;但对于高级程序员来讲,内功的修炼却越发的重要,比如算法、设计模式、底层原理等,只有把这些基础熟练之后,才能在开发过程中知其然知其所以然,出现问题时能快速定位到问题的本质。1、Java基础技术体系、JVM内存分配、垃圾回收、类
- Android内存优化的知识梳理
树獭非懒
数据结构Android性能优化android
JVM内存管理基础知识了解JVM内存管理的基础内容,对我们理解内存分配有很大的帮助:比如Java堆的原理,JVM如何判断对象的存活、几种垃圾回收算法:关于这部分,可以参考笔者之前写的JVM|翻越内存管理的墙。Android内存管理LMK(LowMemoryKiller)在Android中有个机制叫LowMemoryKiller,当CachedPages太少时,就会被触发。它的工作方式是根据进程的优
- JVM-----调优指令
java_leejin
JVMJVM调优
1、调优指令设置JVM内存的参数有四个:-XmxJavaHeap最大值,默认值为物理内存的1/4,最佳设值应该视物理内存大小及计算机内其他内存开销而定;-XmsJavaHeap初始值,Server端JVM最好将-Xms和-Xmx设为相同值,开发测试机JVM可以保留默认值;-XmnJavaHeapYoung区大小,不熟悉最好保留默认值;-Xss每个线程的Stack大小,不熟悉最好保留默认值;常见参数
- JAVA面试虚拟机篇
是程序喵呀
Javajava面试开发语言
1.JVM内存结构要求掌握JVM内存结构划分尤其要知道方法区、永久代、元空间的关系结合一段java代码的执行理解内存划分执行javac命令编译源代码为字节码执行java命令创建JVM,调用类加载子系统加载class,将类的信息存入方法区创建main线程,使用的内存区域是JVM虚拟机栈,开始执行main方法代码如果遇到了未见过的类,会继续触发类加载过程,同样会存入方法区需要创建对象,会使用堆内存来存
- JVM内存模型
小吉快跑呀
主内存、工作内存一条线程对应一个工作内存(专属高速缓冲)多个工作内存对应一个主内存通常情况下,主内存就是JavaHeap,工作内存即虚拟机栈工作内存是主内存的数据的拷贝工作内存与主内存的交互是有一套规定的,有一套函数线程不会直接从主内存中获取数据,而是从自己的工作内存中拿数据,拿不到就从主内存中加载到工作内存,在从工作内存中获取Volatile想当年这东西可是背过的,但是又何曾理解他到底是干嘛的呢
- JVM内存调优常用参数
小道仙97
jvmJVM调优调优参数内存调优
视频讲解地址文章目录一、开始二、常用命令1、原生命令2、arthas命令三、Parallel四、G1相关参数五、通用参数六、JVM调优参数一、开始查看当前JDK版本所支持的垃圾回收器有哪些、以及默认使用的回收器java-XX:+PrintFlagsFinal-version|grep-E'\'JDK8和JDK11运行上述命令结果如下:各种组合GC的开关名称描述UseSerialGC年轻代和老年代都
- JVM内存区域详解,一文弄懂JVM内存【内存分布、回收算法、垃圾回收器】
小道仙97
#Java中阶jvm算法垃圾回收器G1JVM详解
视频讲解地址学习文档一、内存区域区域描述线程私有如何溢出程序计数器为了线程切换后能恢复到正确的执行位置,每个线程都要有一个独立的程序计数器。✅唯一一个不会内存溢出的地方虚拟机栈1.每个方法执行的时候,Java虚拟机都会同步创建一个栈帧用于存储局部变量表、操作数栈、方法出口等信息。2.每一个方法从调用到执行完毕都对应着一个栈帧在虚拟机栈中从入栈到出栈的过程。3.局部变量表存储了编译期可知的各种Jav
- JVM内存模型和内存溢出
娟宝宝萌萌哒
javajvm内存模型溢出
文章目录概念抽象模型模型通信的实现JVM内存程序计数器虚拟机栈本地方法栈堆方法区运行时常量池直接内存JAVA对象创建布局访问OutOfMemoryError异常内存相关参数硬件内存模型参考概念JMM,JavaMemoryModel,定义JVM在计算机内存(RAM)中的工作方式。JVM是整个计算机的虚拟模型,所以JMM隶属于JVM。抽象模型模型线程之间的共享变量储存在主内存中。每个线程都有一个私有的
- Java - JVM内存模型 3分钟教你成为JVM的尖子生
大猪大猪
在很久很久以前,也就是1992年3月份,有一所NB轰轰的咖啡学校诞生了,它的名字叫JAVA,学校的校规极其的厉害,普通学生闻风丧胆,唯一尖子生般的人才能留下来,别猜了那人就是"你"。本色出演名单姓名别名简称学校JavaVirtualMachineJVM教室堆空间Heap老师垃圾回收器MinorGC/MajorGC学生数据Object学校平面图俗名使用权限简称Metaspace教室学生会,校长专用M
- JVM内存模型
我就是胖着玩玩的
jvm
Java虚拟机(JVM)内存模型是Java运行时数据区的一种规范,它定义了Java虚拟机在执行Java程序时如何使用内存。了解JVM内存模型对于优化Java应用程序、提高性能、避免内存泄漏和解决内存溢出问题至关重要。本文将以JDK8为例,详细解析JVM内存模型的各个组成部分。JVM内存模型JVM内存模型主要包括以下几个运行时数据区:方法区、堆、栈、本地方法栈、程序计数器.示例下面Math.clas
- java之jvm详解
༺❀ൢ望༒月❀ൢ❀
JVMjavajvm开发语言
JVM内存结构程序计数器ProgramCounterRegister程序计数器(寄存器)程序计数器在物理层上是通过寄存器实现的作用:记住下一条jvm指令的执行地址特点是线程私有的(每个线程都有属于自己的程序计数器)不会存在内存溢出虚拟机栈(默认大小为1024kb)每个线程运行时所需要的内存称为虚拟机栈每个栈由多个栈帧组成,对应着每次方法调用时所占的内存每个线程只能有一个活动栈帧,对应着当前正在执行
- 一文彻底搞懂JVM内存模型
澡澡洗澡澡
Java开发jvm内存模型java
文章目录1.什么是JVM内存模型?2.JVM内存模型的主要目标是什么?3.JVM内存模型将Java程序的内存分为哪些区域?4.JVM内存模型定义了以下几种内存可见性规则?5.JVM内存模型定义了哪些内存一致性模型?1.什么是JVM内存模型?JVM内存模型是指JVM规范中定义的Java程序内存访问规则。它规定了线程之间如何共享和访问内存中的数据。2.JVM内存模型的主要目标是什么?保证Java程序的
- PHP如何实现二维数组排序?
IT独行者
二维数组PHP排序
二维数组在PHP开发中经常遇到,但是他的排序就不如一维数组那样用内置函数来的方便了,(一维数组排序可以参考本站另一篇文章【PHP中数组排序函数详解汇总】)。二维数组的排序需要我们自己写函数处理了,这里UncleToo给大家分享一个PHP二维数组排序的函数:
代码:
functionarray_sort($arr,$keys,$type='asc'){
$keysvalue= $new_arr
- 【Hadoop十七】HDFS HA配置
bit1129
hadoop
基于Zookeeper的HDFS HA配置主要涉及两个文件,core-site和hdfs-site.xml。
测试环境有三台
hadoop.master
hadoop.slave1
hadoop.slave2
hadoop.master包含的组件NameNode, JournalNode, Zookeeper,DFSZKFailoverController
- 由wsdl生成的java vo类不适合做普通java vo
darrenzhu
VOwsdlwebservicerpc
开发java webservice项目时,如果我们通过SOAP协议来输入输出,我们会利用工具从wsdl文件生成webservice的client端类,但是这里面生成的java data model类却不适合做为项目中的普通java vo类来使用,当然有一中情况例外,如果这个自动生成的类里面的properties都是基本数据类型,就没问题,但是如果有集合类,就不行。原因如下:
1)使用了集合如Li
- JAVA海量数据处理之二(BitMap)
周凡杨
java算法bitmapbitset数据
路漫漫其修远兮,吾将上下而求索。想要更快,就要深入挖掘 JAVA 基础的数据结构,从来分析出所编写的 JAVA 代码为什么把内存耗尽,思考有什么办法可以节省内存呢? 啊哈!算法。这里采用了 BitMap 思想。
首先来看一个实验:
指定 VM 参数大小: -Xms256m -Xmx540m
- java类型与数据库类型
g21121
java
很多时候我们用hibernate的时候往往并不是十分关心数据库类型和java类型的对应关心,因为大多数hbm文件是自动生成的,但有些时候诸如:数据库设计、没有生成工具、使用原始JDBC、使用mybatis(ibatIS)等等情况,就会手动的去对应数据库与java的数据类型关心,当然比较简单的数据类型即使配置错了也会很快发现问题,但有些数据类型却并不是十分常见,这就给程序员带来了很多麻烦。
&nb
- Linux命令
510888780
linux命令
系统信息
arch 显示机器的处理器架构(1)
uname -m 显示机器的处理器架构(2)
uname -r 显示正在使用的内核版本
dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI)
hdparm -i /dev/hda 罗列一个磁盘的架构特性
hdparm -tT /dev/sda 在磁盘上执行测试性读取操作
cat /proc/cpuinfo 显示C
- java常用JVM参数
墙头上一根草
javajvm参数
-Xms:初始堆大小,默认为物理内存的1/64(<1GB);默认(MinHeapFreeRatio参数可以调整)空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制
-Xmx:最大堆大小,默认(MaxHeapFreeRatio参数可以调整)空余堆内存大于70%时,JVM会减少堆直到 -Xms的最小限制
-Xmn:新生代的内存空间大小,注意:此处的大小是(eden+ 2
- 我的spring学习笔记9-Spring使用工厂方法实例化Bean的注意点
aijuans
Spring 3
方法一:
<bean id="musicBox" class="onlyfun.caterpillar.factory.MusicBoxFactory"
factory-method="createMusicBoxStatic"></bean>
方法二:
- mysql查询性能优化之二
annan211
UNIONmysql查询优化索引优化
1 union的限制
有时mysql无法将限制条件从外层下推到内层,这使得原本能够限制部分返回结果的条件无法应用到内层
查询的优化上。
如果希望union的各个子句能够根据limit只取部分结果集,或者希望能够先排好序在
合并结果集的话,就需要在union的各个子句中分别使用这些子句。
例如 想将两个子查询结果联合起来,然后再取前20条记录,那么mys
- 数据的备份与恢复
百合不是茶
oraclesql数据恢复数据备份
数据的备份与恢复的方式有: 表,方案 ,数据库;
数据的备份:
导出到的常见命令;
参数 说明
USERID 确定执行导出实用程序的用户名和口令
BUFFER 确定导出数据时所使用的缓冲区大小,其大小用字节表示
FILE 指定导出的二进制文
- 线程组
bijian1013
java多线程threadjava多线程线程组
有些程序包含了相当数量的线程。这时,如果按照线程的功能将他们分成不同的类别将很有用。
线程组可以用来同时对一组线程进行操作。
创建线程组:ThreadGroup g = new ThreadGroup(groupName);
&nbs
- top命令找到占用CPU最高的java线程
bijian1013
javalinuxtop
上次分析系统中占用CPU高的问题,得到一些使用Java自身调试工具的经验,与大家分享。 (1)使用top命令找出占用cpu最高的JAVA进程PID:28174 (2)如下命令找出占用cpu最高的线程
top -Hp 28174 -d 1 -n 1
32694 root 20 0 3249m 2.0g 11m S 2 6.4 3:31.12 java
- 【持久化框架MyBatis3四】MyBatis3一对一关联查询
bit1129
Mybatis3
当两个实体具有1对1的对应关系时,可以使用One-To-One的进行映射关联查询
One-To-One示例数据
以学生表Student和地址信息表为例,每个学生都有都有1个唯一的地址(现实中,这种对应关系是不合适的,因为人和地址是多对一的关系),这里只是演示目的
学生表
CREATE TABLE STUDENTS
(
- C/C++图片或文件的读写
bitcarter
写图片
先看代码:
/*strTmpResult是文件或图片字符串
* filePath文件需要写入的地址或路径
*/
int writeFile(std::string &strTmpResult,std::string &filePath)
{
int i,len = strTmpResult.length();
unsigned cha
- nginx自定义指定加载配置
ronin47
进入 /usr/local/nginx/conf/include 目录,创建 nginx.node.conf 文件,在里面输入如下代码:
upstream nodejs {
server 127.0.0.1:3000;
#server 127.0.0.1:3001;
keepalive 64;
}
server {
liste
- java-71-数值的整数次方.实现函数double Power(double base, int exponent),求base的exponent次方
bylijinnan
double
public class Power {
/**
*Q71-数值的整数次方
*实现函数double Power(double base, int exponent),求base的exponent次方。不需要考虑溢出。
*/
private static boolean InvalidInput=false;
public static void main(
- Android四大组件的理解
Cb123456
android四大组件的理解
分享一下,今天在Android开发文档-开发者指南中看到的:
App components are the essential building blocks of an Android
- [宇宙与计算]涡旋场计算与拓扑分析
comsci
计算
怎么阐述我这个理论呢? 。。。。。。。。。
首先: 宇宙是一个非线性的拓扑结构与涡旋轨道时空的统一体。。。。
我们要在宇宙中寻找到一个适合人类居住的行星,时间非常重要,早一个刻度和晚一个刻度,这颗行星的
- 同一个Tomcat不同Web应用之间共享会话Session
cwqcwqmax9
session
实现两个WEB之间通过session 共享数据
查看tomcat 关于 HTTP Connector 中有个emptySessionPath 其解释如下:
If set to true, all paths for session cookies will be set to /. This can be useful for portlet specification impleme
- springmvc Spring3 MVC,ajax,乱码
dashuaifu
springjquerymvcAjax
springmvc Spring3 MVC @ResponseBody返回,jquery ajax调用中文乱码问题解决
Spring3.0 MVC @ResponseBody 的作用是把返回值直接写到HTTP response body里。具体实现AnnotationMethodHandlerAdapter类handleResponseBody方法,具体实
- 搭建WAMP环境
dcj3sjt126com
wamp
这里先解释一下WAMP是什么意思。W:windows,A:Apache,M:MYSQL,P:PHP。也就是说本文说明的是在windows系统下搭建以apache做服务器、MYSQL为数据库的PHP开发环境。
工欲善其事,必须先利其器。因为笔者的系统是WinXP,所以下文指的系统均为此系统。笔者所使用的Apache版本为apache_2.2.11-
- yii2 使用raw http request
dcj3sjt126com
http
Parses a raw HTTP request using yii\helpers\Json::decode()
To enable parsing for JSON requests you can configure yii\web\Request::$parsers using this class:
'request' =&g
- Quartz-1.8.6 理论部分
eksliang
quartz
转载请出自出处:http://eksliang.iteye.com/blog/2207691 一.概述
基于Quartz-1.8.6进行学习,因为Quartz2.0以后的API发生的非常大的变化,统一采用了build模式进行构建;
什么是quartz?
答:简单的说他是一个开源的java作业调度框架,为在 Java 应用程序中进行作业调度提供了简单却强大的机制。并且还能和Sp
- 什么是POJO?
gupeng_ie
javaPOJO框架Hibernate
POJO--Plain Old Java Objects(简单的java对象)
POJO是一个简单的、正规Java对象,它不包含业务逻辑处理或持久化逻辑等,也不是JavaBean、EntityBean等,不具有任何特殊角色和不继承或不实现任何其它Java框架的类或接口。
POJO对象有时也被称为Data对象,大量应用于表现现实中的对象。如果项目中使用了Hiber
- jQuery网站顶部定时折叠广告
ini
JavaScripthtmljqueryWebcss
效果体验:http://hovertree.com/texiao/jquery/4.htmHTML文件代码:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>网页顶部定时收起广告jQuery特效 - HoverTree<
- Spring boot内嵌的tomcat启动失败
kane_xie
spring boot
根据这篇guide创建了一个简单的spring boot应用,能运行且成功的访问。但移植到现有项目(基于hbase)中的时候,却报出以下错误:
SEVERE: A child container failed during start
java.util.concurrent.ExecutionException: org.apache.catalina.Lif
- leetcode: sort list
michelle_0916
Algorithmlinked listsort
Sort a linked list in O(n log n) time using constant space complexity.
====analysis=======
mergeSort for singly-linked list
====code======= /**
* Definition for sin
- nginx的安装与配置,中途遇到问题的解决
qifeifei
nginx
我使用的是ubuntu13.04系统,在安装nginx的时候遇到如下几个问题,然后找思路解决的,nginx 的下载与安装
wget http://nginx.org/download/nginx-1.0.11.tar.gz
tar zxvf nginx-1.0.11.tar.gz
./configure
make
make install
安装的时候出现
- 用枚举来处理java自定义异常
tcrct
javaenumexception
在系统开发过程中,总少不免要自己处理一些异常信息,然后将异常信息变成友好的提示返回到客户端的这样一个过程,之前都是new一个自定义的异常,当然这个所谓的自定义异常也是继承RuntimeException的,但这样往往会造成异常信息说明不一致的情况,所以就想到了用枚举来解决的办法。
1,先创建一个接口,里面有两个方法,一个是getCode, 一个是getMessage
public
- erlang supervisor分析
wudixiaotie
erlang
当我们给supervisor指定需要创建的子进程的时候,会指定M,F,A,如果是simple_one_for_one的策略的话,启动子进程的方式是supervisor:start_child(SupName, OtherArgs),这种方式可以根据调用者的需求传不同的参数给需要启动的子进程的方法。和最初的参数合并成一个数组,A ++ OtherArgs。那么这个时候就有个问题了,既然参数不一致,那