- JVM 内存模型深度解析:原子性、可见性与有序性的实现
练习时长两年半的程序员小胡
JVM深度剖析:从面试考点到生产实践jvmjava内存模型
在了解了JVM的基础架构和类加载机制后,我们需要进一步探索Java程序在多线程环境下的内存交互规则。JVM内存模型(JavaMemoryModel,JMM)定义了线程和主内存之间的抽象关系,它通过规范共享变量的访问方式,解决了多线程并发时的数据一致性问题。本文将从内存模型的核心目标出发,详解原子性、可见性、有序性的实现机制,以及volatile、synchronized等关键字在其中的作用。一、J
- 深入理解Java内存与运行时机制:逃逸分析、栈上分配与标量替换
码字的字节
Java村村长python开发语言逃逸分析栈上分配标量替换
Java内存与运行时机制概述Java程序的执行依赖于JVM(Java虚拟机)精心设计的内存结构和运行时机制,这套体系不仅支撑着跨平台特性,更通过智能的内存管理策略实现高性能运行。理解这套机制的核心组成,是掌握后续逃逸分析、栈上分配等高级优化的基础。JVM内存区域的层级划分JVM内存模型将运行时数据区划分为线程私有和共享两大部分。线程私有的区域包括程序计数器、虚拟机栈和本地方法栈,每个线程创建时都会
- JavaScript 函数与作用域
前端人类学
JavaScript-行为javascript函数作用域闭包递归作用域链
Hi,我是布兰妮甜!JavaScript是一种动态类型语言,它支持面向对象编程和函数式编程。函数是JavaScript的核心组成部分之一,而作用域则决定了变量的可见性和生命周期。本文将详细介绍JavaScript中的函数定义、调用、参数传递、闭包、递归以及作用域链的概念。文章目录一、函数基础二、作用域基础三、闭包四、递归五、作用域链六、总结一、函数基础1.定义函数函数声明函数可以通过函数声明的方式
- 云成本管理技术深度解析:核心原理与最佳实践
TechVision大咖圈
云成本管理成本优化云计算自动化运维预算控制资源管理
在这个"云"满天飞的时代,钱包也跟着飞?别慌!本文带你深入云成本管理的世界,让你的云账单不再成为"惊喜"。关键词:云成本管理、成本优化、云计算、资源管理、预算控制、自动化运维文章目录1.引言:云成本管理的重要性2.云成本管理核心原理2.1成本可见性原理2.2资源优化原理2.3预算控制原理3.技术架构深度解析3.1数据收集层3.2分析处理层3.3决策执行层4.最佳实践指南4.1成本监控体系建设4.2
- synchronized锁升级过程【AI笔记,仅供自己参考】
在Java中,synchronized是一种内置的同步机制,用于保证多线程环境下代码的原子性、可见性和有序性。从JDK1.6开始,为了减少锁带来的性能开销,Java对synchronized做了大量优化,引入了锁升级机制(LockEscalation)。一、什么是锁升级?锁升级是指JVM在运行时根据对象的使用情况,对对象的锁状态进行动态优化的过程。它不是“升级为更重的锁”,而是从轻量级锁逐步升级到
- Java 堆内存和MetaSpace内存问题排查
埃泽漫笔
JVMjavajvm
本文以两个简单的例子(堆内存溢出和MetaSpace(元空间)内存溢出)解释Java内存溢出的分析过程。常见的内存溢出问题(内存和MetaSpace内存)常见的内存溢出问题(内存和MetaSpace内存)。Java堆内存溢出Java堆内存(HeapMemory)主要有两种形式的错误:OutOfMemoryError:JavaheapspaceOutOfMemoryError:GCoverheadl
- 深入解析Java内存与运行时机制:垃圾回收算法与实现
码字的字节
Java村村长jvmjava开发语言GC
Java内存模型与垃圾回收概述Java内存模型(JavaMemoryModel,JMM)是理解Java程序运行时行为的基础框架,它定义了线程如何与内存交互以及多线程环境下的可见性、有序性和原子性规则。JMM的核心目标是通过抽象主内存(MainMemory)和工作内存(WorkMemory)的概念,解决多线程并发访问共享数据时的同步问题。主内存存储所有变量的实例字段、静态字段等共享数据,而每个线程拥
- Java学习第七十六部分——Java内存模型 (JMM)
目录一、前言概述提要二、关键作用解释三、核心概念剖析四、问题解决方案五、happens-before原则六、总结归纳升华一、前言概述提要Java内存模型(JavaMemoryModel,JMM)是Java虚拟机(JVM)规范中定义的一个核心概念,它规定了多线程环境下,线程如何与主内存交互以及线程之间如何通过主内存共享变量。它的主要目的是解决多线程编程中常见的三大核心问题:可见性、有序性、原子性。二
- 【网络抓包】Fiddler工具全攻略:从入门到测试实战
软件测试-阿涛
功能测试安全测试功能测试fiddler网络安全测试工具接口隔离原则
一、Fiddler简介与实现原理1.1工具定位与核心价值Fiddler是一款功能强大的HTTP/HTTPS调试代理工具,以中间人代理模式工作,能够捕获、分析、修改客户端与服务器之间的所有网络流量。其核心价值在于:全链路可见性:实时监控HTTP/HTTPS请求与响应细节,包括headers、body、Cookie、缓存等;灵活的流量控制:支持断点调试、请求重放、数据篡改,助力接口测试与问题定位;多场
- Golang学习笔记--语言入门【Go-暑假学习笔记】
天生不爱笑
golang学习笔记
目录基础语法部分相关概念基础语法部分概念详解可见性导包内部包运算符转义字符函数风格函数花括号换行代码缩进代码间隔花括号省略三元表达式数据类型部分相关概念数据类型部分概念详解布尔类型整型浮点型复数类型字符类型派生类型零值nil常量初始化iota枚举变量声明赋值匿名交换比较代码块输入输出输出stdoutprintfmtbufio格式化输入readfmtbufiobufio.Readerbufio.Sc
- 一文吃透 Java 并发三大核心问题:可见性、原子性、有序性
目录Java并发理论基础一、多线程的便利二、Java多线程并发不安全并发不安全的核心问题:共享资源+缺乏同步如何避免并发不安全三、Java多线程并发出现问题的根源1.可见性问题——线程之间看不到彼此的最新数据现象:举例:根源分析:2.原子性问题——操作是不可分割的现象:举例:根源分析:3.有序性问题——指令可能被重排现象:举例:什么叫“先把引用赋值”?根源分析:四、Java解决并发问题的方式syn
- C语言:作用域、生存期与多文件工程化开发
一、二维数组作为函数参数当二维数组作为函数参数时,需要两个参数(inta[][4],introws);其中,在定义数组时,其列数必须赋值,不能省略。例如:voidprintfArray(inta[][4],introws)二、标识符的作用域与可见性1.作用域(1).局部作用域:变量定义在函数或代码模块(如:if,for等)内,仅在该范围有效,出范围则“失效”。其中,函数形参也属于局部作用域。(2)
- 线程通信模型
1线程通信不同语言对线程通信有不同的实现,但整体分为两种范式:共享内存和消息传递优先使用消息传递。2共享内存线程通过读写共享内存区域交换数据。关键问题:同步:避免竞态条件(RaceCondition),即并发操作的执行顺序的不确定性导致结果的不确定性典型竞态条件:检查并修改、读-改-写、对象构造逃逸、多个变量的竞态条件可见性:确保一个线程的修改对其他线程立即可见有序性:编译器和CPU可能重排指令常
- 生成式引擎优化(GEO):AI搜索改写在线可见性规则,传统搜索时代或将终结
生成式引擎优化(GEO):AI搜索改写在线可见性规则,传统搜索时代或将终结一、GEO的核心机制与范式跃迁生成式引擎优化(GenerativeEngineOptimization,GEO)是AI搜索时代的新型内容优化策略,其本质是通过结构化数据、语义关联和权威性信号,提升品牌内容在生成式AI(如ChatGPT、DeepSeek、秘塔AI)答案中的引用优先级。与传统搜索引擎优化(SEO)相比,GEO实
- Java内存模型深度解析:栈、堆、方法区详解
wsj__WSJ
javajava
本文通过生动比喻和实战案例,帮你彻底掌握Java内存结构中栈内存、堆内存和方法区的核心原理与协作方式。一、为什么要区分三种内存?Java划分栈、堆、方法区是为了提高内存使用效率,不同数据有不同的生命周期和访问频率:数据类型类比场景存储位置生命周期临时数据(方法参数)便签纸栈内存方法执行期间对象实例常用文件夹堆内存对象存在期间类定义信息公司制度手册方法区程序运行期间就像高效的办公桌管理:栈内存:临时
- Java并发必知必会:核心概念深度梳理与实战要点(二)
码不停蹄的玄黓
javaspringbootspringcloudspringjvm
1.Java中的synchronized关键字深度解析synchronized是Java并发编程中最核心的同步机制,通过内置锁实现线程安全。它在解决数据竞争、内存可见性和操作原子性问题上是不可或缺的。以下从七个维度全面剖析:1.1底层实现原理:监视器锁(Monitor)1.1.1对象头关联每个Java对象内置一个Monitor监视器锁(存储于对象头的MarkWord中)//使用jol-core查看
- 【0基础PS】图层蒙版的全方位解析与应用技巧
小一亿
【0基础PS】photoshop平面学习传媒职场和发展adobe信息可视化
图层蒙版前言一、图层蒙版的底层原理:用「灰度」定义「可见性」二、图层蒙版的基础操作:从创建到编辑三、实战场景:图层蒙版的3大核心应用四、进阶技巧:让蒙版更高效的3个秘诀总结前言在Photoshop的学习过程中,很多新手会遇到这样的困惑:为什么同样的素材,别人合成的效果自然和谐,而自己拼接的却生硬突兀?答案往往藏在一个核心工具里——图层蒙版(LayerMask)。图层蒙版是PS实现「非破坏性编辑」的
- 【Java-多线程】i++ 是线程安全的吗?
Java自学之旅
大白话说Javajava安全开发语言
i++不是线程安全的操作。这个问题涉及Java内存模型、原子性操作、线程同步等核心概念,让我们通过一个银行账户的故事来理解:故事场景:银行金库争夺战假设银行金库有100元现金,两个柜员(线程)同时执行以下操作:publicvoidwithdraw(){if(balance>0){//1.读取余额balance--;//2.修改余额}}灾难现场(线程不安全)线程A读取余额100线程B同时读取余额10
- 47、确保文件属性设置的安全性
vv45678
C语言安全编码指南解析文件属性安全性只读
确保文件属性设置的安全性1.文件属性概述文件属性是操作系统用于管理和控制文件访问权限的重要机制。常见的文件属性包括只读、隐藏、系统文件、存档等。这些属性不仅影响文件的可见性和可访问性,还对文件的读写操作、备份行为等产生重要影响。因此,正确设置文件属性对于保护文件的安全至关重要。文件属性的作用只读:防止文件内容被修改。隐藏:使文件在默认情况下不显示,增加隐私性。系统文件:标记为操作系统的一部分,通常
- Java内存模型
十丈_红尘
一谈谈对Java内存模型的理解1️⃣线程私有补充知识点:1.内存简介32位:2^32的可寻址范围;64位:2^64的可寻址范围;2.地址空间的划分内核空间:指操作系统程序和C运行时的空间,包括调度程序等;用户空间:Java程序运行时实际使用的空间;3.Java内存模型JDK1.84.程序计数器 1.当前线程所执行的字节码的行号指示器; 2.改变计数器的值来选取下一条需要执行的字节码指令; 3.和线
- 多维度数据资产测绘技术在安全管控平台中的应用实践
KKKlucifer
安全数据库
一、数据资产治理困境:从“黑箱”到“可见性”的行业挑战在数字化转型加速的当下,企业数据资产呈现爆发式增长,而传统资产梳理手段因维度单一、时效性差,导致“资产黑箱”问题频发。某省级运营商曾在安全评估中发现,其核心系统中40%的数据资产处于未知状态,敏感数据分布模糊、接口调用链路缺失,直接引发376起未授权访问事件。这类问题的本质在于:资产维度碎片化:仅从网络端口或数据库层面单一测绘,无法关联业务系统
- 云成本优化的核心原则与框架
极客奇点
云服务降本增效云计算成本优化FinOps降本增效
一、引言:云成本失控的挑战据Flexera2022年报告,全球企业32%的云支出被浪费,主因包括资源闲置、配置超配、缺乏成本可见性等。面对此现状,FinOps(财务运营)作为云成本管理的核心框架,通过“成本可视-分配-优化”闭环,成为企业降本增效的关键手段。二、FinOps核心理念与三支柱框架FinOps的本质是打破财务、技术、业务的壁垒,建立数据驱动的成本治理文化。其框架由三大支柱构成:┌───
- 虚幻引擎UE5专用服务器游戏开发-19 设置头顶状态条可见性控制
AA陈超
虚幻ue5游戏引擎c++游戏服务器
头顶状态条的动态显示控制。状态条会根据与玩家角色的距离(默认300单位)进行自动隐藏,并通过定时器(默认0.2秒频率)持续检测距离变化。当角色由本地玩家控制时,状态条会自动隐藏。代码采用服务器-客户端初始化架构,并包含碰撞设置、组件创建等基础角色配置。Source/Crunch/Public/Character/CCharacter.h:变量://计时器频率UPROPERTY(EditDefaul
- Go从入门到精通(15)-包(package)
小明的小名叫小明
go从入门到精通golang开发语言
Go从入门到精通(15)包(package)到这里,Go的基础内容就快要告一段落了。最后,我们来聊聊「包」这个重要概念。包可见性相关内容我们前面已经提到过了,一个合理的包结构设计,不仅能让自己的项目层次更清晰、代码更易读维护,即便将来把代码作为工具包供他人引用,也能降低使用者的上手成本,让他们能快速理解和使用你的代码。文章目录Go从入门到精通(15)标准库regexp包锁和sync包精密计算和bi
- Security Fabric 安全架构
江苏思维驱动智能研究院有限公司
fabric安全架构运维
各组织都在加快推进数字化创新举措,所以确保其安全性跟上当今复杂而瞬息万变的威胁趋势至关重要。由于网络边缘、随处办公和多云模式呈现爆发式增长,以往耳熟能详的“网络边界”如今已分散在整个基础设施中。组织常常会“按上”各不相干的安全工具,以单独保护网络中的某功能或某一区块。但是,这种做法导致几乎无法维持组织级的可见性和一致策略。鉴于攻击序列变得更加复杂和创新,各组织都在竭力提供符合预期的安全高性能用户到
- ConcurrentHashMap 怎么保证可见性?
牛马baby
java开发语言Visio下载Visio免费面试资料
面试资料大全|各种技术资料-2000GConcurrentHashMap通过多种机制组合来保证线程间的可见性,这些机制在不同版本的JDK中有所差异,但核心思想都是利用Java内存模型(JMM)的happens-before规则来确保数据修改对所有线程可见。JDK1.7的可见性保证在JDK1.7的分段锁实现中,主要通过以下方式保证可见性:volatile变量:Segment中的count字段使用vo
- 谢飞机面试记:一场啼笑皆非的 Java 技术面大揭秘!
谢飞机面试记:一场啼笑皆非的Java技术面大揭秘!面试官:谢飞机,听说你要来我们公司应聘Java开发工程师?谢飞机:对对对,我可是个技术宅,什么SpringBoot、SpringCloud啥的都玩得溜。第一轮问题:基础篇面试官:谈谈你对Java内存模型的理解。谢飞机:嗯...Java内存模型主要是关于线程之间如何通信和共享数据的吧。比如说,volatile关键字可以保证变量的可见性,synchro
- Java进阶学习路径与资源推荐
java
Java的进阶之路Java作为一门成熟且广泛应用的编程语言,进阶学习需要系统性地掌握多个领域的知识。以下是一个清晰的Java进阶路径:一、Java核心深入JVM深度理解内存模型:堆、栈、方法区、元空间垃圾回收机制与算法:G1、CMS、ZGC等类加载机制与字节码增强JVM调优实战并发编程专家级Java内存模型(JMM)并发工具包深入:AQS、Fork/Join并发容器源码分析无锁编程与性能优化Jav
- C++与Java内存共享技术:跨平台与跨语言实现指南
引言在C++和Android项目移植过程中,内存共享是提高性能、减少数据拷贝的关键技术。本文解决了Windows与Android平台处理内存共享问题,采用了会话管理机制保存了同一状态;还解决了C++项目移植在Android项目中依赖过多的问题,采用了Pimpl(PointertoImplementation)设计模式来隐藏实现细节,减少头文件依赖:Windows平台C++进程间的内存共享C++与J
- java并发编程--可见性、原子性、有序性
weixin_ab
jvmjvm
在Java并发编程中,可见性、原子性和有序性是保证多线程程序正确性的三个重要特性:1.原子性(Atomicity)定义:原子性指的是一个操作是不可中断的,要么全部执行成功,要么全部不执行。就好像是一个“原子”,不可再分。在Java中,对基本数据类型(除long和double在某些平台上)的简单读写操作是原子的,但像i++这样的复合操作不是原子的。示例:publicclassAtomicityExa
- jvm调优总结(从基本概念 到 深度优化)
oloz
javajvmjdk虚拟机应用服务器
JVM参数详解:http://www.cnblogs.com/redcreen/archive/2011/05/04/2037057.html
Java虚拟机中,数据类型可以分为两类:基本类型和引用类型。基本类型的变量保存原始值,即:他代表的值就是数值本身;而引用类型的变量保存引用值。“引用值”代表了某个对象的引用,而不是对象本身,对象本身存放在这个引用值所表示的地址的位置。
- 【Scala十六】Scala核心十:柯里化函数
bit1129
scala
本篇文章重点说明什么是函数柯里化,这个语法现象的背后动机是什么,有什么样的应用场景,以及与部分应用函数(Partial Applied Function)之间的联系 1. 什么是柯里化函数
A way to write functions with multiple parameter lists. For instance
def f(x: Int)(y: Int) is a
- HashMap
dalan_123
java
HashMap在java中对很多人来说都是熟的;基于hash表的map接口的非同步实现。允许使用null和null键;同时不能保证元素的顺序;也就是从来都不保证其中的元素的顺序恒久不变。
1、数据结构
在java中,最基本的数据结构无外乎:数组 和 引用(指针),所有的数据结构都可以用这两个来构造,HashMap也不例外,归根到底HashMap就是一个链表散列的数据
- Java Swing如何实时刷新JTextArea,以显示刚才加append的内容
周凡杨
java更新swingJTextArea
在代码中执行完textArea.append("message")后,如果你想让这个更新立刻显示在界面上而不是等swing的主线程返回后刷新,我们一般会在该语句后调用textArea.invalidate()和textArea.repaint()。
问题是这个方法并不能有任何效果,textArea的内容没有任何变化,这或许是swing的一个bug,有一个笨拙的办法可以实现
- servlet或struts的Action处理ajax请求
g21121
servlet
其实处理ajax的请求非常简单,直接看代码就行了:
//如果用的是struts
//HttpServletResponse response = ServletActionContext.getResponse();
// 设置输出为文字流
response.setContentType("text/plain");
// 设置字符集
res
- FineReport的公式编辑框的语法简介
老A不折腾
finereport公式总结
FINEREPORT用到公式的地方非常多,单元格(以=开头的便被解析为公式),条件显示,数据字典,报表填报属性值定义,图表标题,轴定义,页眉页脚,甚至单元格的其他属性中的鼠标悬浮提示内容都可以写公式。
简单的说下自己感觉的公式要注意的几个地方:
1.if语句语法刚接触感觉比较奇怪,if(条件式子,值1,值2),if可以嵌套,if(条件式子1,值1,if(条件式子2,值2,值3)
- linux mysql 数据库乱码的解决办法
墙头上一根草
linuxmysql数据库乱码
linux 上mysql数据库区分大小写的配置
lower_case_table_names=1 1-不区分大小写 0-区分大小写
修改/etc/my.cnf 具体的修改内容如下:
[client]
default-character-set=utf8
[mysqld]
datadir=/var/lib/mysql
socket=/va
- 我的spring学习笔记6-ApplicationContext实例化的参数兼容思想
aijuans
Spring 3
ApplicationContext能读取多个Bean定义文件,方法是:
ApplicationContext appContext = new ClassPathXmlApplicationContext(
new String[]{“bean-config1.xml”,“bean-config2.xml”,“bean-config3.xml”,“bean-config4.xml
- mysql 基准测试之sysbench
annan211
基准测试mysql基准测试MySQL测试sysbench
1 执行如下命令,安装sysbench-0.5:
tar xzvf sysbench-0.5.tar.gz
cd sysbench-0.5
chmod +x autogen.sh
./autogen.sh
./configure --with-mysql --with-mysql-includes=/usr/local/mysql
- sql的复杂查询使用案列与技巧
百合不是茶
oraclesql函数数据分页合并查询
本片博客使用的数据库表是oracle中的scott用户表;
------------------- 自然连接查询
查询 smith 的上司(两种方法)
&
- 深入学习Thread类
bijian1013
javathread多线程java多线程
一. 线程的名字
下面来看一下Thread类的name属性,它的类型是String。它其实就是线程的名字。在Thread类中,有String getName()和void setName(String)两个方法用来设置和获取这个属性的值。
同时,Thr
- JSON串转换成Map以及如何转换到对应的数据类型
bijian1013
javafastjsonnet.sf.json
在实际开发中,难免会碰到JSON串转换成Map的情况,下面来看看这方面的实例。另外,由于fastjson只支持JDK1.5及以上版本,因此在JDK1.4的项目中可以采用net.sf.json来处理。
一.fastjson实例
JsonUtil.java
package com.study;
impor
- 【RPC框架HttpInvoker一】HttpInvoker:Spring自带RPC框架
bit1129
spring
HttpInvoker是Spring原生的RPC调用框架,HttpInvoker同Burlap和Hessian一样,提供了一致的服务Exporter以及客户端的服务代理工厂Bean,这篇文章主要是复制粘贴了Hessian与Spring集成一文,【RPC框架Hessian四】Hessian与Spring集成
在
【RPC框架Hessian二】Hessian 对象序列化和反序列化一文中
- 【Mahout二】基于Mahout CBayes算法的20newsgroup的脚本分析
bit1129
Mahout
#!/bin/bash
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information re
- nginx三种获取用户真实ip的方法
ronin47
随着nginx的迅速崛起,越来越多公司将apache更换成nginx. 同时也越来越多人使用nginx作为负载均衡, 并且代理前面可能还加上了CDN加速,但是随之也遇到一个问题:nginx如何获取用户的真实IP地址,如果后端是apache,请跳转到<apache获取用户真实IP地址>,如果是后端真实服务器是nginx,那么继续往下看。
实例环境: 用户IP 120.22.11.11
- java-判断二叉树是不是平衡
bylijinnan
java
参考了
http://zhedahht.blog.163.com/blog/static/25411174201142733927831/
但是用java来实现有一个问题。
由于Java无法像C那样“传递参数的地址,函数返回时能得到参数的值”,唯有新建一个辅助类:AuxClass
import ljn.help.*;
public class BalancedBTree {
- BeanUtils.copyProperties VS PropertyUtils.copyProperties
诸葛不亮
PropertyUtilsBeanUtils
BeanUtils.copyProperties VS PropertyUtils.copyProperties
作为两个bean属性copy的工具类,他们被广泛使用,同时也很容易误用,给人造成困然;比如:昨天发现同事在使用BeanUtils.copyProperties copy有integer类型属性的bean时,没有考虑到会将null转换为0,而后面的业
- [金融与信息安全]最简单的数据结构最安全
comsci
数据结构
现在最流行的数据库的数据存储文件都具有复杂的文件头格式,用操作系统的记事本软件是无法正常浏览的,这样的情况会有什么问题呢?
从信息安全的角度来看,如果我们数据库系统仅仅把这种格式的数据文件做异地备份,如果相同版本的所有数据库管理系统都同时被攻击,那么
- vi区段删除
Cwind
linuxvi区段删除
区段删除是编辑和分析一些冗长的配置文件或日志文件时比较常用的操作。简记下vi区段删除要点备忘。
vi概述
引文中并未将末行模式单独列为一种模式。单不单列并不重要,能区分命令模式与末行模式即可。
vi区段删除步骤:
1. 在末行模式下使用:set nu显示行号
非必须,随光标移动vi右下角也会显示行号,能够正确找到并记录删除开始行
- 清除tomcat缓存的方法总结
dashuaifu
tomcat缓存
用tomcat容器,大家可能会发现这样的问题,修改jsp文件后,但用IE打开 依然是以前的Jsp的页面。
出现这种现象的原因主要是tomcat缓存的原因。
解决办法如下:
在jsp文件头加上
<meta http-equiv="Expires" content="0"> <meta http-equiv="kiben&qu
- 不要盲目的在项目中使用LESS CSS
dcj3sjt126com
Webless
如果你还不知道LESS CSS是什么东西,可以看一下这篇文章,是我一朋友写给新人看的《CSS——LESS》
不可否认,LESS CSS是个强大的工具,它弥补了css没有变量、无法运算等一些“先天缺陷”,但它似乎给我一种错觉,就是为了功能而实现功能。
比如它的引用功能
?
.rounded_corners{
- [入门]更上一层楼
dcj3sjt126com
PHPyii2
更上一层楼
通篇阅读完整个“入门”部分,你就完成了一个完整 Yii 应用的创建。在此过程中你学到了如何实现一些常用功能,例如通过 HTML 表单从用户那获取数据,从数据库中获取数据并以分页形式显示。你还学到了如何通过 Gii 去自动生成代码。使用 Gii 生成代码把 Web 开发中多数繁杂的过程转化为仅仅填写几个表单就行。
本章将介绍一些有助于更好使用 Yii 的资源:
- Apache HttpClient使用详解
eksliang
httpclienthttp协议
Http协议的重要性相信不用我多说了,HttpClient相比传统JDK自带的URLConnection,增加了易用性和灵活性(具体区别,日后我们再讨论),它不仅是客户端发送Http请求变得容易,而且也方便了开发人员测试接口(基于Http协议的),即提高了开发的效率,也方便提高代码的健壮性。因此熟练掌握HttpClient是很重要的必修内容,掌握HttpClient后,相信对于Http协议的了解会
- zxing二维码扫描功能
gundumw100
androidzxing
经常要用到二维码扫描功能
现给出示例代码
import com.google.zxing.WriterException;
import com.zxing.activity.CaptureActivity;
import com.zxing.encoding.EncodingHandler;
import android.app.Activity;
import an
- 纯HTML+CSS带说明的黄色导航菜单
ini
htmlWebhtml5csshovertree
HoverTree带说明的CSS菜单:纯HTML+CSS结构链接带说明的黄色导航
在线体验效果:http://hovertree.com/texiao/css/1.htm代码如下,保存到HTML文件可以看到效果:
<!DOCTYPE html >
<html >
<head>
<title>HoverTree
- fastjson初始化对性能的影响
kane_xie
fastjson序列化
之前在项目中序列化是用thrift,性能一般,而且需要用编译器生成新的类,在序列化和反序列化的时候感觉很繁琐,因此想转到json阵营。对比了jackson,gson等框架之后,决定用fastjson,为什么呢,因为看名字感觉很快。。。
网上的说法:
fastjson 是一个性能很好的 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发。
- 基于Mybatis封装的增删改查实现通用自动化sql
mengqingyu
DAO
1.基于map或javaBean的增删改查可实现不写dao接口和实现类以及xml,有效的提高开发速度。
2.支持自定义注解包括主键生成、列重复验证、列名、表名等
3.支持批量插入、批量更新、批量删除
<bean id="dynamicSqlSessionTemplate" class="com.mqy.mybatis.support.Dynamic
- js控制input输入框的方法封装(数字,中文,字母,浮点数等)
qifeifei
javascript js
在项目开发的时候,经常有一些输入框,控制输入的格式,而不是等输入好了再去检查格式,格式错了就报错,体验不好。 /** 数字,中文,字母,浮点数(+/-/.) 类型输入限制,只要在input标签上加上 jInput="number,chinese,alphabet,floating" 备注:floating属性只能单独用*/
funct
- java 计时器应用
tangqi609567707
javatimer
mport java.util.TimerTask; import java.util.Calendar; public class MyTask extends TimerTask { private static final int
- erlang输出调用栈信息
wudixiaotie
erlang
在erlang otp的开发中,如果调用第三方的应用,会有有些错误会不打印栈信息,因为有可能第三方应用会catch然后输出自己的错误信息,所以对排查bug有很大的阻碍,这样就要求我们自己打印调用的栈信息。用这个函数:erlang:process_display (self (), backtrace).需要注意这个函数只会输出到标准错误输出。
也可以用这个函数:erlang:get_s