- 深入剖析OpenJDK 18 GA源码:Java平台最新发展
想法臃肿
本文还有配套的精品资源,点击获取简介:OpenJDK18GA作为Java开发的关键里程碑,提供了诸多新特性和改进。本文章深入探讨了OpenJDK18GA源码,揭示其内部机制,帮助开发者更好地理解和利用这个版本。文章还涵盖了PatternMatching、SealedClasses、Records、JEP395、JEP406和JEP407等特性,以及HotSpot虚拟机、编译器、垃圾收集器、内存模型
- JVM内存泄漏与内存溢出:原理详解与实战应对策略
一、核心概念深度解析内存问题一直是Java开发者面临的重要挑战,理解内存泄漏和内存溢出的本质区别是解决这类问题的第一步。1.1内存泄漏(MemoryLeak)定义:当应用程序不再需要某些对象时,由于仍然存在对这些对象的引用,导致垃圾收集器(GC)无法回收这些内存空间。关键特征:渐进式发展,如同慢性病通常由编码缺陷引起最终可能导致内存溢出1.2内存溢出(OutOfMemoryError)定义:是内存
- JVM垃圾回收机制深度解析
真实的菜
jvmjvm
️JVM垃圾回收机制深度解析文章目录️JVM垃圾回收机制深度解析垃圾判定算法引用计数法可达性分析算法垃圾回收算法️标记-清除算法复制算法标记-整理算法️分代收集算法️常见垃圾收集器Serial收集器⚡ParNew收集器Parallel收集器CMS收集器G1收集器⚡垃圾回收调优常用JVM调优参数️调优工具使用:JConsole、VisualVMJConsoleVisualVM实战案例分析案例一:内存
- 还不懂 OOM ?详解内存溢出与内存泄漏区别!
不决问春风
JVMjava
内存溢出与内存泄漏1.内存溢出(OutOfMemory,OOM)概念:内存溢出是指程序在运行过程中,尝试申请的内存超过了系统所能提供的最大内存限制,并且垃圾收集器也无法提供更多的内存,导致程序无法正常运行。原因:程序分配的内存过大:处理超大文件、加载大量数据等操作,可能会导致内存需求超过系统限制。比如你申请了一个Integer的变量,但是给了它一个Long类型才能存下的数,那就是内存溢出内存泄漏:
- JVM垃圾回收器
俗尘某某
JVMjavajvmjvm调优
JVM的垃圾回收机制主要通过不同的垃圾收集器来实现,垃圾收集器的设计围绕着几个核心目标:吞吐量、延迟(停顿时间)、内存占用,并根据它们工作的内存区域(年轻代/老年代)和工作方式(串行/并行/并发)进行分类。以下是JVM中主要的垃圾收集器类型及其特点,通常从两个维度来理解:维度一:按工作区域(分代收集的核心思想)年轻代收集器:主要负责回收年轻代(YoungGeneration)中的对象。特点:年轻代
- JVM(4)——引用类型
十六点五
jvmjava后端开发语言
痛点引入:为什么需要不同的引用类型?直接只用强引用不行吗?(内存泄漏风险、缓存管理粗粒度、对象生命周期监听需求)核心作用:解释引用类型如何让程序员与垃圾收集器(GC)协作,更精细地控制对象的生命周期,影响GC行为。1.JVM垃圾回收(GC)基础回顾(简述)可达性分析算法(GCRoots)是GC判断对象是否存活的基础。对象从创建到被GC回收的生命周期(强可达->...->不可达->回收)。核心概念:
- CMS、G1、ZGC、Shenandoah 的全面对比
java
大家好,这里是架构资源栈!点击上方关注,添加“星标”,一起学习大厂前沿架构!Java垃圾回收器从最早的Serial一步步演化,如今已经有了多款高性能、低延迟的GC垃圾收集器可选,比如CMS、G1、ZGC、Shenandoah。到底它们有啥区别?适合哪些业务场景?一文讲透GC垃圾收集器发展图谱Serial->Parallel->CMS->G1->ZGC/Shenandoah注:JDK8以前主要是CM
- Java 对象创建过程
了解过Java对象创建的过程吗?1.类加载检测加载对象时,先检查该对象的类模板是否已被加载。(类加载的过程:加载->连接(验证,准备,解析)->初始化)2.分配内存在Java堆中分配一块固定大小的内存给该对象,其中分配方式有指针碰撞和空闲列表。采用哪种分配方式与垃圾收集器回收算法决定(“标记-清除”or“标记-整理”)。指针碰撞:特点:堆内存整齐,无小碎片空间。在堆内存管理中,已被利用的内存和未被
- Java求职者面试记:面试官与水货程序员明哥的技术较量
码农~明哥
Java场景面试宝典Java面试技术栈业务场景明哥的故事
Java求职者面试记:面试官与水货程序员明哥的较量第一轮提问面试官:你好,明哥,请问你熟悉哪些Java版本?明哥:我非常熟悉JavaSE8、11以及最新的17版本。评分:85拓展:Java8引入了Lambda表达式;Java11为长期支持版本,提供了无操作垃圾收集器ZGC等新特性;而Java17则进一步增强了语言的功能。面试官:很好,那你能说说使用SpringBoot的优势吗?明哥:当然可以,Sp
- G1 垃圾回收器
llllllxj
jvmjvmjava算法
引用:G1垃圾收集器详解_fyygree的博客-CSDN博客深入解析G1垃圾收集器与性能优化_铁锚的博客-CSDN博客垃圾回收器之G1垃圾回收器_嘿,鱼骨头^O^的博客-CSDN博客G1是一款增量式的分代垃圾收集器G1物理上不分代,默认会将整个内存区域分为2048个region,region的大小为1MB-32MB,且为2的N次幂。适合内存大的jvm。region可分为四种类型,且region并不
- JVM篇——G1、ZGC以及Shenandoah垃圾回收器详细介绍和底层算法展开分析,一篇文档,拿下常见经典的垃圾回收器!!!!!!
Be explorer
JVMjvm算法
G1垃圾回收器一、认识G1G1(Garbage-First)是一款面向服务端应用的垃圾收集器,主要针对配备多核CPU及大容量内存的机器。G1垃圾收集器的目标是满足GC停顿时间的同时,还兼具高吞吐量的性能特征。它主要特点如下:并行与并发:G1在回收期间,可以有多个GC线程同时工作,有效利用多核计算能力。此时用户线程可能会短暂停顿(STW)。G1拥有与应用程序交替执行的能力,部分工作可以和应用程序同时
- JVM 垃圾收集器全面对比(Serial、CMS、G1、ZGC)
zhangxzq
JVM深度剖析与性能调优实战后端运维jvmjava
在上一篇文章中,我们深入探讨了JVM的类加载机制与自定义类加载器的实现,为理解字节码运行时的生命周期奠定了坚实基础。接下来,我们将进入JVM性能调优的核心领域之一——垃圾收集器(GarbageCollector,GC)。GC是JVM实现自动内存管理的关键模块,选择合适的GC策略与参数不仅影响吞吐量和延迟,还关乎系统的可预测性和稳定性。本文将从架构、特点、适用场景等多个维度,全面对比JVM中最具代表
- Python面试题总结
MetalTrader
python
1.python是如何进行内存管理的?1)引用计数。python中的一切内容都可被称作对象。在每个对象被创建时,就创建了一个引用计数。这个数字记录着此对象被变量引用的次数。当对象不再被需要的时候,这个对象的引用计数为0时,它被垃圾回收。2)垃圾回收。首先,当内存中有不再使用的部分时,垃圾收集器会把他们清理掉,它会去检查那些引用计数为0的对象,然后清除其所在的空间。其次,对于循环引用的对象(只有容器
- JVM 性能调优 -- CMS 垃圾回收器 GC 日志分析【Full GC】
码农爱java
【JVM性能调优】JVMFullGCGCGC日志分析JVM调优JVM虚拟机调优
前言:上一篇我们分析了MinorGC的发生过程,因为GC日志没有按我们预估的思路进行打印,其中打印了CMS垃圾回收器的部分日志,本篇我们就来分析一下CMS垃圾收集日志。JVM系列文章传送门初识JVM(Java虚拟机)深入理解JVM(Java虚拟机)一文搞懂JVM垃圾回收(JVMGC)深入理解JVM垃圾回收算法一文搞懂JVM垃圾收集器JVM调优相关参数JVM场景面试题【强烈推荐】JVM性能调优–线上
- JVM学习笔记-第三章-垃圾收集器与内存分配策略
会编程的老六
JVMjvmjvm.gc
JVM学习笔记-第三章-垃圾收集器与内存分配策略tips:对于3.4之前的章节可见博客:https://blog.csdn.net/sanhewuyang/article/details/953806203.5经典垃圾收集器3.5.1Serial收集器这个收集器是一个单线程工作的收集器,但它的单线程的意义并不仅仅是说明他只会使用一个处理器或一条收集线程去完成垃圾收集工作,更重要对的是强调在它进行垃
- 499 道 Java 面试题 (附答案):JVM+ 分布式 + 算法 + 锁 +MQ+ 微服务 + 数据库
2401_83412285
程序员javajvm分布式
你们线上应用的JVM参数有哪些。g1和cms区别,吞吐量优先和响应优先的垃圾收集器选择。怎么打出线程栈信息。请解释如下jvm参数的含义:-server-Xms512m-Xmx512m-Xss1024K-XX:PermSize=256m-XX:MaxPermSize=512m-XX:MaxTenuringThreshold=20XX:CMSInitiatingOccupancyFraction=80
- 互联网大厂Java面试指南:从基础到高阶技术栈与业务场景实战
yiiyx
Java场景面试宝典JavaSpringBoot微服务面试分布式系统
第一轮:Java基础与JVM问题1:请解释Java中的垃圾回收机制,并说明G1垃圾收集器的工作原理及其适用场景。技术解析:核心概念:垃圾回收(GC)是JVM自动管理内存的机制,通过标记-清除、复制、标记-整理等算法回收无用对象。G1特点:分区堆内存,优先回收垃圾最多的区域,适用于大内存、低延迟场景。常见误区:认为GC调优是万能的,忽略代码层面的内存优化。问题2:Java8中的Lambda表达式和S
- jvm:分代回收机制
花和尚也有春天
jvmjvm
分代收集算法是目前大部分JVM的垃圾收集器采用的算法。它的核心思想是根据对象存活的生命周期将内存划分为若干个不同的区域。一般情况下将堆区划分为老年代(TenuredGeneration)和新生代(YoungGeneration),老年代的特点是每次垃圾收集时只有少量对象需要被回收,而新生代的特点是每次垃圾回收时都有大量的对象需要被回收,那么就可以根据不同代的特点采取最适合的收集算法。目前大部分垃圾
- Java——各种垃圾收集器
RAHS
jvmjvmjava
转载博客Serial收集器(复制算法)新生代单线程收集器,标记和清理都是单线程,优点是简单高效。是client级别默认的GC方式,可以通过-XX:+UseSerialGC来强制指定。SerialOld收集器(标记-整理算法)老年代单线程收集器,Serial收集器的老年代版本。ParNew收集器(停止-复制算法)新生代收集器,可以认为是Serial收集器的多线程版本,在多核CPU环境下有着比Seri
- Java垃圾收集器
顺风才微笑
一、Serial收集器Serial收集器是最基本、发展历史最悠久的收集器,曾经(在JDK1.3.1之前)是虚拟机新生代收集的唯一选择。特性:这个收集器是一个单线程的收集器,但它的“单线程”的意义并不仅仅说明它只会使用一个CPU或一条收集线程去完成垃圾收集工作,更重要的是在它进行垃圾收集时,必须暂停其他所有的工作线程,直到它收集结束。StopTheWorld应用场景:Serial收集器是虚拟机运行在
- 《深入理解java虚拟机》学习笔记2——Java内存溢出实例
在下李逍遥
java虚拟机javajava内存溢出虚拟机
原文地址:http://blog.csdn.net/chjttony/article/details/7857448通过简单的小例子程序,演示Java虚拟机各部分内存溢出情况:(1).java堆溢出:Java堆用于存储实例对象,只要不断创建对象,并且保证GCRoots到对象之间有引用的可达,避免垃圾收集器回收实例对象,就会在对象数量达到堆最大容量时产生OutOfMemoryError异常。想要方便
- Java垃圾收集器与内存分配策略深度解析
小刘|
java开发语言
在Java与C++的世界里,内存动态分配与垃圾收集技术仿佛筑起了一道高墙。墙外的人渴望进入,享受自动内存管理的便利;而墙内的人却试图突破,追求更高的性能与控制力。今天,就让我们深入探讨Java的垃圾收集器与内存分配策略,一窥其背后的奥秘。3.1概述垃圾收集(GarbageCollection,简称GC)并非Java的专属产物。早在1960年,Lisp语言就率先引入了内存动态分配与垃圾收集技术。当时
- Java面试高频问题(16-20)
风铃儿~
java面试算法
十六、JVM垃圾回收机制与调优实战垃圾收集器对比收集器适用场景核心特点触发GC类型Serial单线程环境线程独占,StopTheWorldMinorGCParallelScavenge吞吐量优先多线程并行,关注系统吞吐量Minor/FullGCCMS低延迟应用并发标记清除,碎片化问题ConcurrentModeFailureG1大内存多核服务器Region划分,可预测停顿时间MixedGCjava
- 深入理解Java虚拟机: JVM高级特性与最佳实践 (第3版)
lyw4631
Java书籍javajvm
文章目录第一部分走进Java第二部分自动内存管理第三部分虚拟机执行子系统第四部分程序编译与代码优化第五部分高效并发附录A在Windows系统下编译OpenJDK6附录B展望Java技术的未来(2013年版)附录C虚拟机字节码指令表附录D对象查询语言(OQL)简介附录EJDK历史版本轨迹第一部分走进Java第1章走进Java第二部分自动内存管理第2章Java内存区域与内存溢出异常第3章垃圾收集器与内
- Java GC详解
1_5_2_
JVMjavajvm开发语言
目录需要GC的内存区域GC的标记算法什么时候触发GCGC常用算法三色标计算法GC垃圾收集器需要GC的内存区域jvm中,程序计数器、虚拟机栈、本地方法栈都是随线程而生随线程而灭,栈帧随着方法的进入和退出做入栈和出栈操作,实现了自动的内存清理,因此,我们的内存垃圾回收主要集中于java堆和方法区中,在程序运行期间,这部分内存的分配和使用都是动态的。主动触发fullGCsystem.gc不确定什么时候生
- Rust编程基础教程:Web开发入门
AI天才研究院
AI实战DeepSeekR1&大数据AI人工智能大模型Python实战大数据人工智能语言模型JavaPython架构设计
作者:禅与计算机程序设计艺术1.背景介绍近年来,云计算、大数据、物联网、人工智能等新兴技术带动了web应用的蓬勃发展。Web开发也从传统单页应用程序向多页面应用和全栈开发模式转变。Rust语言作为一门现代化的系统编程语言正在崭露头角。它具有以下特征:有高效率的运行速度有保证内存安全的机制拥有自动内存管理机制(不用手动回收资源)可以进行并行编程提供GC(垃圾收集器),防止内存泄漏因此,Rust语言适
- 深度学习与总结JVM专辑(七):垃圾回收器—CMS(图文+代码)
左灯右行的爱情
JVMjvm
CMS垃圾收集器深度解析教程1.前言:为什么需要CMS?2.CMS工作原理:一场与时间的赛跑2.1.初始标记(InitialMark)2.2.并发标记(ConcurrentMark)2.3.重新标记(Remark)2.4.并发清除(ConcurrentSweep)3.CMS的优势与劣势:权衡的艺术3.1.优势(Pros)3.2.劣势(Cons)4."并发"vs"并行":别再傻傻分不清5.三色标记法
- 深入理解Java虚拟机-垃圾收集器与内存分配策略
Aurora_NeAr
java开发语言
对象存活判定引用计数法(ReferenceCounting)每个对象维护一个引用计数器,记录有多少引用指向该对象。当引用计数器为0时,表示对象不再被使用,可以被回收。无法解决循环引用问题(如上述示例),需要额外的空间存储引用计数可达性分析算法(ReachabilityAnalysis)通过一系列称为GCRoots的根对象作为起点,从这些根对象开始向下搜索,形成引用链如果一个对象不在任何引用链上(即
- 为何G1垃圾收集器能够减少内存泄漏
五道书童
JVMjvmjava
为何G1垃圾收集器能够减少内存泄漏使用G1(Garbage-First)垃圾收集器能够有效缓解或解决GCoverheadlimitexceeded错误,主要原因如下:1.G1的Region分区设计G1将堆内存划分为多个大小相等的Region(默认约2048个),而不是传统的新生代(YoungGen)和老年代(OldGen)的固定划分。优势:可以更灵活地回收部分Region,而不是强制FullGC。
- 垃圾回收机制--GC 垃圾收集器--JVM调优-面试题
my_styles
jvmjava算法
1.触发垃圾回收的条件新生代Eden区域满了,触发younggc(ygc)老年代区域满了,触发fullgc(fgc)通过ygc后进入老年代的平均大小大于老年代的可用内存,触发fullgc(fgc).程序中主动调用的System.gc()强制执行gc,是fullgc,但是不必然执行。2.垃圾回收流程当Eden满后,会触发younggc,把有引用存活的对象复制到S0区域,回收清空Eden区域。当Ede
- 对于规范和实现,你会混淆吗?
yangshangchuan
HotSpot
昨晚和朋友聊天,喝了点咖啡,由于我经常喝茶,很长时间没喝咖啡了,所以失眠了,于是起床读JVM规范,读完后在朋友圈发了一条信息:
JVM Run-Time Data Areas:The Java Virtual Machine defines various run-time data areas that are used during execution of a program. So
- android 网络
百合不是茶
网络
android的网络编程和java的一样没什么好分析的都是一些死的照着写就可以了,所以记录下来 方便查找 , 服务器使用的是TomCat
服务器代码; servlet的使用需要在xml中注册
package servlet;
import java.io.IOException;
import java.util.Arr
- [读书笔记]读法拉第传
comsci
读书笔记
1831年的时候,一年可以赚到1000英镑的人..应该很少的...
要成为一个科学家,没有足够的资金支持,很多实验都无法完成
但是当钱赚够了以后....就不能够一直在商业和市场中徘徊......
- 随机数的产生
沐刃青蛟
随机数
c++中阐述随机数的方法有两种:
一是产生假随机数(不管操作多少次,所产生的数都不会改变)
这类随机数是使用了默认的种子值产生的,所以每次都是一样的。
//默认种子
for (int i = 0; i < 5; i++)
{
cout<<
- PHP检测函数所在的文件名
IT独行者
PHP函数
很简单的功能,用到PHP中的反射机制,具体使用的是ReflectionFunction类,可以获取指定函数所在PHP脚本中的具体位置。 创建引用脚本。
代码:
[php]
view plain
copy
// Filename: functions.php
<?php&nbs
- 银行各系统功能简介
文强chu
金融
银行各系统功能简介 业务系统 核心业务系统 业务功能包括:总账管理、卡系统管理、客户信息管理、额度控管、存款、贷款、资金业务、国际结算、支付结算、对外接口等 清分清算系统 以清算日期为准,将账务类交易、非账务类交易的手续费、代理费、网络服务费等相关费用,按费用类型计算应收、应付金额,经过清算人员确认后上送核心系统完成结算的过程 国际结算系
- Python学习1(pip django 安装以及第一个project)
小桔子
pythondjangopip
最近开始学习python,要安装个pip的工具。听说这个工具很强大,安装了它,在安装第三方工具的话so easy!然后也下载了,按照别人给的教程开始安装,奶奶的怎么也安装不上!
第一步:官方下载pip-1.5.6.tar.gz, https://pypi.python.org/pypi/pip easy!
第二部:解压这个压缩文件,会看到一个setup.p
- php 数组
aichenglong
PHP排序数组循环多维数组
1 php中的创建数组
$product = array('tires','oil','spark');//array()实际上是语言结构而不 是函数
2 如果需要创建一个升序的排列的数字保存在一个数组中,可以使用range()函数来自动创建数组
$numbers=range(1,10)//1 2 3 4 5 6 7 8 9 10
$numbers=range(1,10,
- 安装python2.7
AILIKES
python
安装python2.7
1、下载可从 http://www.python.org/进行下载#wget https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tgz
2、复制解压
#mkdir -p /opt/usr/python
#cp /opt/soft/Python-2
- java异常的处理探讨
百合不是茶
JAVA异常
//java异常
/*
1,了解java 中的异常处理机制,有三种操作
a,声明异常
b,抛出异常
c,捕获异常
2,学会使用try-catch-finally来处理异常
3,学会如何声明异常和抛出异常
4,学会创建自己的异常
*/
//2,学会使用try-catch-finally来处理异常
- getElementsByName实例
bijian1013
element
实例1:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/x
- 探索JUnit4扩展:Runner
bijian1013
java单元测试JUnit
参加敏捷培训时,教练提到Junit4的Runner和Rule,于是特上网查一下,发现很多都讲的太理论,或者是举的例子实在是太牵强。多搜索了几下,搜索到两篇我觉得写的非常好的文章。
文章地址:http://www.blogjava.net/jiangshachina/archive/20
- [MongoDB学习笔记二]MongoDB副本集
bit1129
mongodb
1. 副本集的特性
1)一台主服务器(Primary),多台从服务器(Secondary)
2)Primary挂了之后,从服务器自动完成从它们之中选举一台服务器作为主服务器,继续工作,这就解决了单点故障,因此,在这种情况下,MongoDB集群能够继续工作
3)挂了的主服务器恢复到集群中只能以Secondary服务器的角色加入进来
2
- 【Spark八十一】Hive in the spark assembly
bit1129
assembly
Spark SQL supports most commonly used features of HiveQL. However, different HiveQL statements are executed in different manners:
1. DDL statements (e.g. CREATE TABLE, DROP TABLE, etc.)
- Nginx问题定位之监控进程异常退出
ronin47
nginx在运行过程中是否稳定,是否有异常退出过?这里总结几项平时会用到的小技巧。
1. 在error.log中查看是否有signal项,如果有,看看signal是多少。
比如,这是一个异常退出的情况:
$grep signal error.log
2012/12/24 16:39:56 [alert] 13661#0: worker process 13666 exited on s
- No grammar constraints (DTD or XML schema).....两种解决方法
byalias
xml
方法一:常用方法 关闭XML验证
工具栏:windows => preferences => xml => xml files => validation => Indicate when no grammar is specified:选择Ignore即可。
方法二:(个人推荐)
添加 内容如下
<?xml version=
- Netty源码学习-DefaultChannelPipeline
bylijinnan
netty
package com.ljn.channel;
/**
* ChannelPipeline采用的是Intercepting Filter 模式
* 但由于用到两个双向链表和内部类,这个模式看起来不是那么明显,需要仔细查看调用过程才发现
*
* 下面对ChannelPipeline作一个模拟,只模拟关键代码:
*/
public class Pipeline {
- MYSQL数据库常用备份及恢复语句
chicony
mysql
备份MySQL数据库的命令,可以加选不同的参数选项来实现不同格式的要求。
mysqldump -h主机 -u用户名 -p密码 数据库名 > 文件
备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库。
mysqldump -–add-drop-table -uusername -ppassword databasename > ba
- 小白谈谈云计算--基于Google三大论文
CrazyMizzz
Google云计算GFS
之前在没有接触到云计算之前,只是对云计算有一点点模糊的概念,觉得这是一个很高大上的东西,似乎离我们大一的还很远。后来有机会上了一节云计算的普及课程吧,并且在之前的一周里拜读了谷歌三大论文。不敢说理解,至少囫囵吞枣啃下了一大堆看不明白的理论。现在就简单聊聊我对于云计算的了解。
我先说说GFS
&n
- hadoop 平衡空间设置方法
daizj
hadoopbalancer
在hdfs-site.xml中增加设置balance的带宽,默认只有1M:
<property>
<name>dfs.balance.bandwidthPerSec</name>
<value>10485760</value>
<description&g
- Eclipse程序员要掌握的常用快捷键
dcj3sjt126com
编程
判断一个人的编程水平,就看他用键盘多,还是鼠标多。用键盘一是为了输入代码(当然了,也包括注释),再有就是熟练使用快捷键。 曾有人在豆瓣评
《卓有成效的程序员》:“人有多大懒,才有多大闲”。之前我整理了一个
程序员图书列表,目的也就是通过读书,让程序员变懒。 程序员作为特殊的群体,有的人可以这么懒,懒到事情都交给机器去做,而有的人又可以那么勤奋,每天都孜孜不倦得
- Android学习之路
dcj3sjt126com
Android学习
转自:http://blog.csdn.net/ryantang03/article/details/6901459
以前有J2EE基础,接触JAVA也有两三年的时间了,上手Android并不困难,思维上稍微转变一下就可以很快适应。以前做的都是WEB项目,现今体验移动终端项目,让我越来越觉得移动互联网应用是未来的主宰。
下面说说我学习Android的感受,我学Android首先是看MARS的视
- java 遍历Map的四种方法
eksliang
javaHashMapjava 遍历Map的四种方法
转载请出自出处:
http://eksliang.iteye.com/blog/2059996
package com.ickes;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
/**
* 遍历Map的四种方式
- 【精典】数据库相关相关
gengzg
数据库
package C3P0;
import java.sql.Connection;
import java.sql.SQLException;
import java.beans.PropertyVetoException;
import com.mchange.v2.c3p0.ComboPooledDataSource;
public class DBPool{
- 自动补全
huyana_town
自动补全
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml&quo
- jquery在线预览PDF文件,打开PDF文件
天梯梦
jquery
最主要的是使用到了一个jquery的插件jquery.media.js,使用这个插件就很容易实现了。
核心代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.
- ViewPager刷新单个页面的方法
lovelease
androidviewpagertag刷新
使用ViewPager做滑动切换图片的效果时,如果图片是从网络下载的,那么再子线程中下载完图片时我们会使用handler通知UI线程,然后UI线程就可以调用mViewPager.getAdapter().notifyDataSetChanged()进行页面的刷新,但是viewpager不同于listview,你会发现单纯的调用notifyDataSetChanged()并不能刷新页面
- 利用按位取反(~)从复合枚举值里清除枚举值
草料场
enum
以 C# 中的 System.Drawing.FontStyle 为例。
如果需要同时有多种效果,
如:“粗体”和“下划线”的效果,可以用按位或(|)
FontStyle style = FontStyle.Bold | FontStyle.Underline;
如果需要去除 style 里的某一种效果,
- Linux系统新手学习的11点建议
刘星宇
编程工作linux脚本
随着Linux应用的扩展许多朋友开始接触Linux,根据学习Windwos的经验往往有一些茫然的感觉:不知从何处开始学起。这里介绍学习Linux的一些建议。
一、从基础开始:常常有些朋友在Linux论坛问一些问题,不过,其中大多数的问题都是很基础的。例如:为什么我使用一个命令的时候,系统告诉我找不到该目录,我要如何限制使用者的权限等问题,这些问题其实都不是很难的,只要了解了 Linu
- hibernate dao层应用之HibernateDaoSupport二次封装
wangzhezichuan
DAOHibernate
/**
* <p>方法描述:sql语句查询 返回List<Class> </p>
* <p>方法备注: Class 只能是自定义类 </p>
* @param calzz
* @param sql
* @return
* <p>创建人:王川</p>
* <p>创建时间:Jul