- Android自定义View全解析:从基础绘制到复杂交互,实战多种自定义View实现
tangweiguo03051987
android交互
在Android开发中,自定义View的应用场景非常广泛。根据不同的需求,开发者可以创建各种类型的自定义View。以下是几种常见的自定义View类型及其实现思路和示例。1.自定义绘制View自定义绘制View是最基础的自定义View类型,通常用于绘制图形、文本、图像等内容。开发者通过重写onDraw()方法,使用Canvas和Paint来实现绘制。示例:自定义圆形ViewpublicclassCi
- 如何安全处置旧设备?
FreeBuf-
安全
每年,数百万台旧设备因老化、故障或被新产品取代而被丢弃,这些设备上存储的数据可能带来安全风险。如果设备没有被正确删除数据,这些数据往往仍可被恢复。因此,安全处置旧设备至关重要。旧设备可能包含的敏感数据旧设备中可能仍然存有以下信息:保存的密码和登录凭证银行和信用卡信息个人照片、电子邮件和文档与身份相关的数据(护照扫描件、社保号码等)如果这些信息落入不法分子手中,可能被用于身份盗窃、金融欺诈或未经授权
- AI开发利器:miniforge3无感平替Anaconda3
zhulangfly
AI人工智能miniforge
相信有和我遭遇一样的同学吧,之前装了anaconda用的挺好的(可以参考AI开发利器:Anaconda),但是考虑到有可能收到软件侵权的律师函的风险,还是果断找个替代品把anaconda卸载掉。miniforge就是在这样的背景下发展出来的,由开源软件社区驱动的conda-forge组织发展迅速,提供了可免费使用,无商业风险且稳定高效的一系列开源工具及网络资源服务,今天我要给大家介绍的minifo
- 利用busybox和mkfs.jffs2制作根文件系统
浪子--赟
WorkingNotesmkfs.jffs2工具用法嵌入式根文件系统移植jffs2根文件系统制作hi3518c
PC机系统:Ubuntu12.04LTS目标板:海思3518CFlash类型:SPIFlash(16M)Busybox:BusyBox-1.16.1.tgz嵌入式交叉编译工具链:arm-hisiv100nptl-linux-gcc目标板根文件系统格式:JFFS2(在闪存上使用非常广泛的读/写文件系统)根文件系统制作工具:mkfs.jffs2一、mkfs.jffs2工具使用说明:mkfs.jffs2
- LLM大模型技术实战4:热门开源LLMs对比和选型
大模型学习教程
机器学习开源人工智能职场和发展
一、大语言模型的特点和能力LLM(LargeLanguageModel,大型语言模型)是指那些规模庞大、参数数量众多的深度神经网络模型,用于理解和生成自然语言文本。在自然语言处理(NLP)领域有着广泛的应用,因其强大的语言理解和生成能力,能够处理各种复杂的文本任务。1.1主要特点架构特点LLM主要基于Transformer架构,Transformer通过自注意力机制(Self-Attention)
- 软件架构的演化和维护
Wlq0415
系统架构数据库重构
软件架构的演化和维护:软件架构的演化是一个不断迭代的过程,旨在使软件适应环境变化并满足用户需求。涉及软件架构的全生命周期,包括需求获取、建模、文档化、实现和维护等阶段。软件架构演化的重要性在于它是系统骨架,保障软件特性和宏观管控复杂性。通过形式化和可视化表示,有助于降低演化成本,提高软件演化效率。软件架构演化的主要类型:对象演化:包括AddObject(AO)和DeleteObject(DO)。A
- 51-53 CVPR 2024 | DriveWorld:通过自动驾驶世界模型进行 4D 预训练场景理解 (含模型数据流梳理)
深圳季连AIgraphX
aiXpilot智驾大模型1自动驾驶人工智能AIGCstablediffusion计算机视觉智慧城市
24年5月,北京大学、国防创新研究院无人系统技术研究中心、中国电信人工智能研究院联合发布了DriveWorld:4DPre-trainedSceneUnderstandingviaWorldModelsforAutonomousDriving。DriveWorld在UniAD的基础上又有所成长,提升了自动驾驶目标检测、目标追踪、3D占用、运动预测及规划的性能,后期扩大数据集和调整骨干网络大小应该会
- 桂链:什么叫区块链网络?
桂云网络OSG
桂链区块链区块链网络服务器
本文由桂云网络转自HyperledgerFabric,桂链基于HyperledgerFabric开发,是桂云网络公司旗下的区块链产品。区块链网络¶这个话题会在概念层面上描述HyperledgerFabric是如何让组织间以区块链网络的形式进行合作的。如果你是一个架构师,管理员或者开发者,你可以通过这个话题来深入理解在HyperledgerFabric区块链网络中的主要结构和处理组件。这个话题会使用
- Linux进程间通信有哪些,分别起到了什么作用
TJ_Dream
基础内核函数分析linux运维服务器
进程间通信(IPC)是不同进程之间交换数据或协调行为的机制。不同的IPC方式在效率、复杂度、适用场景上各有特点,以下是常见IPC方法及其核心作用和使用场景:一、IPC主要方式及对比机制通信模式数据形式同步/异步适用场景优缺点管道单向流字节流同步父子进程简单通信简单但单向,容量有限命名管道单向/双向流字节流同步非父子进程间通信跨进程但需文件系统路径消息队列消息传递结构化数据包异步/同步结构化数据传输
- 大模型面试--大模型(LLMs)基础面
TAICHIFEI
大模型面试语言模型人工智能
大模型(LLMs)基础面1.目前主流的开源模型体系有哪些?目前主流的开源大模型体系有以下几种:1.Transformer系列Transformer模型是深度学习中的一类重要模型,尤其在自然语言处理(NLP)领域。以下是一些主流的Transformer模型:GPT系列GPT-2和GPT-3:由OpenAI开发的生成式预训练变换器模型,用于生成高质量的文本。GPT-Neo和GPT-J:由Eleuthe
- BSP(板级支持包)详解
TJ_Dream
嵌入式软件单片机嵌入式硬件驱动开发架构后端
1.定义BSP主要功能为屏蔽硬件,提供操作系统及硬件驱动,具体功能包括:(1)单板硬件初始化,主要是CPU的初始化,为整个软件系统提供底层硬件支持。(2)为操作系统提供设备驱动程序和系统中断服务程序。(3)定制操作系统的功能,为软件系统提供一个实时多任务的运行环境。(4)初始化操作系统,为操作系统的正常运行做好准备。2.作用建立让操作系统运行的基本环境(1)初始化CPU内部寄存器(2)设定RAM工
- 嵌入式静态库/动态库制作以及 Makefile使用,Makefile书写规则和交叉工具链
weixin_40976330
Linux交叉工具链交叉编译Makefile使用嵌入式静态库/动态库制作
一.交叉工具链大纲1.什么是交叉工具链?什么是交叉编译?2.安装交叉工具链方法,结合环境变量PATH,工具链选项3.Makefile使用,Makefile书写规则4.嵌入式静态库/动态库制作,库是如何使用?二.什么是交叉工具链?什么是交叉编译?1.回顾编译过程编译高级语言(xxxx.c)------>目标程序(xxxx)编译器:GCC编译过程:预处理,编译,汇编,链接gec@ubuntu:~$wh
- 传输分析_基于可重构智能表面的MIMO传输:系统设计,分析和实现
徐柚柚
传输分析
1研究背景随着第五代(5G)移动通信网络正在全球进行测试和部署,第六代(6G)移动通信系统也逐渐引起学术界和工业界的广泛兴趣。在6G物理层候选使能技术中,将大规模多输入多输出(MIMO)升级成为超大规模MIMO,以及将工作频段扩展至太赫兹频段被公认为有潜力的技术路线。但是,超大规模MIMO技术需要包含大量射频链路收发机,太赫兹通信也需要复杂昂贵的器件支撑,这些都面临高硬件成本和高能耗的严峻挑战。2
- linux下热插拔事件的产生是怎样通知到用户空间,kobject_uevent_env之uevent【转】...
weixin_33935777
操作系统shell
转自:http://blog.csdn.net/myarrow/article/details/82598881.kobject,ktype,kset1)kobject:代表sysfs中的目录。2)ktype:代表kobject的类型,主要包含release函数和attr的读写函数。比如,所有的bus都有同一个bus_type;所有的class都有同一个class_type。3)kset:包含了s
- 能源电力行业中,利用物联网技术实现“一塔一档”
小赖同学啊
人工智能智能硬件能源物联网
在电力行业中,利用物联网技术实现“一塔一档”(即每座杆塔都建立一份详细的档案),能够对杆塔的全生命周期进行有效管理,提升电网的可靠性和运维效率。以下从系统架构、关键技术、实施步骤等方面介绍具体实现方法。系统架构设计采用分层架构,涵盖感知层、网络层、平台层和应用层,实现数据的采集、传输、处理和应用。1.感知层感知层是获取杆塔相关信息的基础,主要由各类传感器和智能设备组成。状态监测传感器倾斜传感器:安
- 逆向工程基础
Smile灬凉城666
网络安全逆向工程安全
一、定义与目的定义:逆向工程(ReverseEngineering)是一种产品设计技术再现过程,即通过对已有产品进行拆解、分析、研究和再设计,以获取其设计原理、技术规格等信息。目的:在不能轻易获得必要的生产信息或设计文档的情况下,通过逆向工程推导出产品的设计原理,以支持产品仿制、改进、维护或修复等需求。二、基础知识编程语言基础:C语言:C语言是逆向工程的基础语言之一,因为它与底层硬件和系统调用密切
- 虚拟dom的diff中的双端比较算法
永遠に_
算法javascript前端
双端比较算法是Vue中用于高效比较新旧VNode子节点的一种策略。该算法的核心思想是,通过从新旧VNode子节点的两端开始比较,逐步向中间靠拢,以找到最小的差异并据此更新DOM。以下是双端比较算法的大致流程:初始化指针:设置四个指针,分别指向新旧VNode子节点的开始和结束位置。首尾比较:首先比较新旧VNode子节点的首尾元素。如果首尾元素相同,则直接复用,并移动相应的指针。交叉比较:
- unity引擎中全量打包和增量打包的区别和联系
你一身傲骨怎能输
独立游戏开发者宝典unity游戏引擎
在Unity引擎中,全量打包和增量打包是两种不同的资源打包方式,它们在游戏开发和发布过程中扮演着重要的角色。理解这两种打包方式的区别和联系对于优化开发流程和缩短构建时间非常关键。全量打包(FullBuild)全量打包是指在构建过程中完全从头开始,不考虑之前的构建结果。Unity会重新编译所有的脚本,重新导入所有的资源,并重新生成所有的AssetBundles或其他包文件。优点:干净和一致:由于从零
- 【重构】五、 封装
木子李小哥
JS代码重构-《重构(第2版)》读书概要记录前端重构javascript
通过封装,可以隐藏不需要对外暴露的信息,防止被修改1、封装记录参考“第一组重构”中的封装变量2、封装集合先通过封装变量,封装集合在类上添加“添加集合元素”和“移除集合元素”的函数classPerson{constructor(name){this._name=namethis._course=[]}getname(){returnthis._name}getcourse(){returnthis.
- 聊一聊代码重构——封装集合和替换算法的代码实践
大·风
#代码简洁之路工作积累重构java数据结构
代码重构相关内容聊一聊代码重构——我们为什么要代码重构聊一聊代码重构——代码中究竟存在哪些坏代码聊一聊代码重构——关于变量的代码实践聊一聊代码重构——关于循环逻辑的代码实践聊一聊代码重构——关于条件表达式的代码实践聊一聊代码重构——程序方法上的代码实践聊一聊代码重构——程序方法和类上的代码实践聊一聊代码重构——存在继承关系类上的代码实践聊一聊代码重构——封装集合和替换算法的代码实践封装集合对集合属
- 情感识别(Emotion Recognition)
路野yue
人工智能自然语言处理
情感识别(EmotionRecognition)是通过分析人类的多模态数据(如面部表情、语音、文本等)来识别和理解其情感状态的技术。它在人机交互、心理健康、市场分析等领域有广泛应用。情感识别的主要方法1.基于面部表情的情感识别方法:通过分析面部特征(如眼睛、嘴巴、眉毛等)来识别情感。技术:传统方法:使用特征提取(如Gabor滤波器、LBP)和分类器(如SVM)。深度学习方法:使用卷积神经网络(CN
- 逆向工程是什么?
不知道是谁2
逆向工程科普
逆向工程(ReverseEngineering,RE)是一种技术实践,主要用于分析和理解已存在的软件、硬件、文档或其他复杂系统的内部结构和工作原理。它的目标不是直接复制它们,而是通过分解、研究和重现其设计或实现过程,以便于修改、改进、学习、维护或者创建兼容组件。在软件领域,逆向工程师可能会反汇编二进制代码以查看原始源代码,解密加密程序,或者分析API和系统架构。这有助于破解软件、调试未公开的代码、
- 基于粒子群算法的配电网重构:以IEEE33节点电网为例的潮流计算程序
mzyEPTzp
算法重构
基于粒子群算法的配电网重构基于IEEE33节点电网,以网损和电压偏差最小为目标,考虑系统的潮流约束,采用粒子群算法求解优化模型,得到确保放射型网架的配电网重构方案。这个程序主要是一个潮流计算程序,用于解决电力系统中的潮流问题。潮流计算是电力系统分析中的基本问题之一,它用于确定电力系统中各个节点的电压幅值和相位,以及各个支路的功率流动情况。该程序的主要思路是通过迭代的方式,不断修正节点的电压值,直到
- 第十五届蓝桥杯省赛电子类嵌入式学习记录(客观题)
@小张要努力
蓝桥杯学习职场和发展嵌入式硬件单片机51单片机
01.SMT32微控制器的SPI可以按照时钟相位和极性配置多少种工作模式(B)。A.2B.4C.8D.16解析:SPI(SerialPeripheralInterface)总线是一种同步串行外设接口,它可以使MCU与各种外围设备以串行方式进行通信以交换数据。SPI的工作模式由时钟极性(CPOL)和时钟相位(CPHA)来决定。[1]时钟极性(CPOL):决定了SPI时钟信号(SCK)的空闲状态电平。
- 参考thinkphp架构的FastAPI实现思路
Wiktok
架构fastapi
FastAPI是一个现代、快速(高性能)的Web框架,用于构建API,基于Python3.7+并使用了类型提示。虽然FastAPI和ThinkPHP的设计理念和语言不同,但FastAPI同样可以实现ThinkPHP的核心功能,如路由、模型、视图、中间件、JWT、Session等。以下是如何用FastAPI实现这些功能的详细说明:一、路由(Route)FastAPI实现:FastAPI使用装饰器定义
- linux uevent分析
青蛙嘎嘎
---------linuxdriver-------
1.kobject,ktype,ksetkobject代表sysfs中的目录。ktype代表kobject的类型,主要包含release函数和attr的读写函数。比如,所有的bus都有同一个bus_type;所有的class都有同一个class_type。kset包含了subsystem概念,kset本身也是一个kobject,所以里面包含了一个kobject对象。另外,kset中包含kset_u
- 第十七:go 反射
小画家~
golanggolang开发语言后端
fmt.printf("%T",obj)//打印reflect的类型fmt.Printf("%T",obj)//*reflect.rtype//打印的是一个指针类型reflect包在Go语言中反射的相关功能由内置的reflect包提供,任意接口值在反射中都可以理解为由reflect.Type和reflect.Value两部分组成,并且reflect包提供了reflect.TypeOf和reflec
- CentOS 7.9.2009安装Nginx1.26.0服务
军行_天下
centoslinux运维
一、下载和安装Nginx服务#安装wget软件[root@localhosthome]#yuminstallwget#安装Nginx所需要的依赖[root@localhosthome]#yuminstall-ygcc-c++zlibzlib-developensslopenssl-develpcrepcre-devel#下载Nginx安装包[root@localhosthome]#wget-cht
- lua-debug for Sublime
huanzai2
luasublimetext开发语言luadebug
目标Sublime也支持lua-debug,操作体验与VSCode一致。优势执行效率高,不掉帧可随时开启配置简单,一份配置兼容VSCode和Sublime安装要求Sublime4的版本(注:从Sublime3升到4的不算,需卸载干净3后,重装Sublime4)安装SublimeDebugger插件(作者改进版)添加仓库:在Sublime执行ctrl+shift+p,输入AddRepository并
- 重构--封装
甲亿
重构笔记
封装记录动机:记录型结构是多数编程语言提供的一种常见特性。他们能直观地组织起存在关联的数据,让数据作为有意义的单元传递。同时它强迫区分“记录中存储的数据”和“通过计算得到的数据”。对象可以隐藏结构的细节,使对象的用户不需要追究存储的细节和计算过程。另外如果修改字段时,用户可以重命名字段,但同时提供新老字段名的访问方法,这样可以渐进地修改调用方,直到全部替换。做法:对持有记录地变量使用封装变量,将其
- [黑洞与暗粒子]没有光的世界
comsci
无论是相对论还是其它现代物理学,都显然有个缺陷,那就是必须有光才能够计算
但是,我相信,在我们的世界和宇宙平面中,肯定存在没有光的世界....
那么,在没有光的世界,光子和其它粒子的规律无法被应用和考察,那么以光速为核心的
&nbs
- jQuery Lazy Load 图片延迟加载
aijuans
jquery
基于 jQuery 的图片延迟加载插件,在用户滚动页面到图片之后才进行加载。
对于有较多的图片的网页,使用图片延迟加载,能有效的提高页面加载速度。
版本:
jQuery v1.4.4+
jQuery Lazy Load v1.7.2
注意事项:
需要真正实现图片延迟加载,必须将真实图片地址写在 data-original 属性中。若 src
- 使用Jodd的优点
Kai_Ge
jodd
1. 简化和统一 controller ,抛弃 extends SimpleFormController ,统一使用 implements Controller 的方式。
2. 简化 JSP 页面的 bind, 不需要一个字段一个字段的绑定。
3. 对 bean 没有任何要求,可以使用任意的 bean 做为 formBean。
使用方法简介
- jpa Query转hibernate Query
120153216
Hibernate
public List<Map> getMapList(String hql,
Map map) {
org.hibernate.Query jpaQuery = entityManager.createQuery(hql);
if (null != map) {
for (String parameter : map.keySet()) {
jp
- Django_Python3添加MySQL/MariaDB支持
2002wmj
mariaDB
现状
首先,
[email protected] 中默认的引擎为 django.db.backends.mysql 。但是在Python3中如果这样写的话,会发现 django.db.backends.mysql 依赖 MySQLdb[5] ,而 MySQLdb 又不兼容 Python3 于是要找一种新的方式来继续使用MySQL。 MySQL官方的方案
首先据MySQL文档[3]说,自从MySQL
- 在SQLSERVER中查找消耗IO最多的SQL
357029540
SQL Server
返回做IO数目最多的50条语句以及它们的执行计划。
select top 50
(total_logical_reads/execution_count) as avg_logical_reads,
(total_logical_writes/execution_count) as avg_logical_writes,
(tot
- spring UnChecked 异常 官方定义!
7454103
spring
如果你接触过spring的 事物管理!那么你必须明白 spring的 非捕获异常! 即 unchecked 异常! 因为 spring 默认这类异常事物自动回滚!!
public static boolean isCheckedException(Throwable ex)
{
return !(ex instanceof RuntimeExcep
- mongoDB 入门指南、示例
adminjun
javamongodb操作
一、准备工作
1、 下载mongoDB
下载地址:http://www.mongodb.org/downloads
选择合适你的版本
相关文档:http://www.mongodb.org/display/DOCS/Tutorial
2、 安装mongoDB
A、 不解压模式:
将下载下来的mongoDB-xxx.zip打开,找到bin目录,运行mongod.exe就可以启动服务,默
- CUDA 5 Release Candidate Now Available
aijuans
CUDA
The CUDA 5 Release Candidate is now available at http://developer.nvidia.com/<wbr></wbr>cuda/cuda-pre-production. Now applicable to a broader set of algorithms, CUDA 5 has advanced fe
- Essential Studio for WinRT网格控件测评
Axiba
JavaScripthtml5
Essential Studio for WinRT界面控件包含了商业平板应用程序开发中所需的所有控件,如市场上运行速度最快的grid 和chart、地图、RDL报表查看器、丰富的文本查看器及图表等等。同时,该控件还包含了一组独特的库,用于从WinRT应用程序中生成Excel、Word以及PDF格式的文件。此文将对其另外一个强大的控件——网格控件进行专门的测评详述。
网格控件功能
1、
- java 获取windows系统安装的证书或证书链
bewithme
windows
有时需要获取windows系统安装的证书或证书链,比如说你要通过证书来创建java的密钥库 。
有关证书链的解释可以查看此处 。
public static void main(String[] args) {
SunMSCAPI providerMSCAPI = new SunMSCAPI();
S
- NoSQL数据库之Redis数据库管理(set类型和zset类型)
bijian1013
redis数据库NoSQL
4.sets类型
Set是集合,它是string类型的无序集合。set是通过hash table实现的,添加、删除和查找的复杂度都是O(1)。对集合我们可以取并集、交集、差集。通过这些操作我们可以实现sns中的好友推荐和blog的tag功能。
sadd:向名称为key的set中添加元
- 异常捕获何时用Exception,何时用Throwable
bingyingao
用Exception的情况
try {
//可能发生空指针、数组溢出等异常
} catch (Exception e) {
 
- 【Kafka四】Kakfa伪分布式安装
bit1129
kafka
在http://bit1129.iteye.com/blog/2174791一文中,实现了单Kafka服务器的安装,在Kafka中,每个Kafka服务器称为一个broker。本文简单介绍下,在单机环境下Kafka的伪分布式安装和测试验证 1. 安装步骤
Kafka伪分布式安装的思路跟Zookeeper的伪分布式安装思路完全一样,不过比Zookeeper稍微简单些(不
- Project Euler
bookjovi
haskell
Project Euler是个数学问题求解网站,网站设计的很有意思,有很多problem,在未提交正确答案前不能查看problem的overview,也不能查看关于problem的discussion thread,只能看到现在problem已经被多少人解决了,人数越多往往代表问题越容易。
看看problem 1吧:
Add all the natural num
- Java-Collections Framework学习与总结-ArrayDeque
BrokenDreams
Collections
表、栈和队列是三种基本的数据结构,前面总结的ArrayList和LinkedList可以作为任意一种数据结构来使用,当然由于实现方式的不同,操作的效率也会不同。
这篇要看一下java.util.ArrayDeque。从命名上看
- 读《研磨设计模式》-代码笔记-装饰模式-Decorator
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
import java.io.BufferedOutputStream;
import java.io.DataOutputStream;
import java.io.FileOutputStream;
import java.io.Fi
- Maven学习(一)
chenyu19891124
Maven私服
学习一门技术和工具总得花费一段时间,5月底6月初自己学习了一些工具,maven+Hudson+nexus的搭建,对于maven以前只是听说,顺便再自己的电脑上搭建了一个maven环境,但是完全不了解maven这一强大的构建工具,还有ant也是一个构建工具,但ant就没有maven那么的简单方便,其实简单点说maven是一个运用命令行就能完成构建,测试,打包,发布一系列功
- [原创]JWFD工作流引擎设计----节点匹配搜索算法(用于初步解决条件异步汇聚问题) 补充
comsci
算法工作PHP搜索引擎嵌入式
本文主要介绍在JWFD工作流引擎设计中遇到的一个实际问题的解决方案,请参考我的博文"带条件选择的并行汇聚路由问题"中图例A2描述的情况(http://comsci.iteye.com/blog/339756),我现在把我对图例A2的一个解决方案公布出来,请大家多指点
节点匹配搜索算法(用于解决标准对称流程图条件汇聚点运行控制参数的算法)
需要解决的问题:已知分支
- Linux中用shell获取昨天、明天或多天前的日期
daizj
linuxshell上几年昨天获取上几个月
在Linux中可以通过date命令获取昨天、明天、上个月、下个月、上一年和下一年
# 获取昨天
date -d 'yesterday' # 或 date -d 'last day'
# 获取明天
date -d 'tomorrow' # 或 date -d 'next day'
# 获取上个月
date -d 'last month'
#
- 我所理解的云计算
dongwei_6688
云计算
在刚开始接触到一个概念时,人们往往都会去探寻这个概念的含义,以达到对其有一个感性的认知,在Wikipedia上关于“云计算”是这么定义的,它说:
Cloud computing is a phrase used to describe a variety of computing co
- YII CMenu配置
dcj3sjt126com
yii
Adding id and class names to CMenu
We use the id and htmlOptions to accomplish this. Watch.
//in your view
$this->widget('zii.widgets.CMenu', array(
'id'=>'myMenu',
'items'=>$this-&g
- 设计模式之静态代理与动态代理
come_for_dream
设计模式
静态代理与动态代理
代理模式是java开发中用到的相对比较多的设计模式,其中的思想就是主业务和相关业务分离。所谓的代理设计就是指由一个代理主题来操作真实主题,真实主题执行具体的业务操作,而代理主题负责其他相关业务的处理。比如我们在进行删除操作的时候需要检验一下用户是否登陆,我们可以删除看成主业务,而把检验用户是否登陆看成其相关业务
- 【转】理解Javascript 系列
gcc2ge
JavaScript
理解Javascript_13_执行模型详解
摘要: 在《理解Javascript_12_执行模型浅析》一文中,我们初步的了解了执行上下文与作用域的概念,那么这一篇将深入分析执行上下文的构建过程,了解执行上下文、函数对象、作用域三者之间的关系。函数执行环境简单的代码:当调用say方法时,第一步是创建其执行环境,在创建执行环境的过程中,会按照定义的先后顺序完成一系列操作:1.首先会创建一个
- Subsets II
hcx2013
set
Given a collection of integers that might contain duplicates, nums, return all possible subsets.
Note:
Elements in a subset must be in non-descending order.
The solution set must not conta
- Spring4.1新特性——Spring缓存框架增强
jinnianshilongnian
spring4
目录
Spring4.1新特性——综述
Spring4.1新特性——Spring核心部分及其他
Spring4.1新特性——Spring缓存框架增强
Spring4.1新特性——异步调用和事件机制的异常处理
Spring4.1新特性——数据库集成测试脚本初始化
Spring4.1新特性——Spring MVC增强
Spring4.1新特性——页面自动化测试框架Spring MVC T
- shell嵌套expect执行命令
liyonghui160com
一直都想把expect的操作写到bash脚本里,这样就不用我再写两个脚本来执行了,搞了一下午终于有点小成就,给大家看看吧.
系统:centos 5.x
1.先安装expect
yum -y install expect
2.脚本内容:
cat auto_svn.sh
#!/bin/bash
- Linux实用命令整理
pda158
linux
0. 基本命令 linux 基本命令整理
1. 压缩 解压 tar -zcvf a.tar.gz a #把a压缩成a.tar.gz tar -zxvf a.tar.gz #把a.tar.gz解压成a
2. vim小结 2.1 vim替换 :m,ns/word_1/word_2/gc  
- 独立开发人员通向成功的29个小贴士
shoothao
独立开发
概述:本文收集了关于独立开发人员通向成功需要注意的一些东西,对于具体的每个贴士的注解有兴趣的朋友可以查看下面标注的原文地址。
明白你从事独立开发的原因和目的。
保持坚持制定计划的好习惯。
万事开头难,第一份订单是关键。
培养多元化业务技能。
提供卓越的服务和品质。
谨小慎微。
营销是必备技能。
学会组织,有条理的工作才是最有效率的。
“独立
- JAVA中堆栈和内存分配原理
uule
java
1、栈、堆
1.寄存器:最快的存储区, 由编译器根据需求进行分配,我们在程序中无法控制.2. 栈:存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(字符串常量对象存放在常量池中。)3. 堆:存放所有new出来的对象。4. 静态域:存放静态成员(static定义的)5. 常量池:存放字符串常量和基本类型常量(public static f