- Ehcache、Caffeine、Spring Cache、Redis、J2Cache、Memcached 和 Guava Cache 的主要区别
MonkeyKing.sun
springredismemcached
主流缓存技术Ehcache、Caffeine、SpringCache、Redis、J2Cache、Memcached和GuavaCache的主要区别,涵盖其架构、功能、适用场景和优缺点等方面:Ehcache类型:本地缓存(JVM内存缓存)特点:轻量级,运行在JVM内部,易于集成到Java应用中。支持堆内、堆外和磁盘缓存,适合处理中小型数据集。提供丰富的缓存配置,如TTL(生存时间)、TTI(空闲时
- 小米YU7智能座舱的技术栈推演分析
Alex艾力的IT数字空间
微服务知识图谱图像处理数据分析聚类AudioLMnlp
小米YU7的智能座舱以“人车家全生态”战略为核心,深度融合小米在消费电子领域的优势与汽车智能化需求,构建了从硬件到软件、从交互到生态的完整技术体系。技术栈解析如下:一、硬件架构:高性能芯片与多屏交互旗舰级芯片组合高通骁龙8Gen3座舱SoC:采用4nm工艺,支持1.35秒极速启动应用、15分钟整车OTA升级,提供流畅的车机交互体验。英伟达DRIVEAGXThor平台:算力达700TOPS,基于Bl
- SpringBoot 整合 Guava Cache 实现本地缓存
m0_74824170
springbootguava缓存
目录1、背景2、手写一个简单的本地缓存3、GuavaCache简介4、GuavaCache使用4.1、创建LoadingCache缓存4.2、创建CallableCache缓存4.3、可选配置分析4.3.1、缓存的并发级别4.3.2、缓存的初始容量设置4.3.3、缓存失效回收策略4.3.3.1、基于容量/权重回收4.3.3.2、定时回收4.3.3.3、基于引用回收4.3.3.4、显式清除4.3.4
- 【图像处理入门】12. 综合项目与进阶:超分辨率、医学分割与工业检测
小米玄戒Andrew
图像处理:从入门到专家图像处理人工智能深度学习算法python计算机视觉CV
摘要本周将聚焦三个高价值的综合项目,打通传统算法与深度学习的技术壁垒。通过图像超分辨率重建对比传统方法与深度学习方案,掌握医学图像分割的U-Net实现,设计工业缺陷检测的完整流水线。每个项目均包含原理解析、代码实现与性能优化,帮助读者从“技术应用”迈向“系统设计”。一、项目1:图像超分辨率重建(从模糊到清晰的跨越)1.技术背景与核心指标超分辨率(SR)是通过算法将低分辨率(LR)图像恢复为高分辨率
- 22. 括号生成
题目:数字n代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且有效的括号组合。解题思路:我觉得本质上来说,就是从数组中[‘(’,‘)’]可重复地选择元素,生成一个长度为2n的括号组合。为了使这个括号组合是有效的,那么在选择的过程中就有一些约束:1、左括号的数量不能超过n。2、左括号的数量不能小于有括号的数量。3、当左括号和有括号的数量都等于n时,就是收获结果的时候。4、因为我们的pa
- Go 中 gRPC Metadata 使用详解
Code季风
深入探索GoRPC:构建与实践golang开发语言后端学习rpc
在分布式系统中,客户端和服务端之间的通信不仅仅是数据的交换,还涉及到身份验证、日志追踪等额外信息的传递。gRPC提供了一种名为Metadata的机制来满足这种需求。本文将通过一个具体的示例来讲解如何在Go语言中使用gRPC的Metadata。一、简介Metadata是一种键值对结构,它可以在不改变请求或响应消息体的情况下携带额外的信息。这些信息通常用于认证(如token)、追踪(如traceid)
- PostgreSQL 主从集群搭建
思静鱼
#Mysql-数据库postgresql数据库
下面是PostgreSQL主从复制(StreamingReplication)环境的安装与配置指南,适合在两台或多台服务器之间构建一主一从(或一主多从)的高可用读写分离系统。环境准备角色主机名/IP说明主库192.168.1.10可读写,负责复制源从库192.168.1.11只读,从主库同步数据推荐PostgreSQL版本一致,例如15.x;操作系统为Ubuntu/CentOS均可。一、安装Pos
- Python实例之十大歌手评分
*濒危物种*
算法前端python
实例背景:十大歌手,为丰富校园文化生活,学校拟组织一场歌手大赛,从参赛选手中选拔出十名相对突出的学生,授予“校园十大歌手”称号。比赛之中设置有评委组,每名选手演唱完毕之后会由评委组的十名评委打分。为保证比赛公平公正、防止作弊和恶意打分,计算得分(即平均分)时会先去掉最高分和最低分要求实现:根据每位评委的输入分数,实现计算每位选手得分的功能。【重要步骤提示】定义列表放评委给分找出列表的最高分和最低分
- Python机器学习元学习库higher
音程
机器学习人工智能python机器学习
higher是一个用于元学习(Meta-Learning)和高阶导数(Higher-ordergradients)的Python库,专为PyTorch设计。它扩展了PyTorch的自动微分机制,使得在训练过程中可以动态地计算参数的梯度更新,并把这些更新过程纳入到更高阶的梯度计算中。一、主要用途higher主要用于以下场景:元学习(Meta-Learning)比如MAML(Model-Agnosti
- 从台式电脑硬件架构看前后端分离开发模式
程序猿全栈の董
电脑硬件架构状态模式
在软件开发领域,前后端分离早已成为主流架构设计理念。它将系统的业务逻辑处理与用户界面展示解耦,提升开发效率与系统可维护性。有趣的是,我们日常生活中常见的台式电脑硬件架构,竟与这一理念有着异曲同工之妙。今天,就让我们从台式电脑的硬件组成出发,深入探讨其与前后端分离开发模式的内在联系。文章目录一、台式电脑硬件架构与前后端的类比1.1主机:后端的硬件化身1.2显示屏:前端的硬件呈现二、二者分离模式的共同
- 前端 E2E 测试实践:打造稳定 Web 应用的利器!
朱公子的Note
编程语言前端端到端E2E测试
在现代Web开发中,端到端(E2E)测试就像为应用程序配备了一面“照妖镜”,它模拟真实用户的操作流程,从用户点击到获得反馈的每一步都进行验证。想象一下,你刚刚完成了一个完美的登录功能,结果用户反馈“点了登录按钮没有反应”——这种“我以为OK其实不行”的问题,正是E2E测试要解决的。E2E测试并不止于前端界面,它涵盖了前端、后端及数据库等所有环节,确保每个节点都能正常工作。历史经验也提醒我们其重要性
- Python 常用正则表达式大全
朱公子的Note
python爬虫正则表达式
你是否在写Python爬虫时,总是卡在“正则提取”这一步?明明页面源码已经拿到,却怎么也匹配不到目标数据……不是提取失败,就是提取不全,搞得调试半天还抓不到核心字段?别急!今天我们就来一次**“正则一网打尽”**,专为爬虫而生的表达式宝典,让你写起爬虫来如虎添翼!在当下数据驱动时代,网络数据是企业的“金矿”,而Python爬虫则是挖掘这金矿的“利器”!从电商价格到社交媒体评论,爬虫技术让数据采集变
- 微信小程序 实现导航守卫
麦兜的明天
前端小程序
小程序中是不支持路由拦截的,需要开发者自行封装路由拦截的功能,实践有许多的实现思路,下面我采用的是封装组件的方式实现。比方说一个小程序项目只有一两个页面是不需要登录就可以访问的,其他页面都是需要登录之后才能访问的,那我就用封装一些逻辑来检测用户是否是登录状态,如果不是则重定向到登录页,等用户完成登录后再跳转到用户本来要访问的页面。主要实现原理:通过本地存储的token来判断用户的登录状态,在小程序
- 《高并发系统性能优化三板斧:缓存 + 异步 + 限流》
猕员桃
10篇关于分布式和高并发性能优化缓存
高并发系统性能优化三板斧:缓存+异步+限流引言在互联网应用的高并发场景下,系统性能面临巨大挑战。以某电商平台会员活动为例,活动期间瞬时QPS可达10万+,若未进行有效优化,服务器将迅速崩溃。本文从缓存、异步、限流三个核心维度,结合实际案例详细解析高并发系统的性能优化策略,并分享全链路压测与问题定位的实战经验。一、缓存策略分层:从本地到分布式的立体防护1.1本地缓存选型与实战(Caffeine)本地
- 《Redis高并发优化策略与规范清单:从开发到运维的全流程指南》
猕员桃
redis运维数据库
Redis高并发优化策略与规范清单:从开发到运维的全流程指南在互联网应用的后端架构中,Redis凭借其高性能、高并发的特性,成为缓存和数据存储的首选方案。无论是电商抢购、社交平台的点赞计数,还是在线旅游平台的实时数据查询,Redis都在支撑着海量请求的快速处理。然而,随着业务规模的扩大和流量的激增,Redis在高并发场景下也面临诸多挑战,如性能瓶颈、内存溢出、缓存雪崩等。为了确保Redis在高并发
- 《去哪儿网Redis高并发实战:从问题定位到架构升级》
猕员桃
redis架构数据库
去哪儿网Redis高并发实战:从问题定位到架构升级在互联网行业竞争日益激烈的当下,高并发场景下的系统性能优化一直是技术团队面临的重要挑战。对于去哪儿网这类在线旅游平台来说,节假日期间的流量高峰更是对系统架构的严峻考验。本文将深入剖析去哪儿网在五一假期期间,针对Redis高并发问题的实战解决方案,从问题定位、优化策略到架构升级,全方位展现整个优化过程。一、案例背景:五一假期流量峰值挑战1.1业务场景
- Requests源码分析:底层逻辑
哆啦A梦的口袋呀
源码分析pythonhttp
底层逻辑创建Session会话实例session创建PoolManager连接池实例到session.poolmanager(底层是urllib3)创建Request请求实例reqsession.prepare_request()准备请求参数合并cookies为CookieJar对象:创建干净的CookieJar>>合并会话级cookies(self.cookies)>>合并请求级cookies生
- el-table合并行+数据按照相同名称排序+相同名称内的数据在排序
Web·强
elementui遇到的问题前端javajavascript
项目场景:项目需求:后端给我返回的数据:原因分析:后端数据所有的内容排列是无顺序的相同名称的不一定靠在一起图片只是巧合,如果按照后端返回的格式直接赋给表格的tabledata那么顺序就不是我们想要的,所以我们首先要把数据处理成我们想要的数据格式。①根据需求首先把数据里的相同名称进行排序然后在将相同名称里的版本从高到低排序②将名称相同的合并成一行并将序号也进行合并解决方案:需求①:this.tabl
- (LeetCode 面试经典 150 题 ) 238. 除自身以外数组的乘积 (前缀和)
岁忧
LeetCode面试经典150题LeetCodeC++JAVAGo版本leetcode面试算法c++gojava
题目:238.除自身以外数组的乘积思路:前缀和,时间复杂度0(n)。先用前缀和预处理出前n的乘计和,然后第二次遍历时,从后往前,同时维护右边的乘计和即可。C++版本:classSolution{public:vectorproductExceptSelf(vector&nums){intn=nums.size();vectorpre(n,1);pre[0]=nums[0];for(inti=1;i
- 模板应用更新同步到所有开发中的应用
z日火
开发分享elasticsearchUpstream
需求是为多个Vue3应用方便地同步模板更新,并且模板自身也可能演进,采用Git上游仓库(Upstream)策略。这种方法在操作上相对直观,更贴近常规的Git工作流,并且能较好地处理模板更新中可能涉及到的配置文件、依赖项以及Vue组件本身的变更。策略:Git上游仓库(Upstream)核心思想:你的每一个应用项目(应用1,应用2,应用3)都会将你的Vue3模板项目仓库视为一个“上游”(upstrea
- 微信小程序出现冒泡问题的原因和解决方法
天和都成
微信小程序微信小程序
微信小程序中的冒泡问题通常由事件冒泡机制引发,即子组件触发的事件会逐级向上传播至父组件。以下是其原因分析及解决方法:一、冒泡问题的原因事件冒泡机制微信小程序中,冒泡事件(如tap、longtap、touchstart等)默认会从触发事件的子组件向上传播至父组件。例如,若子组件和父组件均绑定了bindtap事件,点击子组件时会依次触发子组件和父组件的事件处理函数。事件绑定方式不当使用bind绑定事件
- 手把手教程:在 VS2017 32位 Windows 环境下编译 OR-Tools 9.6 并集成到 C++ 项目
A小庞
C++知识算法c++开发语言or-tools算法库
OR-Tools是Google开源的优化算法库,支持路径规划、线性规划、约束编程等多种功能。本文将详细介绍在VisualStudio201732位Windows环境下编译OR-Tools9.6的两种方法:联网自动下载依赖和手动编译依赖项,并提供避坑指南。方法一:联网自动下载依赖(推荐新手)步骤1:克隆OR-Tools仓库gitclonehttps://github.com/google/or-to
- Visual Studio 编译错误 LNK2038:MTD 和 MDD 的区别及解决方法
A小庞
C++知识个人visualstudiowindowside
在使用VisualStudio进行C++项目开发时,我们经常会遇到一些编译错误。其中,LNK2038错误是一个比较常见的链接器错误,通常与运行时库(RuntimeLibrary)的配置不匹配有关。本文将详细介绍MTD和MDD的区别,以及如何解决因运行时库配置不匹配导致的编译错误。一、错误示例以下是一个典型的LNK2038错误示例:从错误信息中可以看出,链接器检测到了运行时库的不匹配项,具体表现为M
- Google的OR-Tools:运筹学与优化的强大工具
A小庞
算法调度算法or-toolsGoogle
在当今数字化时代,优化问题无处不在,从物流配送到生产计划,从资源调度到交通流量优化,这些看似复杂的问题都可以通过专业的工具来解决。Google的OR-Tools正是这样一款强大的运筹学和优化工具包,它为开发者提供了丰富的算法和功能,帮助解决各种复杂的优化问题。一、OR-Tools简介OR-Tools(OperationsResearchTools)是Google开源的一个用于组合优化的软件套件,旨
- 到底为什么数据帧被转换为电信号或光信号?
快点好好学习吧
计算机基础知识智能路由器
为什么数据帧要变成电信号或光信号?——像快递员一样传递数字信件的秘密一、核心问题:数据帧为什么要“变身”?(先想象数据是你写的信,电/光信号是送信的交通工具)1.数字世界的“语言障碍”:计算机里的数据都是“0和1”组成的数字帧(像用二进制写的信),但它们没法自己跑起来,需要“交通工具”才能从一台电脑到另一台。电信号或光信号就是最好的“交通工具”:电可以在网线里跑,光可以在光纤里跑,速度飞快(接近光
- 当凌晨的键盘声,遇见黎明的星光
涔溪
笔记
地铁玻璃映出你困倦的脸,耳机里的音乐循环到第17遍,早高峰的人群像沙丁鱼罐头般挤压着你。这是你每天雷打不动的三小时通勤路,从城市边缘到写字楼林立的CBD,窗外的风景换了四季,而你始终困在摇晃的车厢里,困在日复一日的代码世界。深夜加班时,办公室只剩你工位的灯还亮着。屏幕蓝光映着你通红的眼睛,键盘声在寂静中格外清晰。你曾以为热爱能抵御一切,可如今,修改了无数次的需求文档、永远修复不完的BUG、凌晨三点
- 前后端分离与不分离解析,很全面!
涔溪
前端
从多个维度对前后端分离与不分离进行更加深入、系统的分析,包括技术架构、开发流程、部署维护、性能优化、团队协作、适用场景等方面全面理解两者的区别和优劣。一、概念定义1.前后端不分离(传统服务端渲染)前端页面由服务器端生成并返回给浏览器,如PHP、JSP、ASP.NET等。前端逻辑和后端业务耦合在一起,通常一个请求对应一个完整的HTML页面。2.前后端分离(现代Web开发模式)前端独立开发为一个完整的
- 解锁阿里云E-MapReduce:大数据处理的超能力秘籍
云资源服务商
阿里云云计算人工智能云原生
一、引言在数字化浪潮汹涌澎湃的当下,大数据已然成为推动各行业创新发展的核心驱动力。从电商平台精准的个性化推荐,到金融机构严密的风险评估,再到医疗领域高效的疾病预测,大数据的应用场景无处不在,深刻地改变着我们的生活与工作方式。在这片充满机遇与挑战的大数据领域中,阿里云E-MapReduce宛如一颗璀璨的明星,占据着举足轻重的地位。它凭借强大的大数据处理能力、卓越的性能表现以及丰富的功能特性,为企业和
- 如何搭建分公司到总部的专线网络?(SD-WAN双链路冗余+加密隧道配置全流程)
北极光SD-WAN组网
网络
#如何搭建分公司到总部的专线网络?(以北京→上海为例)在现代企业的网络架构中,分支机构与总部之间的高效、安全、稳定的网络通信是至关重要的。构建一条可靠的专线网络不仅能保障业务数据的高效传输,还能提升整体运营效率。本文将以北京到上海的分公司到总部为例,详细解析搭建专线网络的四步流程:**选服务商**→**部署SD-WAN设备**→**配置加密隧道**→**设置业务优先级策略**。##一、选服务商:选
- SD-WAN在智能仓储与物流管理中的应用解析:赋能制造业数字化转型
随着工业4.0与供应链数字化的推进,制造业在仓储与物流管理方面面临着前所未有的挑战和机遇。为实现仓储系统与生产系统、供应链系统的高度联动,网络的可靠性、灵活性和实时性成为关键问题。SD-WAN(软件定义广域网)技术凭借其高效、智能的网络管理能力,为智能仓储与物流管理提供了全新解决方案。在制造业中,仓储与物流管理是连接生产系统与供应链系统的重要环节,其高效运作直接影响到企业的生产效率和市场竞争力。随
- 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