- Spring Boot分层架构详解:从Controller到Service再到Mapper的完整流程
Leaton Lee
springboot架构后端java
引言:为什么学习SpringBoot分层架构?在现代企业级应用开发中,分层架构是至关重要的。它不仅提高了代码的可维护性,还使得团队协作更加高效。SpringBoot作为Java后端开发的事实标准,其分层架构模式几乎贯穿了所有企业级应用的开发流程。本文将以一个实际案例(用户管理系统)为例,详细解析SpringBoot中Controller、POJO、Mapper、Service、ServiceImp
- 详解Binlog 和 Redo Log的区别和底层逻辑
引言:为什么你的数据库会“分身术”?想象这样一个场景:你的Java应用突然崩溃,重启后发现数据丢失了一半。这时,你会想起数据库的“时光机”——Binlog,或者它的“安全网”——RedoLog?Binlog(BinaryLog)Binlog是MySQL数据库中的一种日志文件,用于记录所有对数据库执行的数据修改操作(如INSERT、UPDATE、DELETE等)。它以二进制的形式存储,主要用于数据复
- 网络安全之注入攻击:原理、危害与防御之道
网络安全之注入攻击:原理、危害与防御之道引言在OWASPTop10安全风险榜单中,注入攻击常年占据首位。2023年Verizon数据泄露调查报告显示,67%的Web应用漏洞与注入类攻击直接相关。本文从技术视角系统解析注入攻击的核心原理、典型场景及防御体系,揭示这一"网络安全头号杀手"的攻防博弈。一、注入攻击的本质与分类1.1基本定义当应用程序将非可信数据(UntrustedData)作为代码解析时
- java从服务器EXECL文件下载
三思的韦小宝
java服务器开发语言运维
Java从服务器下载Excel文件的实现在现代软件开发中,经常需要与服务器进行数据交互,其中一种常见的场景是从服务器下载Excel文件。本文将介绍如何在Java中实现从服务器下载Excel文件,并展示相关的代码示例。为什么需要从服务器下载Excel文件Excel文件是一种广泛使用的电子表格格式,它能够存储大量的数据和公式。在企业应用中,经常需要将数据以Excel的形式进行存储和传输。然而,由于Ex
- Python 是如何执行我的代码的?
冰糖心书房
Pythonpythonjavalinux
理解Python如何执行你的代码,可以帮助我们解释很多“为什么”——为什么会有.pyc文件?为什么Python相对较慢?多线程为什么不能利用多核?我们可以用一个“厨师做菜”的比喻来理解整个过程,然后再深入技术细节。一、比喻:厨师(Python)根据菜谱(你的代码)做菜想象一下,你是一位顾客,写了一份非常精确的菜谱(你的.py文件)交给一位名叫CPython的大厨(最常见的Python解释器)。第一
- 聊聊fps游戏为什么选择C/S状态同步方案
你一身傲骨怎能输
商业化射击游戏技术专栏射击游戏状态同步
老罗带大家梳理和补充一下C/S状态同步方案的选择、原因、常见问题与优化建议,并给出一些实际工程中的思考和建议,便于你在设计和实现时参考。一、C/S状态同步方案简述C/S(Client/Server)状态同步方案,核心流程是:客户端只上传输入(如移动、开火等操作),不直接上传状态。服务器接收输入,执行权威逻辑(如判定是否能开火、是否击中、是否能移动等),更新世界状态。服务器将最新状态广播给所有客户端
- FastAPI WebSocket:你的双向通信通道为何如此丝滑?
url:/posts/0faebb0f6c2b1bde4ba75869f4f67b76/title:如何在FastAPI中玩转WebSocket,让实时通信不再烦恼?date:2025-07-06T20:11:20+08:00lastmod:2025-07-06T20:11:20+08:00author:cmdragonsummary:FastAPI的WebSocket路由通过@app.webso
- 网络安全之XSS漏洞:原理、危害与防御实践
weixin_47233946
信息安全web安全xss安全
引言跨站脚本攻击(Cross-SiteScripting,XSS)作为OWASP十大Web应用安全风险中的常客,是开发者必须掌握的核心攻防领域。不同于其他漏洞的直接性,XSS通过浏览器端的代码注入实现攻击传播,具有隐蔽性强、危害多样的特点。本文将深入剖析XSS漏洞的底层逻辑,探讨其实际影响,并提供系统化的防御方案。一、XSS攻击技术原理1.1浏览器执行上下文混淆XSS的根本成因在于开发者未能正确处
- 容器基础5-Helm 与 K8s 的关系
旗浩QH
Android系统虚拟化kubernetes容器云原生
一、Helm是什么?为什么需要它?K8s是强大的容器编排平台,但部署复杂应用时(如包含Web服务、数据库、缓存等多个组件的系统),需要编写大量YAML文件,管理成本高。Helm就是为简化K8s应用部署而生的工具,它被称为“K8s的包管理器”,类似Ubuntu的apt或Mac的brew。二、Helm如何工作?核心概念解析Chart(图表)Helm的基本单位,是一组YAML文件的集合,描述了一个或多个
- 分布式ID设计方案详解:从理论到实践
一、为什么需要分布式ID?在分布式系统中,唯一ID的生成面临两大核心挑战:全局唯一性:避免跨节点、跨数据中心的ID冲突。有序性:确保ID按时间或业务规则递增,提升数据库写入性能(如InnoDB的B+树索引)。传统单机自增ID(如MySQLAUTO_INCREMENT)无法满足分库分表、高并发等场景需求,因此需引入分布式ID方案。二、主流分布式ID方案对比方案优点缺点适用场景UUID简单、无中心化依
- 下一代防火墙
999感冒灵.
网络安全
一.防火墙是什么1.防火墙的定义:防火墙是一个位于内部网络与外部网络之间的安全系统(网络中不同区域之间),是按照一定的安全策略建立起来的硬件或软件系统,用于流量控制的系统(隔离),保护内部网络资源免受威胁(保护)。防火墙的主要用于防止黑客对安全区域网络的攻击,保护内部网络的安全运行。2.防火墙基本性质:①安全区域和接口:一台防火墙具有多个接口每个接口属于一个安全区域,每个区域具有唯一的名称,所以防
- Kali系统MSF模块暴力破解MySQL弱口令漏洞
一、实验环境1.攻击方:攻击环境使用KALI系统(使用虚拟机搭建)的Metasploit模块,msfconsole是metasploit中的一个工具,它集成了很多漏洞的利用的脚本,并且使用起来很简单的网络安全工具。这里要特别强调:被攻击的环境必须开启mysql远程登陆服务,通常MySQL开启的端口号是3306,故而一般情况下要求被攻击的服务器开启了3306端口号。2.被攻击MySQL环境:Wind
- 在C#中,可以不实例化一个类而直接调用其静态字段
就是有点傻
C#c#
这是因为静态成员(staticmembers)属于类本身,而不是类的实例。这是静态成员的核心特性1.静态成员属于类,而非实例当用static关键字修饰字段、方法或属性时,这些成员会绑定到类级别,而不是实例级别。它们在类加载时(通常是在程序启动或首次访问时)由CLR(公共语言运行时)分配内存并初始化,与是否创建实例无关。2.为什么不需要实例化?内存分配:静态字段的内存空间在程序运行期间只有一份,所有
- 如何在YashanDB数据库中高效处理海量数据
数据库
在现代数据库技术中,海量数据的管理和处理成为了一个普遍存在的挑战。随着数据规模的不断扩大,性能瓶颈、数据一致性问题以及易用性需求等问题日益凸显。这些挑战促使企业寻求更为高效的解决方案,以支撑海量数据的存储、分析与挖掘。YashanDB作为一款专为处理海量数据而设计的数据库,凭借其高可扩展性、高并发性能和高可用性,提供了一系列技术手段以应对这些挑战。本文旨在探讨如何在YashanDB中高效地管理和处
- Redis Geo结构详解:从原理到实战,手把手教你玩转地理位置功能
码不停蹄的玄黓
redis数据库缓存
在互联网产品中,“附近的人”“附近的店”“配送范围”这类功能越来越常见。以前做这种功能可能需要依赖MySQL的经纬度计算,或者上专业的GIS数据库(比如PostGIS),但Redis3.2版本后推出的Geo(地理信息)模块,用极简的API和高效的性能,完美解决了这类问题。今天咱们就来深入聊聊RedisGeo的底层原理、常用命令和实战场景。一、为什么需要RedisGeo?先想个场景:你要做一个“附近
- 解决Nginx安全漏洞【CVE-2018-16844、CVE-2019-9511、CVE-2021-3618、CVE-2018-16843、CVE-2021-23017】等问题
名字咋这么难起捏
服务器配置nginx运维
前言最近网信办通报某服务器存在nginx[CVE-2018-16844、CVE-2019-9511、CVE-2021-3618、CVE-2018-16843、CVE-2021-23017、CVE-2019-9513]等漏洞,需要进行修复,查阅了下对应的资料发现这些漏洞是是Nginx的HTTP/2模块中的一个安全问题。此漏洞允许攻击者通过特定的HTTP/2请求构造,可能导致服务器崩溃或执行拒绝服务(
- 如何自定义R语言函数?参数中的省略号`...`有什么用?
「已注销」
python编程语言java人工智能c++
学习R未必要学习很多工具包,有时候根据自己的理解去自定义函数也是一个不错的选择。本篇推文主要介绍两方面的内容:在R语言中自定义函数的一般方法;函数参数中...的作用。在看函数的帮助文档时会发现许多函数的参数中都有...符号,它是表示被省略的参数吗?如果是,作者为什么会省略它?如果不是,那又表示什么含义呢?不久前,学堂君分享了自己编写的计算空间可达性的函数,详见推文:两步移动搜索法(2SFCA)计算
- 多模态大模型的技术应用与未来展望:重构AI交互范式的新引擎
zhaoyi_he
重构人工智能
一、引言:为什么多模态是AI发展的下一场革命?过去十年,深度学习推动了计算机视觉和自然语言处理的飞跃,但两者的发展路径长期割裂。随着生成式AI和大模型时代的到来,**多模态大模型(MultimodalFoundationModels)**以统一的建模方式处理图像、文本、音频、视频等多源数据,重塑了“感知-认知-决策”链条,为AGI迈出关键一步。OpenAI的GPT-4o、Google的Gemini
- ESP32-S3驱动RGB屏幕显示飘移问题
为什么驱动RGBLCD屏幕时出现偏移(显示画面整体漂移)?原因PCLK设置过高,PSRAM带宽跟不上。Listitem受写flash操作影响,期间PSRAM被禁用。配置方面提高PSRAM和flash带宽,设置flash为QIO120M,PSRAM为Octal120M。开启CONFIG_COMPILER_OPTIMIZATION_PERF。降低data_cache_line_size到32Byte。
- 从源码到思想:OneCode框架模块化设计如何解决前端大型应用痛点
低代码老李
软件行业领域设计低代码前端框架架构
在前端大型应用开发中,“模块拆分混乱、依赖关系复杂、资源加载失控”是三大痛点。OneCode框架通过Module.js(模块基类)和ModuleFactory.js(模块工厂)构建了一套完整的模块化管理机制,不仅实现了模块的“生老病死”全生命周期管控,更解决了跨模块通信、依赖加载等核心问题。本文从“为什么这么设计”的角度,拆解其底层逻辑与实战价值。一、先理解:前端模块化的核心矛盾无论用什么框架,模
- 攻防对抗的工作原理和架构
hao_wujing
安全
大家读完觉得有帮助记得关注和点赞!!!**攻防对抗(CyberKillChainDefense)**是网络安全领域的动态博弈过程,攻击方通过**入侵链**突破防御,防御方则构建**纵深的检测响应体系**进行拦截反制。其本质是**攻击成本与防御效能的持续对抗升级**。以下从工作原理到架构的深度解析:---###一、攻防对抗核心工作原理####**攻击链(CyberKillChain)vs防御链(De
- Subversion FAQ(常见问题解答)
lxt2lili
Java第三方插件subversionsvnapache工作服务器windows
常见问题:为什么会有这样一个项目?Subversion是私有软件吗?我听说它是属于CollabNet公司的。Subversion用在我的项目上是否足够稳定?Subversion的客户端/服务器在协同工作时的策略是怎样的?Subversion可以运行在哪些操作系统上?所有它的一切是否是一种新的文件系统?比方说ext2文件系统?为了运行一个Subversion服务器,哪些硬件是我所需要的?我听说Sub
- amd 5600g和5600x性能差距
jioulongzi
c#
23年,矿难于是买的5600g,想用核显撑一段时间。后面入手了4K显示器,发现核显还是有点吃力。于是又购置了6650XT显卡但是依然有个问题,喔配置5600g+6650xt+32g内存+1t固态。下面是在1080p中表现:就算玩个Lol,开局能200多帧,玩个十分钟一直掉帧。最低只能稳定在90+,平均应该是120.不知道为什么,包括绝地求生,单机什么的。于是今年就换了5600x,老板最后居然给我发
- 【机器学习笔记Ⅰ】13 正则化代价函数
正则化代价函数(RegularizedCostFunction)详解正则化代价函数是机器学习中用于防止模型过拟合的核心技术,通过在原始代价函数中添加惩罚项,约束模型参数的大小,从而提高泛化能力。以下是系统化的解析:1.为什么需要正则化?过拟合问题:当模型过于复杂(如高阶多项式回归、深度神经网络)时,可能完美拟合训练数据但泛化性能差。解决方案:在代价函数中增加对参数的惩罚,抑制不重要的特征权重。2.
- 自学黑客(网络安全),一般人我劝你还是算了吧
网络安全工程师教学
兼职副业网络安全黑客技术web安全安全网络人工智能学习
我是一名8年半的网安工程师“老司机”,要给准备入坑的同学泼盆冷水了,网络安全真的不是一般人能学的。有人会问“你一个8年的网安老司机,为什么还给大家泼冷水”?好多人说:网安基础很简单,是个人稍微认真点都能懂,给网安打上了简单、易懂的标签。然后上来就是一波言论浮夸的输出,把一些很基础很浅显的技术点拆解出来,让小白快速上手,误导新手,让他们以为网络安全就这么回事儿,可一到真正实操,哦豁,啥也不会。这导致
- STM32-内存运行原理与RAM执行实战
东方少爷
内存地址单片机嵌入式硬件arm开发硬件工程stm32
一、底层原理深度解析(先懂“为什么要拷贝”)1.存储介质本质差异(ROM/FlashvsRAM)ROM(以STM32内部Flash为例):物理特性:电可擦写非易失性存储(虽叫ROM,实际可通过编程改写),擦写次数有限(一般万次级别),读速度慢(STM32F1系列Flash读取周期约30-50ns)。存储内容:程序代码(指令)、只读常量(const修饰的全局变量、字符串字面量)、初始化的全局变量(R
- 【机器学习笔记Ⅰ】7 向量化
巴伦是只猫
机器学习机器学习笔记人工智能
向量化(Vectorization)详解向量化是将数据或操作转换为向量(或矩阵)形式,并利用并行计算高效处理的技术。它是机器学习和数值计算中的核心优化手段,能显著提升代码运行效率(尤其在Python中避免显式循环)。1.为什么需要向量化?(1)传统循环的缺陷低效:Python的for循环逐元素操作,速度慢。代码冗长:需手动处理每个元素。示例:计算两个数组的点积(非向量化)a=[1,2,3]b=[4
- 疑问:SSL证书部署后,为什么还是显示不安全?
运维教程ssl证书
企业网站需使用HTTPS协议,已经被众多的企业网站认可。从HTTP到HTTPS的转换只需要安装部署SSL证书就能轻易实现。但是也有部分SSL证书用户在安装证书后,网站的地址栏仍然显示的是不安全,并没有起到加密网站的作用。这样的问题为什么会产生,又该如何解决呢?1.域名与证书不匹配部署SSL证书的作用之一就是对网站的真实身份进行验证,倘若用户访问的网站域名和SSL证书中设置的域名不一致时,浏览器就会
- 了解GC吗?什么是GC?
后端java
GC是什么?为什么要GC?GC(GarbageCollection),垃圾回收,是Java与C++的主要区别之一。作为Java开发者,一般不需要专门编写内存回收和垃圾清理代码。这是因为在Java虚拟机中,存在自动内存管理和垃圾清理机制。对JVM中的内存进行标记,并确定哪些内存需要回收,根据一定的回收策略,自动的回收内存,保证JVM中的内存空间,防止出现内存泄露和溢出问题。GC是任意时候都能进行的吗
- 卵生兄弟网络工作原理和架构
hao_wujing
安全
大家读完觉得有帮助记得关注和点赞!!!以下从网络安全角度解析**卵生兄弟网络**的深度技术架构与工作原理。该概念通常指**具有冗余唤醒和协同攻击能力的模块化恶意网络**(如APT组织所用),或**防御端的双生活动目录/蜜罐系统**。我们将从攻击与防御两个维度展开:---###一、攻击视角:恶意「卵生兄弟网络」架构(APT高级威胁)####**核心设计目标**-**隐蔽持久化**:主模块被清除时,备
- 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