- 基于架构的软件设计(Architecture-Based Software Design,ABSD)是一种以架构为核心的软件开发方法
ABSD方法与生命周期基于架构的软件设计(Architecture-BasedSoftwareDesign,ABSD)是一种以架构为核心的软件开发方法,强调在开发的各个阶段都要以架构为中心,确保系统的整体结构和质量属性得到有效管理。ABSD方法是一个自顶向下、递归细化的过程,软件系统的架构通过该方法得到细化,直到能产生软件构件和类。ABSD方法的三个基础功能的分解:使用基于模块的内聚和耦合技术,将
- C# 设计模式(结构型模式):组合模式
硅谷调试员
玩转C#设计模式c#设计模式组合模式
C#设计模式(结构型模式):组合模式在软件设计中,有时我们需要处理的是一组对象,而这些对象既可以是单独的元素,也可以是由多个子元素组成的复合体。这时,组合模式(CompositePattern)便能提供帮助。它允许客户端将单个对象和对象集合统一对待,从而简化了树形结构的管理。1.组合模式的定义组合模式是一个结构型设计模式,主要用于将多个对象组合成树形结构,以表示“部分-整体”的层次关系。通过组合模
- STM32-DAC数模转换
DAC数模转换:将数字信号转换成模拟信号特性:2个DAC转换器每个都拥有一个转换通道8位或12位单调输出(8位右对齐;12位左对齐右对齐)双ADC通道同时或者分别转换外部触发中断电压源控制部分(外部触发3个APB1;不使用1个APB1)外部触发输出:DAC1-PA4;DAC2-PA5软件设计流程:使能端口以及DAC时钟;设置引脚为模拟输入RCC_APB2PeriphClockCmd(RCC_APB
- MVVMDemo:一款现代Android开发的最佳实践示例
MVVMDemo:一款现代Android开发的最佳实践示例本文将向您介绍项目,这是一个基于MVVM(Model-View-ViewModel)架构模式的Android应用实例,旨在帮助开发者更好地理解和应用这一流行的软件设计模式。项目概述MVVMDemo是由zhouxu88维护的一个开源项目,它展示了如何在Android平台上有效地实施MVVM架构。此项目包括了基本的数据绑定、LiveData观测
- 《从依赖纠缠到接口协作:ASP.NET Core注入式开发指南》
后端
在C#的ASP.NETCore开发中,依赖注入绝非简单的技术技巧,而是重构代码关系的底层逻辑。它像一套隐形的神经网络,让程序模块摆脱硬编码的束缚,在运行时实现动态连接,从而为系统注入可测试、可进化的核心生命力。理解其深层价值,需要穿透"服务注册与获取"的表层操作,触及它对软件设计哲学的重塑。依赖注入的本质,是对"依赖关系"的去中心化治理。传统开发中,模块间的依赖如同藤蔓缠绕的树木,一个组件直接创建
- 基于odoo17的设计模式详解---构建模式
大家好,我是你的Odoo技术伙伴。在Odoo开发中,创建一个简单的记录可能只需要一行self.env['res.partner'].create({'name':'NewPartner'})。但如果我们要创建一个复杂的对象,比如一个包含了特定上下文、具有多个可选配置、并且需要执行一系列关联操作的销售订单,传统的create()方法可能会变得非常臃肿和难以阅读。为了解决这个问题,软件设计领域提出了构
- 前端学习 vben 之 axios interceptors
aha-凯心
vbenadmin启航前端学习
前端学习vben之axiosinterceptorsinterceptor拦截器,是一种软件设计模式,核心思想就是在程序执行的特定阶段(如请求发送前,响应返回后,方法调用前后等)自动插入自定义逻辑。实现对核心流程的“拦截”和增强。它本质上是一种面向切面编程(AOP)的具体实现,用于解耦横跨多个模块的通用功能(如日志、认证、错误处理)。axios中的interceptoraxios中实现了inter
- Java内功修炼系列:依赖倒置、控制反转、依赖注入
许进进
ioc依赖倒置控制反转依赖注入java
目录一名词解释1.1依赖倒置原则(Dependencyinversionprinciple)1.2上层/底层模块1.3依赖(Dependency)二依赖倒置2.1依赖倒置前2.1依赖倒置后三控制反转(IoC)四依赖注入(Dependencyinjection)一名词解释1.1依赖倒置原则(Dependencyinversionprinciple)依赖倒置原则来源于软件设计6大设计原则,它的定义如下
- 软件建模、设计模式、重构
kingzdm
java设计模式设计模式重构uml
软件建模、设计模式、重构软件建模软件建模体现了软件设计的思想,在需求和实现之间架起了一座桥梁,通过模型指导软件系统的具体实现。模型并不是软件系统的一个完备表示,而是所研究的系统的一种抽象。软件建模通过不同的视角去描述一个系统。软件建模视角:外部视角,交互视角,结构化视角,行为视角。软件建模方法:结构化方法,面向对象方法,基于构建方法,面向服务方法,面向方面方法,模型驱动方法,形式化方法。UML特点
- 软件设计与重构_重构与重新设计
软件设计与重构开发人员经常交替使用“重构”和“重新设计”这两个词。为什么?我认为这是因为在两种情况下,我们都将获得相同的结果-更改了代码,但它执行的功能与过程开始时的功能完全相同。但是,我认为这些词不是确切的同义词,在我们开始重构代码之前,最好先了解它们之间的区别。动机我们正在重构代码,以使其更易于理解,使其更具可读性。我们这样做是为了提高阅读代码和理解代码的便利性。另一方面,我们背后有重新设计和
- 原生cesium 实现 多图例展示+点聚合(base64图标)
个人简介:某大型测绘遥感企业资深Webgis开发工程师,软件设计师(中级)、CSDN优质创作者作者:柳晓黑胡椒❣️专栏:cesium实践(原生)若有帮助,还请关注➕点赞➕收藏,不行的话我再努努力需求背景解决思路解决效果index.vue需求背景1.需要展示多个站点图例的图表及闪烁效果2.需要考虑层级高时,多图例的点聚合效果,且点聚合显示需要采用设计的圆形图标解决思路闪烁效果:采用css3的anim
- 软考(软件设计师)数据库原理-数据库规范化理论,四大范式,完整性约束
关系数据库规范化理论,四大范式,完整性约束关系数据库规范化是一种组织数据库表结构和字段的技术,目的是减少数据冗余、消除更新异常,并确保数据依赖的合理性。一、范式基本概念范式(NormalForm)是符合某一种级别的关系模式的集合,分为1NF、2NF、3NF、BCNF、4NF、5NF等,级别越高约束越严格。二、各范式详细说明1.第一范式(1NF)要求:表中每个字段都是原子性的,不可再分每个字段具有相
- 基于odoo17的设计模式详解---中介模式
花好月圆春祺夏安
设计模式
大家好,我是你的Odoo技术伙伴。在复杂的业务场景中,对象之间的交互往往会变得错综复杂,形成一张难以维护的“蜘蛛网”式的依赖关系。每个对象都需要了解许多其他对象,任何一个小小的改动都可能引发连锁反应。为了解决这个问题,软件设计领域引入了中介者模式(MediatorPattern)。今天,我们将深入探讨这一模式,并揭示Odoo17是如何在不显式声明“Mediator”类的情况下,将其中介思想融入其核
- C++软件设计模式之迭代器模式
捕鲸叉
软件设计模式C++设计模式c++迭代器模式
迭代器模式是一种行为设计模式,它允许你顺序访问一个聚合对象的元素,而不暴露其底层表示。在C++软件设计中,迭代器模式的主要目的是将数据的遍历行为与数据结构本身分离,使得数据结构的修改不会影响到遍历代码。目的和意图解耦遍历与数据结构:迭代器模式使得遍历算法独立于数据结构的实现。这意味着你可以改变数据结构的内部表示,而不需要修改遍历代码。提供统一的访问接口:无论底层数据结构如何,迭代器都提供了一套统一
- STM32之无源蜂鸣器模块
目录一、系统概述二、无源蜂鸣器模块简介2.1基本概念2.2核心特性2.3驱动电路设计2.4STM32驱动关键2.5应用场景对比三、硬件设计3.1硬件组成3.2硬件连接四、软件设计4.1开发环境配置4.2关键代码实现4.2.1初始化代码4.2.2蜂鸣器控制函数4.2.3主程序示例五、系统调试与优化5.1频率精度调整5.2音量控制5.3音乐播放功能六、应用场景6.1与按键结合实现交互6.2报警模式6.
- STM32之有源蜂鸣器模块
如愿小李单片机设计
单片机嵌入式硬件stm32
目录一、系统概述二、无源蜂鸣器模块简介2.1基本概念与工作原理2.2与无源蜂鸣器对比2.3关键电气参数2.4硬件驱动设计2.5选型与使用注意事项三、硬件设计3.1硬件组成3.2硬件连接四、软件设计4.1开发环境配置4.2关键代码实现4.2.1GPIO初始化4.2.2蜂鸣器控制函数4.2.3报警模式实现五、注意事项5.1驱动电路必须使用三极管5.2电压匹配5.3保护措施5.4电流消耗六、总结一、系统
- SLF4J深度解析:Java日志世界的“唯一标准”
沉浸式炼丹
java开发语言log4jSLF4J
SLF4J——Java生态系统中极其重要的组件,它不仅仅是一个日志工具,更体现了一种面向接口编程和“解耦合”的优雅设计思想。理解了SLF4J,你不仅能写出更专业的日志代码,更能加深对软件设计原则的理解。引子:日志框架的“战国时代”在SLF4J出现之前,Java的日志领域一片混乱,群雄并起,如同一个“战国时代”:JUL(java.util.logging):JDK自带的“亲儿子”,但功能简陋,配置复
- 常见手撕项目C++
氏族归来
c++开发语言
常见手撕项目C++设计模式单例模式饿汉模式懒汉模式策略模式策略接口实现具体的策略(虚函数重写)定义上下文用户调用代码最短路径算法使用函数模板写冒泡排序写一个类模板stringreplace详解方法概览参数介绍代码示例多线程信号量解释设计模式单例模式单例模式是一种常用的软件设计模式,其目的是确保一个类只有一个实例,并提供一个全局访问点来获取该实例。优点:资源控制:单例模式能够确保一个类只有一个实例存
- 基于 Python Flask 的 B/S 架构项目的软件设计思路
文章目录基于PythonFlask的B/S架构项目的软件设计思路1.引言2.B/S架构概述2.1什么是B/S架构2.2B/S架构的组成层次2.3B/SvsC/S架构对比2.4现代B/S架构的发展趋势3.Flask在B/S架构中的定位3.1Flask作为B/S架构的后端框架3.2Flask的架构优势3.3Flask在不同B/S架构模式中的应用传统B/S架构(服务器端渲染)现代B/S架构(前后端分离)
- 设计模式篇:灵活多变的策略模式
暮乘白帝过重山
设计模式策略模式
引言:从现实世界到代码世界的面向对象在商业策略制定中,企业会根据市场环境选择不同的竞争策略;在军事行动中,指挥官会根据敌情选择不同的战术;在游戏对战中,玩家会根据局势调整作战方式。这种根据情境选择不同行为的模式,在软件设计中同样普遍存在。策略模式(StrategyPattern)正是为解决这类问题而生的经典设计模式。想象你正在使用导航软件规划路线。同一个目的地,你可以选择:最快路线:优先考虑时间最
- 软件设计中如何画各类图之五用例图(Use Case Diagram):系统功能需求与用户交互的图形化描述
目录1前言2用例图基本介绍3用例图的符号及说明3.1用例(UseCase)3.2参与者(Actor)3.2关系(Relationships)4画用例图的步骤4.1确定系统边界4.2识别参与者4.3定义用例4.4绘制关系4.5完善细节5用例图的用途5.1系统设计与分析5.2需求收集与验证5.3沟通与共享理解6实际场景举例6.1在线酒店预订系统6.2学生课程管理系统7结语1前言在软件工程和系统设计领域
- 类图+案例+代码详解:软件设计模式----生成器模式(建造者模式)
N_NAN_N
软件设计模式设计模式建造者模式java
生成器模式(建造者模式)把复杂对象的建造过程和表示分离,让同样的建造过程可以创建不同的表示。假设你去快餐店买汉堡,汉堡由面包、肉饼、蔬菜、酱料等部分组成。建造者模式的角色类比:产品(Product):汉堡(由多个部分组成的复杂对象)抽象建造者(Builder):汉堡建造接口(定义“放面包”“放肉饼”“放蔬菜”“放酱料”等建造步骤)具体建造者(ConcreteBuilder):鸡肉堡建造者、牛肉堡建
- 【ISAQB大纲解读】软件密集型系统的三大分类
小马哥编程
系统架构架构
软件密集型系统的类型划分为信息系统、嵌入式系统和移动系统,主要基于其应用场景、功能定位、硬件依赖程度及软件设计逻辑的显著差异。以下从三类系统的核心特征、典型场景及分类逻辑展开分析:一、软件密集型系统的定义与分类逻辑软件密集型系统指软件在系统功能实现中起决定性作用的系统,其分类本质上反映了不同场景下软件与硬件、业务需求的耦合方式。三类系统的划分依据包括:应用领域:商业办公、设备控制、移动交互等不同场
- 论基于架构的软件设计方法(ABSD)及应用
怎么可能-怎么可能
架构
2025年3月22日作题目基于架构的软件设计(Architecture-BasedSoftwareDesign,ABSD)方法以构成软件架构的商业、质量和功能需求等要素来驱动整个软件开发过程。ABSD是一个自顶向下,递归细化的软件开发方法,它以软件系统功能的分解为基础,通过选择架构风格实现质量和商业需求,并强调在架构设计过程中使用软件架构模板。采用ABSD方法,设计活动可以从项目总体功能框架明确后
- c++中介者模式mediator
源代码大师
C和C++完整教程
中介者模式mediatorr概念角色和职责模式优点案例概念Mediator模式也叫中介者模式,是由GoF提出的23种软件设计模式的一种。Mediator模式是行为模式之一,在Mediator模式中,类之间的交互行为被统一放在Mediator的对象中,对象通过Mediator对象同其他对象交互,Mediator对象起着控制器的作用。角色和职责GOOD:用一个中介对象来封装一系列的对象交互,中介者使各
- 什么是mvc架构
电商api接口开发
mvcmvc
MVC(Model-View-Controller)架构是一种软件设计模式,它把软件系统划分成三个主要部分,分别是模型(Model)、视图(View)和控制器(Controller),其目的在于实现代码的模块化、可维护性以及可扩展性。下面是对这三个部分的详细解释:模型(Model)模型代表的是应用程序的数据和业务逻辑。它负责管理数据,对数据进行增删改查等操作,同时处理业务规则和数据验证。模型不依赖
- ASP MVC 架构由浅入深
电商api接口开发
mvcmvc架构
MVC是一种用于构建Web应用程序的软件设计模式,它将应用程序分为三个主要部分:模型(Model)、视图(View)和控制器(Controller)。下面由浅入深地介绍ASP.NETMVC架构。1.基础概念理解模型(Model):代表应用程序的数据和业务逻辑。它负责处理数据的存储、检索和验证等操作。例如,在一个博客应用中,模型可以是表示文章、评论等的数据类,以及与之相关的数据库操作方法。视图(Vi
- C#依赖注入详解:理解并应用.NET中的依赖注入
雨夜思绪~静谧思考
c#.netjava.NET
在现代软件开发中,依赖注入(DependencyInjection,DI)是一种广泛应用的设计模式,它帮助我们实现松耦合、可测试和可扩展的代码。作为.NET开发者,理解依赖注入的原理和在C#中的应用是非常重要的。在本文中,我们将深入探讨依赖注入的概念、原理以及如何在C#中使用。我们将通过示例代码来演示不同的依赖注入技术和模式。什么是依赖注入?依赖注入是一种软件设计模式,它通过将对象的依赖关系从代码
- 论软件设计方法及其应用
怎么可能-怎么可能
系统架构软件设计方法
20250427-作题目软件设计(SoftwareDesign,SD)根据软件需求规格说明书设计软件系统的整体结构、划分功能模块、确定每个模块的实现算法以及程序流程等,形成软件的具体设计方案。软件设计把许多事物和问题按不同的层次和角度进行抽象,将问题或事物进行模块化分解,以便更容易解决问题。分解得越细,模块数量也就越多,设计者需要考虑模块之间的耦合度。请围绕“论软件设计方法及其应用”论题,依次从以
- 论软件可靠性设计技术的应用
怎么可能-怎么可能
架构系统架构可靠性设计
20250430-作题目随着软件的日益普及,系统中软件成分不断增加,使得系统对软件的依赖越来越强。软件的可靠性对系统可靠性的影响越来越大。而实践证明,保障软件可靠性最有效、最经济、最重要的手段是在软件设计阶段采取措施进行可靠性控制,为此提出了软件可靠性设计的概念。软件可靠性设计就是在常规的软件设计中,应用各种方法和技术,使软件设计在兼顾用户功能和性能需求的同时,全面满足软件的可靠性要求。软件可靠性
- 安装数据库首次应用
Array_06
javaoraclesql
可是为什么再一次失败之后就变成直接跳过那个要求
enter full pathname of java.exe的界面
这个java.exe是你的Oracle 11g安装目录中例如:【F:\app\chen\product\11.2.0\dbhome_1\jdk\jre\bin】下的java.exe 。不是你的电脑安装的java jdk下的java.exe!
注意第一次,使用SQL D
- Weblogic Server Console密码修改和遗忘解决方法
bijian1013
Welogic
在工作中一同事将Weblogic的console的密码忘记了,通过网上查询资料解决,实践整理了一下。
一.修改Console密码
打开weblogic控制台,安全领域 --> myrealm -->&n
- IllegalStateException: Cannot forward a response that is already committed
Cwind
javaServlets
对于初学者来说,一个常见的误解是:当调用 forward() 或者 sendRedirect() 时控制流将会自动跳出原函数。标题所示错误通常是基于此误解而引起的。 示例代码:
protected void doPost() {
if (someCondition) {
sendRedirect();
}
forward(); // Thi
- 基于流的装饰设计模式
木zi_鸣
设计模式
当想要对已有类的对象进行功能增强时,可以定义一个类,将已有对象传入,基于已有的功能,并提供加强功能。
自定义的类成为装饰类
模仿BufferedReader,对Reader进行包装,体现装饰设计模式
装饰类通常会通过构造方法接受被装饰的对象,并基于被装饰的对象功能,提供更强的功能。
装饰模式比继承灵活,避免继承臃肿,降低了类与类之间的关系
装饰类因为增强已有对象,具备的功能该
- Linux中的uniq命令
被触发
linux
Linux命令uniq的作用是过滤重复部分显示文件内容,这个命令读取输入文件,并比较相邻的行。在正常情 况下,第二个及以后更多个重复行将被删去,行比较是根据所用字符集的排序序列进行的。该命令加工后的结果写到输出文件中。输入文件和输出文件必须不同。如 果输入文件用“- ”表示,则从标准输入读取。
AD:
uniq [选项] 文件
说明:这个命令读取输入文件,并比较相邻的行。在正常情况下,第二个
- 正则表达式Pattern
肆无忌惮_
Pattern
正则表达式是符合一定规则的表达式,用来专门操作字符串,对字符创进行匹配,切割,替换,获取。
例如,我们需要对QQ号码格式进行检验
规则是长度6~12位 不能0开头 只能是数字,我们可以一位一位进行比较,利用parseLong进行判断,或者是用正则表达式来匹配[1-9][0-9]{4,14} 或者 [1-9]\d{4,14}
&nbs
- Oracle高级查询之OVER (PARTITION BY ..)
知了ing
oraclesql
一、rank()/dense_rank() over(partition by ...order by ...)
现在客户有这样一个需求,查询每个部门工资最高的雇员的信息,相信有一定oracle应用知识的同学都能写出下面的SQL语句:
select e.ename, e.job, e.sal, e.deptno
from scott.emp e,
(se
- Python调试
矮蛋蛋
pythonpdb
原文地址:
http://blog.csdn.net/xuyuefei1988/article/details/19399137
1、下面网上收罗的资料初学者应该够用了,但对比IBM的Python 代码调试技巧:
IBM:包括 pdb 模块、利用 PyDev 和 Eclipse 集成进行调试、PyCharm 以及 Debug 日志进行调试:
http://www.ibm.com/d
- webservice传递自定义对象时函数为空,以及boolean不对应的问题
alleni123
webservice
今天在客户端调用方法
NodeStatus status=iservice.getNodeStatus().
结果NodeStatus的属性都是null。
进行debug之后,发现服务器端返回的确实是有值的对象。
后来发现原来是因为在客户端,NodeStatus的setter全部被我删除了。
本来是因为逻辑上不需要在客户端使用setter, 结果改了之后竟然不能获取带属性值的
- java如何干掉指针,又如何巧妙的通过引用来操作指针————>说的就是java指针
百合不是茶
C语言的强大在于可以直接操作指针的地址,通过改变指针的地址指向来达到更改地址的目的,又是由于c语言的指针过于强大,初学者很难掌握, java的出现解决了c,c++中指针的问题 java将指针封装在底层,开发人员是不能够去操作指针的地址,但是可以通过引用来间接的操作:
定义一个指针p来指向a的地址(&是地址符号):
- Eclipse打不开,提示“An error has occurred.See the log file ***/.log”
bijian1013
eclipse
打开eclipse工作目录的\.metadata\.log文件,发现如下错误:
!ENTRY org.eclipse.osgi 4 0 2012-09-10 09:28:57.139
!MESSAGE Application error
!STACK 1
java.lang.NoClassDefFoundError: org/eclipse/core/resources/IContai
- spring aop实例annotation方法实现
bijian1013
javaspringAOPannotation
在spring aop实例中我们通过配置xml文件来实现AOP,这里学习使用annotation来实现,使用annotation其实就是指明具体的aspect,pointcut和advice。1.申明一个切面(用一个类来实现)在这个切面里,包括了advice和pointcut
AdviceMethods.jav
- [Velocity一]Velocity语法基础入门
bit1129
velocity
用户和开发人员参考文档
http://velocity.apache.org/engine/releases/velocity-1.7/developer-guide.html
注释
1.行级注释##
2.多行注释#* *#
变量定义
使用$开头的字符串是变量定义,例如$var1, $var2,
赋值
使用#set为变量赋值,例
- 【Kafka十一】关于Kafka的副本管理
bit1129
kafka
1. 关于request.required.acks
request.required.acks控制者Producer写请求的什么时候可以确认写成功,默认是0,
0表示即不进行确认即返回。
1表示Leader写成功即返回,此时还没有进行写数据同步到其它Follower Partition中
-1表示根据指定的最少Partition确认后才返回,这个在
Th
- lua统计nginx内部变量数据
ronin47
lua nginx 统计
server {
listen 80;
server_name photo.domain.com;
location /{set $str $uri;
content_by_lua '
local url = ngx.var.uri
local res = ngx.location.capture(
- java-11.二叉树中节点的最大距离
bylijinnan
java
import java.util.ArrayList;
import java.util.List;
public class MaxLenInBinTree {
/*
a. 1
/ \
2 3
/ \ / \
4 5 6 7
max=4 pass "root"
- Netty源码学习-ReadTimeoutHandler
bylijinnan
javanetty
ReadTimeoutHandler的实现思路:
开启一个定时任务,如果在指定时间内没有接收到消息,则抛出ReadTimeoutException
这个异常的捕获,在开发中,交给跟在ReadTimeoutHandler后面的ChannelHandler,例如
private final ChannelHandler timeoutHandler =
new ReadTim
- jquery验证上传文件样式及大小(好用)
cngolon
文件上传jquery验证
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="jquery1.8/jquery-1.8.0.
- 浏览器兼容【转】
cuishikuan
css浏览器IE
浏览器兼容问题一:不同浏览器的标签默认的外补丁和内补丁不同
问题症状:随便写几个标签,不加样式控制的情况下,各自的margin 和padding差异较大。
碰到频率:100%
解决方案:CSS里 *{margin:0;padding:0;}
备注:这个是最常见的也是最易解决的一个浏览器兼容性问题,几乎所有的CSS文件开头都会用通配符*来设
- Shell特殊变量:Shell $0, $#, $*, $@, $?, $$和命令行参数
daizj
shell$#$?特殊变量
前面已经讲到,变量名只能包含数字、字母和下划线,因为某些包含其他字符的变量有特殊含义,这样的变量被称为特殊变量。例如,$ 表示当前Shell进程的ID,即pid,看下面的代码:
$echo $$
运行结果
29949
特殊变量列表 变量 含义 $0 当前脚本的文件名 $n 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个
- 程序设计KISS 原则-------KEEP IT SIMPLE, STUPID!
dcj3sjt126com
unix
翻到一本书,讲到编程一般原则是kiss:Keep It Simple, Stupid.对这个原则深有体会,其实不仅编程如此,而且系统架构也是如此。
KEEP IT SIMPLE, STUPID! 编写只做一件事情,并且要做好的程序;编写可以在一起工作的程序,编写处理文本流的程序,因为这是通用的接口。这就是UNIX哲学.所有的哲学真 正的浓缩为一个铁一样的定律,高明的工程师的神圣的“KISS 原
- android Activity间List传值
dcj3sjt126com
Activity
第一个Activity:
import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import a
- tomcat 设置java虚拟机内存
eksliang
tomcat 内存设置
转载请出自出处:http://eksliang.iteye.com/blog/2117772
http://eksliang.iteye.com/
常见的内存溢出有以下两种:
java.lang.OutOfMemoryError: PermGen space
java.lang.OutOfMemoryError: Java heap space
------------
- Android 数据库事务处理
gqdy365
android
使用SQLiteDatabase的beginTransaction()方法可以开启一个事务,程序执行到endTransaction() 方法时会检查事务的标志是否为成功,如果程序执行到endTransaction()之前调用了setTransactionSuccessful() 方法设置事务的标志为成功则提交事务,如果没有调用setTransactionSuccessful() 方法则回滚事务。事
- Java 打开浏览器
hw1287789687
打开网址open浏览器open browser打开url打开浏览器
使用java 语言如何打开浏览器呢?
我们先研究下在cmd窗口中,如何打开网址
使用IE 打开
D:\software\bin>cmd /c start iexplore http://hw1287789687.iteye.com/blog/2153709
使用火狐打开
D:\software\bin>cmd /c start firefox http://hw1287789
- ReplaceGoogleCDN:将 Google CDN 替换为国内的 Chrome 插件
justjavac
chromeGooglegoogle apichrome插件
Chrome Web Store 安装地址: https://chrome.google.com/webstore/detail/replace-google-cdn/kpampjmfiopfpkkepbllemkibefkiice
由于众所周知的原因,只需替换一个域名就可以继续使用Google提供的前端公共库了。 同样,通过script标记引用这些资源,让网站访问速度瞬间提速吧
- 进程VS.线程
m635674608
线程
资料来源:
http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001397567993007df355a3394da48f0bf14960f0c78753f000 1、Apache最早就是采用多进程模式 2、IIS服务器默认采用多线程模式 3、多进程优缺点 优点:
多进程模式最大
- Linux下安装MemCached
字符串
memcached
前提准备:1. MemCached目前最新版本为:1.4.22,可以从官网下载到。2. MemCached依赖libevent,因此在安装MemCached之前需要先安装libevent。2.1 运行下面命令,查看系统是否已安装libevent。[root@SecurityCheck ~]# rpm -qa|grep libevent libevent-headers-1.4.13-4.el6.n
- java设计模式之--jdk动态代理(实现aop编程)
Supanccy2013
javaDAO设计模式AOP
与静态代理类对照的是动态代理类,动态代理类的字节码在程序运行时由Java反射机制动态生成,无需程序员手工编写它的源代码。动态代理类不仅简化了编程工作,而且提高了软件系统的可扩展性,因为Java 反射机制可以生成任意类型的动态代理类。java.lang.reflect 包中的Proxy类和InvocationHandler 接口提供了生成动态代理类的能力。
&
- Spring 4.2新特性-对java8默认方法(default method)定义Bean的支持
wiselyman
spring 4
2.1 默认方法(default method)
java8引入了一个default medthod;
用来扩展已有的接口,在对已有接口的使用不产生任何影响的情况下,添加扩展
使用default关键字
Spring 4.2支持加载在默认方法里声明的bean
2.2
将要被声明成bean的类
public class DemoService {