- Java面试题--JVM大厂篇之深入解析JVM中的Serial GC:工作原理与代际区别
青云交
Java大厂面试题Java虚拟机(JVM)专栏Java技术栈SerialGC工作原理年轻代垃圾回收MinorGC老年代垃圾回收MajorGCFullGC年轻代和老年代的区别SerialGC垃圾收集器单线程垃圾收集器
目录引言:正文:一、SerialGC工作原理年轻代垃圾回收(MinorGC):老年代垃圾回收(MajorGC或FullGC):二、年轻代和老年代的区别年轻代(YoungGeneration):老年代(OldGeneration):结束语:引言:Java虚拟机(JVM)作为Java程序的运行环境,其性能和稳定性在很大程度上依赖于垃圾收集器(GC)的效率。SerialGC是JVM中最古老也是最简单的一
- Java中的垃圾回收机制是如何工作的?
Good_tea_h
javajvm算法
Java中的垃圾回收机制(GarbageCollection,GC)是Java虚拟机(JVM)的一个重要组成部分,它负责自动管理内存的分配和释放,以减轻程序员在内存管理方面的负担,并防止内存泄漏和内存溢出等问题。一、垃圾回收机制的核心思想Java的垃圾回收机制主要基于两个核心思想:标记和回收。标记:垃圾收集器会定期自动扫描内存中的对象,根据特定的算法(如可达性分析法)来判断哪些对象已经不再被程序使
- JVM工作过程
一只BI鱼
每日面经整理笔记jvmjava
将JVM工作过程粗略分为5个阶段,包括加载阶段、链接阶段、初始化阶段、执行阶段、回收阶段其中,(1)加载阶段、链接阶段的解析部分主要由类加载器完成(2)初始化阶段是由JVM的类加载机制在类加载过程的最后阶段自动触发的。(3)执行阶段主要由执行引擎负责(4)回收阶段主要是垃圾收集器(GarbageCollector)负责。所以,在Java虚拟机(JVM)中,读取字节码文件、解析字节码文件为类信息,并
- Java面试题--JVM大厂篇(1-10)
青云交
java学习路线Java大厂面试题JavajvmJavaJVM类加载器栈内存溢出Java面试题Java内存模型(JMM)MinorGC与FullGC
引言:在这个信息时代,对于准备进入大厂工作的朋友们来说,对于JVM(Java虚拟机)的掌握是面试中的一项重要内容。下面是一些精选的JVM面试题,希望对大家能有所帮助。正文:1.JVM有哪几种垃圾收集器?每种的特点是什么?JVM主要有以下几种垃圾收集器:Serial收集器、ParNew收集器、Parallel收集器、CMS收集器和G1收集器。每种垃圾收集器都有各自的特点,比如Serial是单线程的垃
- JVM中G1垃圾收集器:原理、过程和参数配置深入解析
码到三十五
JAVA核心面试攻关javajvm
码到三十五:个人主页心中有诗画,指尖舞代码,目光览世界,步履越千山,人间尽值得!在Java虚拟机(JVM)中,垃圾收集(GC)是一个自动管理内存的过程,旨在回收不再使用的对象所占用的内存空间。G1垃圾收集器(G1GC)是JVM中的一种重要垃圾收集器,尤其适用于需要低延迟和可预测停顿时间的大型应用程序。本文将深入探讨G1垃圾收集器的工作原理、关键特性和性能优化建议。目录一、G1收集器概述主要特点二、
- jvm参数-XX:+UseConcMarkSweepGC怎么用?
Java搬砖组长
jvmjava1024程序员节
-XX:+UseConcMarkSweepGC是一种JVM参数,它表示使用并发标记清除垃圾收集器(CMS)来进行内存管理。与传统的标记-清除(Mark-Sweep)垃圾收集器不同,CMS是一种有并发能力的垃圾收集器,它可以在应用程序运行的同时,对堆内存中的垃圾进行回收。使用CMS垃圾收集器具有以下优点:可以在垃圾收集的同时,让应用程序继续运行,减少了停顿时间。由于垃圾回收与应用程序运行并发操作,因
- JVM性能调优之5种垃圾收集器
golove666
后端垃圾回收JVM性能调优Java
JDK垃圾收集器一、SerialGC垃圾收集器SerialGC的工作原理SerialGC的特点SerialGC的配置参数SerialGC的适用场景SerialGC的优缺点优点:缺点:SerialGC的总结二、ParallelGC垃圾收集器ParallelGC的工作原理ParallelGC的特点ParallelGC的配置参数ParallelGC的适用场景ParallelGC的优缺点优点:缺点:总结三
- Java GC 详解:Minor GC和Full GC以及CMS理解
搬山道猿
javajvm开发语言
ConcurrentMarkandSweep(并发标记-清除)CMS的官方名称为“MostlyConcurrentMarkandSweepGarbageCollector”(主要并发-标记-清除-垃圾收集器).其对年轻代采用并行STW方式的[mark-copy(标记-复制)算法],对老年代主要使用并发[mark-sweep(标记-清除)算法]CMS的设计目标是避免在老年代垃圾收集时出现长时间的卡顿
- JAVA之JVM入门
java_heartLake
JAVAjavajvm
Java虚拟机(JVM)是Java平台的核心部分之一,它为Java程序提供了运行环境。一、历史背景1.SunClassicVM发布时间:1996年重要功能:Java1.0的默认JVM。支持基本的字节码执行。简单的垃圾回收机制。2.HotSpotVM发布时间:1999年重要功能:JDK1.3开始成为默认JVM。引入了即时编译器(JITCompiler)。提供了多种垃圾收集器。支持线程调度和同步性能的
- 方法区的垃圾回收
climb.xu
jvmjava
方法区的垃圾回收有人认为方法区(如HotSpot虚拟机中元空间或者永久代)是没有垃圾收集行为的,其实不然,Java虚拟机规范中堆方法区的约束是非常宽松的,提到过可以不要求虚拟机在方法区中实现垃圾收集,事实上也确实有未实现或未能完整实现方法区类型卸载的垃圾收集器存在(如JDK11时期的ZGC收集器就不支持类卸载)一般来说这个区域的回收效果比较难令人满意,尤其是类型的卸载,条件相当苛刻,但是这部分区域
- 深入解析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中的堆与栈
纣王家子迎新
javajvm开发语言
在Java中,堆和栈是两种主要的内存区域,用于存储不同类型的数据堆定义与用途:堆是Java中用于存储的是对象实例和数组。对象之间的关联关系(如引用关系)也通过堆内存中的对象来实现。堆是一个运行时数据区,Java的堆是垃圾收集器管理的主要区域,因此也被称为“GC堆”(Garbage-CollectedHeap)。堆的内存空间大小远大于栈(这是因为堆主要用于存储对象实例和数组,这些数据结构的大小和数量
- java JVM ZGC垃圾收集器关键特性和工作原理
K____End
Javajavajvm算法
ZGC(ZGarbageCollector)是Java虚拟机(JVM)中的一个现代化的垃圾收集器,它被设计成低延迟的垃圾收集器,特别适合于那些需要极短的垃圾收集暂停时间的应用程序。ZGC首次作为实验性特性在JDK11中引入,并在JDK15中成为非实验性的,并可用于生产环境。以下是ZGC的一些关键特性和工作原理:关键特性低延迟:ZGC的设计目标之一是将垃圾收集的暂停时间控制在极低水平,最初的目标是1
- c# 避免内存泄漏的 弱引用 用法
zhangyuli1
.NetCorec#jvmjava
在.NET中,当你使用弱引用(WeakReference或WeakReference)时,你不能直接像使用普通引用那样调用它所引用的对象的方法或属性。因为弱引用只是提供了一种方式来访问可能已经被垃圾收集器回收的对象,而并不保证对象仍然存在。要通过弱引用调用对象的方法或属性,你需要首先检查弱引用的Target属性是否非空(即对象是否仍然存在)。如果Target非空,那么你可以安全地将它转换为适当的类
- Java虚拟机(JVM)性能调优指南
NAMELZX
javajvm开发语言
Java虚拟机(JVM)是Java平台的核心组件,负责运行Java程序。JVM性能调优对于确保应用程序性能至关重要。在本文中,我们将探讨如何对JVM进行有效的调优,以优化内存使用和提高应用程序性能。##JVM调优的重要性-**内存管理**:合理分配和管理堆内存、栈内存和直接内存。-**垃圾收集**:选择合适的垃圾收集器,减少GC(垃圾收集)暂停时间。-**性能监控**:实时监控JVM性能,快速定位
- CMS垃圾回收器
Artisan_w
Java基础与八股jvmjava算法
CMS垃圾回收CMSGC的官方名称为“MostlyConcurrenctMarkandSweepGarbageCollector”(最大-并发-标记-清除-垃圾收集器)。作用范围:老年代算法:并发标记清除算法。启用参数:-XX:+UseConMarkSweepGC默认回收线程数:(处理器核心数量+3)/4Java9之后使用CMS垃圾收集器后,默认年轻代就为ParNew收集器,并且不可更改,同时JD
- 【Java】图解 JVM 垃圾回收(二):垃圾收集器、Full GC
G皮T
#图解系列#Java编程jvmjavaGCFullGCG1垃圾收集器垃圾回收
图解JVM垃圾回收(二)1.垃圾收集器1.1内存分配与回收策略1.2Serial收集器1.3ParallelScavenge收集器1.4ParNew收集器1.5CMS收集器1.6G1收集器2.FullGC的触发条件1.垃圾收集器Java虚拟机提供了多种垃圾回收器,每种回收器有其特定的用途和优势。以下是常见的垃圾回收器:连线表示垃圾收集器可以配合使用。单线程与多线程:单线程指的是垃圾收集器只使用一个
- JVM 自动内存管理 知识点梳理
10419
知识点梳理思考Javajavajvm内存管理
JVM自动内存管理Java内存区域HotSpot虚拟机对象探秘垃圾收集器与内存分配策略哪些内存需要回收?(对象已死?)垃圾收集算法HotSpot的算法细节实现经典垃圾收集器CMSG1低延迟垃圾收集器引用你好!这是我对于JVM自动内存管理相关知识点的梳理与思考,希望对你能有所帮助;菜鸟萌新,问题多多,欢迎指出,谢谢!本文章以图为主,如果文章中没有图片,麻烦移步:链接.Java内存区域HotSpot虚
- Object 有哪些常用方法?大致说一下每个方法的含义?说说Hashtable 与 HashMap 的区别?
weixin_53180424
javajavajvm开发语言
Object有哪些常用方法?大致说一下每个方法的含义?clone方法保护方法,实现对象的浅复制,只有实现了Cloneable接口才可以调用该方法,否则抛出CloneNotSupportedException异常,深拷贝也需要实现Cloneable,同时其成员变量为引用类型的也需要实现Cloneable,然后重写clone方法。finalize方法该方法和垃圾收集器有关系,判断一个对象是否可以被回收
- 说一下 JVM 有哪些垃圾回收器?如何选择垃圾收集器?notify()和notifyAll()有什么区别?
weixin_53180424
javajvm
说一下JVM有哪些垃圾回收器?如果说垃圾收集算法是内存回收的方法论,那么垃圾收集器就是内存回收的具体实现。下图展示了7种作用于不同分代的收集器,其中用于回收新生代的收集器包括Serial、PraNew、ParallelScavenge,回收老年代的收集器包括SerialOld、ParallelOld、CMS,还有用于回收整个Java堆的G1收集器。不同收集器之间的连线表示它们可以搭配使用。Seri
- JVM--- 垃圾收集器详细整理
顾城猿
jvmjava开发语言
目录一、垃圾收集需要考虑的三个事情:二、垃圾回收针对的区域三、如何判断对象已死1.引用计数算法:2.可达性分析算法四、引用五、生存还是死亡?六、回收方法区七、垃圾收集算法1.分代收集理论2.标记-清除算法3.标记-复制算法4.标记-整理算法八、经典垃圾收集器1.CMS垃圾收集器2.GarbageFirst收集器一、垃圾收集需要考虑的三个事情:那些内存需要回收(判断对象已死)什么时候回收?(空间满或
- 金九银十!阿里大牛力荐6篇实战文档:JVM+多线程+Kafka+Redis+Nginx+MySQL,临时抱佛脚管用!
独孤球球
jvmjava开发语言
深入理解Java虚拟机:JVM高级特性与最佳实践第一部分走近Java第1章走近Java第二部分自动内存管理机制第2章Java内存区域与内存溢出异常第3章垃圾收集器与内存分配策略第4章虚拟机性能监控与故障处理工具第5章调优案例分析与实战第三部分虚拟机执行子系统第6章类文件结构第7章虚拟机类加载机制第8章虚拟机字节码执行引擎第9章类加载及执行子系统的案例与实战第四部分程序编译与代码优化第10章早期(编
- Jdk11新增特性
骆驼整理说
Java基础jvmjava开发语言
目录模块化系统(Jigsaw)新的垃圾收集器(ZGC和Shenandoah)新的API和工具其他改进JDK11(JavaDevelopmentKit11)Java的版本引入了一些新特性和改进,主要有:
- 如何排查Java内存泄漏?看完我给跪了!
Java弟中弟
没有经验的程序员经常认为Java的自动垃圾回收完全使他们免于担心内存管理。这是一个常见的误解:虽然垃圾收集器做得很好,但即使是最好的程序员也完全有可能成为严重破坏内存泄漏的牺牲品。让我解释一下。当不必要地维护不再需要的对象引用时,会发生内存泄漏。这些泄漏很糟糕。首先,当程序消耗越来越多的资源时,它们会对计算机施加不必要的压力。更糟糕的是,检测这些泄漏可能很困难:静态分析通常很难精确识别这些冗余引用
- Lua weak表
keep-learner
lua开发语言
之前写过一篇博客专门介绍了weak表:Lua弱引用表-CSDN博客,这两天阅读了《programminginlua》后有了些新的体会,在这里只做一些之前没有了解的补充内容。定义Lua自动进行内存的管理。程序只能创建对象(表,函数等),而没有执行删除对象的函数,相反,Lua会自动删除那些失效的对象。垃圾收集器只能在确认对象失效之后才会进行收集;它是不会知道你对垃圾的定义的。类似于任何在全局变量中声明
- Go内存优化与垃圾收集
程序员
Go提供了自动化的内存管理机制,但在某些情况下需要更精细的微调从而避免发生OOM错误。本文介绍了如何通过微调GOGC和GOMEMLIMIT在性能和内存效率之间取得平衡,并尽量避免OOM的产生。原文:MemoryOptimizationandGarbageCollectorManagementinGo本文将讨论Go的垃圾收集器、应用程序内存优化以及如何防止OOM(Out-Of-Memory)错误。G
- JVM | 第2部分:虚拟机执行子系统《深入理解 Java 虚拟机》
多氯环己烷
前言参考资料:《深入理解Java虚拟机-JVM高级特性与最佳实践》第1部分主题为自动内存管理,以此延伸出Java内存区域与内存溢出、垃圾收集器与内存分配策略、参数配置与性能调优等相关内容;第2部分主题为虚拟机执行子系统,以此延伸出class类文件结构、虚拟机类加载机制、虚拟机字节码执行引擎等相关内容;第3部分主题为程序编译与代码优化,以此延伸出程序前后端编译优化、前端易用性优化、后端性能优化等相关
- Java 内存区域
头真的好重好重Y
JVMjava经验分享开发语言jvm面试
JVM介绍:1)JVM学习总结,全面介绍运行时数据区域、各类垃圾收集器的原理使用、内存分配回收策略2)JVM学习总结,虚拟机性能监控、故障处理工具:jps、jstat、jinfo、jmap、VisualVM、jstack等文章目录前言一、Java运行时数据区1.程序计数器(ProgramCounterRegister)2.虚拟机栈(VMStack)3.本地方法栈(NativeMethodStack
- 【Jvm】垃圾回收
w1992wishes
本篇结构:判断对象已死java四种引用堆内存划分垃圾收集算法对象在堆中的分配垃圾收集器参考资料一、判断对象已死1.1、引用计数法给对象中添加一个引用计数器,每当有一个地方引用它,计数器就加1;当引用失效,计数器就减1;任何时候计数器为0的对象就是不可能再被使用的。这个方法实现简单,效率高,但是目前主流的虚拟机中并没有选择这个算法来管理内存,其最主要的原因是它很难解决对象之间相互循环引用的问题。如下
- 垃圾收集器
scj1022
JVMjvmjava
文章目录垃圾收集器一、概述1、垃圾回收器概述2、垃圾收集器分类3、GC的性能指标4、垃圾回收器发展史5、7种经典的垃圾收集器6、查看默认的垃圾收集器二、Serial收集器:串行回收1、概述2、SerialOld收集器3、分代组合4、优缺点5、使用场景6、参数配置三、ParNew收集器:并行回收1、概述2、分代组合3、优缺点4、参数配置四、Parallel收集器:吞吐量优先1、概述2、Paralle
- 深入浅出Java Annotation(元注解和自定义注解)
Josh_Persistence
Java Annotation元注解自定义注解
一、基本概述
Annontation是Java5开始引入的新特征。中文名称一般叫注解。它提供了一种安全的类似注释的机制,用来将任何的信息或元数据(metadata)与程序元素(类、方法、成员变量等)进行关联。
更通俗的意思是为程序的元素(类、方法、成员变量)加上更直观更明了的说明,这些说明信息是与程序的业务逻辑无关,并且是供指定的工具或
- mysql优化特定类型的查询
annan211
java工作mysql
本节所介绍的查询优化的技巧都是和特定版本相关的,所以对于未来mysql的版本未必适用。
1 优化count查询
对于count这个函数的网上的大部分资料都是错误的或者是理解的都是一知半解的。在做优化之前我们先来看看
真正的count()函数的作用到底是什么。
count()是一个特殊的函数,有两种非常不同的作用,他可以统计某个列值的数量,也可以统计行数。
在统
- MAC下安装多版本JDK和切换几种方式
棋子chessman
jdk
环境:
MAC AIR,OS X 10.10,64位
历史:
过去 Mac 上的 Java 都是由 Apple 自己提供,只支持到 Java 6,并且OS X 10.7 开始系统并不自带(而是可选安装)(原自带的是1.6)。
后来 Apple 加入 OpenJDK 继续支持 Java 6,而 Java 7 将由 Oracle 负责提供。
在终端中输入jav
- javaScript (1)
Array_06
JavaScriptjava浏览器
JavaScript
1、运算符
运算符就是完成操作的一系列符号,它有七类: 赋值运算符(=,+=,-=,*=,/=,%=,<<=,>>=,|=,&=)、算术运算符(+,-,*,/,++,--,%)、比较运算符(>,<,<=,>=,==,===,!=,!==)、逻辑运算符(||,&&,!)、条件运算(?:)、位
- 国内顶级代码分享网站
袁潇含
javajdkoracle.netPHP
现在国内很多开源网站感觉都是为了利益而做的
当然利益是肯定的,否则谁也不会免费的去做网站
&
- Elasticsearch、MongoDB和Hadoop比较
随意而生
mongodbhadoop搜索引擎
IT界在过去几年中出现了一个有趣的现象。很多新的技术出现并立即拥抱了“大数据”。稍微老一点的技术也会将大数据添进自己的特性,避免落大部队太远,我们看到了不同技术之间的边际的模糊化。假如你有诸如Elasticsearch或者Solr这样的搜索引擎,它们存储着JSON文档,MongoDB存着JSON文档,或者一堆JSON文档存放在一个Hadoop集群的HDFS中。你可以使用这三种配
- mac os 系统科研软件总结
张亚雄
mac os
1.1 Microsoft Office for Mac 2011
大客户版,自行搜索。
1.2 Latex (MacTex):
系统环境:https://tug.org/mactex/
&nb
- Maven实战(四)生命周期
AdyZhang
maven
1. 三套生命周期 Maven拥有三套相互独立的生命周期,它们分别为clean,default和site。 每个生命周期包含一些阶段,这些阶段是有顺序的,并且后面的阶段依赖于前面的阶段,用户和Maven最直接的交互方式就是调用这些生命周期阶段。 以clean生命周期为例,它包含的阶段有pre-clean, clean 和 post
- Linux下Jenkins迁移
aijuans
Jenkins
1. 将Jenkins程序目录copy过去 源程序在/export/data/tomcatRoot/ofctest-jenkins.jd.com下面 tar -cvzf jenkins.tar.gz ofctest-jenkins.jd.com &
- request.getInputStream()只能获取一次的问题
ayaoxinchao
requestInputstream
问题:在使用HTTP协议实现应用间接口通信时,服务端读取客户端请求过来的数据,会用到request.getInputStream(),第一次读取的时候可以读取到数据,但是接下来的读取操作都读取不到数据
原因: 1. 一个InputStream对象在被读取完成后,将无法被再次读取,始终返回-1; 2. InputStream并没有实现reset方法(可以重
- 数据库SQL优化大总结之 百万级数据库优化方案
BigBird2012
SQL优化
网上关于SQL优化的教程很多,但是比较杂乱。近日有空整理了一下,写出来跟大家分享一下,其中有错误和不足的地方,还请大家纠正补充。
这篇文章我花费了大量的时间查找资料、修改、排版,希望大家阅读之后,感觉好的话推荐给更多的人,让更多的人看到、纠正以及补充。
1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。
2.应尽量避免在 where
- jsonObject的使用
bijian1013
javajson
在项目中难免会用java处理json格式的数据,因此封装了一个JSONUtil工具类。
JSONUtil.java
package com.bijian.json.study;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
- [Zookeeper学习笔记之六]Zookeeper源代码分析之Zookeeper.WatchRegistration
bit1129
zookeeper
Zookeeper类是Zookeeper提供给用户访问Zookeeper service的主要API,它包含了如下几个内部类
首先分析它的内部类,从WatchRegistration开始,为指定的znode path注册一个Watcher,
/**
* Register a watcher for a particular p
- 【Scala十三】Scala核心七:部分应用函数
bit1129
scala
何为部分应用函数?
Partially applied function: A function that’s used in an expression and that misses some of its arguments.For instance, if function f has type Int => Int => Int, then f and f(1) are p
- Tomcat Error listenerStart 终极大法
ronin47
tomcat
Tomcat报的错太含糊了,什么错都没报出来,只提示了Error listenerStart。为了调试,我们要获得更详细的日志。可以在WEB-INF/classes目录下新建一个文件叫logging.properties,内容如下
Java代码
handlers = org.apache.juli.FileHandler, java.util.logging.ConsoleHa
- 不用加减符号实现加减法
BrokenDreams
实现
今天有群友发了一个问题,要求不用加减符号(包括负号)来实现加减法。
分析一下,先看最简单的情况,假设1+1,按二进制算的话结果是10,可以看到从右往左的第一位变为0,第二位由于进位变为1。
 
- 读《研磨设计模式》-代码笔记-状态模式-State
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
/*
当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类
状态模式主要解决的是当控制一个对象状态的条件表达式过于复杂时的情况
把状态的判断逻辑转移到表示不同状态的一系列类中,可以把复杂的判断逻辑简化
如果在
- CUDA程序block和thread超出硬件允许值时的异常
cherishLC
CUDA
调用CUDA的核函数时指定block 和 thread大小,该大小可以是dim3类型的(三维数组),只用一维时可以是usigned int型的。
以下程序验证了当block或thread大小超出硬件允许值时会产生异常!!!GPU根本不会执行运算!!!
所以验证结果的正确性很重要!!!
在VS中创建CUDA项目会有一个模板,里面有更详细的状态验证。
以下程序在K5000GPU上跑的。
- 诡异的超长时间GC问题定位
chenchao051
jvmcmsGChbaseswap
HBase的GC策略采用PawNew+CMS, 这是大众化的配置,ParNew经常会出现停顿时间特别长的情况,有时候甚至长到令人发指的地步,例如请看如下日志:
2012-10-17T05:54:54.293+0800: 739594.224: [GC 739606.508: [ParNew: 996800K->110720K(996800K), 178.8826900 secs] 3700
- maven环境快速搭建
daizj
安装mavne环境配置
一 下载maven
安装maven之前,要先安装jdk及配置JAVA_HOME环境变量。这个安装和配置java环境不用多说。
maven下载地址:http://maven.apache.org/download.html,目前最新的是这个apache-maven-3.2.5-bin.zip,然后解压在任意位置,最好地址中不要带中文字符,这个做java 的都知道,地址中出现中文会出现很多
- PHP网站安全,避免PHP网站受到攻击的方法
dcj3sjt126com
PHP
对于PHP网站安全主要存在这样几种攻击方式:1、命令注入(Command Injection)2、eval注入(Eval Injection)3、客户端脚本攻击(Script Insertion)4、跨网站脚本攻击(Cross Site Scripting, XSS)5、SQL注入攻击(SQL injection)6、跨网站请求伪造攻击(Cross Site Request Forgerie
- yii中给CGridView设置默认的排序根据时间倒序的方法
dcj3sjt126com
GridView
public function searchWithRelated() {
$criteria = new CDbCriteria;
$criteria->together = true; //without th
- Java集合对象和数组对象的转换
dyy_gusi
java集合
在开发中,我们经常需要将集合对象(List,Set)转换为数组对象,或者将数组对象转换为集合对象。Java提供了相互转换的工具,但是我们使用的时候需要注意,不能乱用滥用。
1、数组对象转换为集合对象
最暴力的方式是new一个集合对象,然后遍历数组,依次将数组中的元素放入到新的集合中,但是这样做显然过
- nginx同一主机部署多个应用
geeksun
nginx
近日有一需求,需要在一台主机上用nginx部署2个php应用,分别是wordpress和wiki,探索了半天,终于部署好了,下面把过程记录下来。
1. 在nginx下创建vhosts目录,用以放置vhost文件。
mkdir vhosts
2. 修改nginx.conf的配置, 在http节点增加下面内容设置,用来包含vhosts里的配置文件
#
- ubuntu添加admin权限的用户账号
hongtoushizi
ubuntuuseradd
ubuntu创建账号的方式通常用到两种:useradd 和adduser . 本人尝试了useradd方法,步骤如下:
1:useradd
使用useradd时,如果后面不加任何参数的话,如:sudo useradd sysadm 创建出来的用户将是默认的三无用户:无home directory ,无密码,无系统shell。
顾应该如下操作:
- 第五章 常用Lua开发库2-JSON库、编码转换、字符串处理
jinnianshilongnian
nginxlua
JSON库
在进行数据传输时JSON格式目前应用广泛,因此从Lua对象与JSON字符串之间相互转换是一个非常常见的功能;目前Lua也有几个JSON库,本人用过cjson、dkjson。其中cjson的语法严格(比如unicode \u0020\u7eaf),要求符合规范否则会解析失败(如\u002),而dkjson相对宽松,当然也可以通过修改cjson的源码来完成
- Spring定时器配置的两种实现方式OpenSymphony Quartz和java Timer详解
yaerfeng1989
timerquartz定时器
原创整理不易,转载请注明出处:Spring定时器配置的两种实现方式OpenSymphony Quartz和java Timer详解
代码下载地址:http://www.zuidaima.com/share/1772648445103104.htm
有两种流行Spring定时器配置:Java的Timer类和OpenSymphony的Quartz。
1.Java Timer定时
首先继承jav
- Linux下df与du两个命令的差别?
pda158
linux
一、df显示文件系统的使用情况,与du比較,就是更全盘化。 最经常使用的就是 df -T,显示文件系统的使用情况并显示文件系统的类型。 举比例如以下: [root@localhost ~]# df -T Filesystem Type &n
- [转]SQLite的工具类 ---- 通过反射把Cursor封装到VO对象
ctfzh
VOandroidsqlite反射Cursor
在写DAO层时,觉得从Cursor里一个一个的取出字段值再装到VO(值对象)里太麻烦了,就写了一个工具类,用到了反射,可以把查询记录的值装到对应的VO里,也可以生成该VO的List。
使用时需要注意:
考虑到Android的性能问题,VO没有使用Setter和Getter,而是直接用public的属性。
表中的字段名需要和VO的属性名一样,要是不一样就得在查询的SQL中
- 该学习笔记用到的Employee表
vipbooks
oraclesql工作
这是我在学习Oracle是用到的Employee表,在该笔记中用到的就是这张表,大家可以用它来学习和练习。
drop table Employee;
-- 员工信息表
create table Employee(
-- 员工编号
EmpNo number(3) primary key,
-- 姓