- [学习笔记]《CSAPP》深入理解计算机系统 - Chapter 4 处理器体系结构&Chapter 5 优化程序性能
Artintel
学习学习笔记ccsapp
总结一些第四章和第五章的一些关键信息Chapter4处理器体系结构将处理组织成阶段Chapter5优化程序性能Chapter4处理器体系结构在硬件中,寄存器直接将它的输入和输出线连接到电路的其他盆。在机器级变成中,寄存器代表的是CPU中为数不多的可寻址的字,这里的地址是寄存器的ID。这些字通常都存在寄存器文件中,虽然我们会看到硬件有时可以直接将一个字从一个指令传到另一个指令,以避免先写寄存器文件再
- [学习笔记]《CSAPP》深入理解计算机系统 - Chapter 6 存储器层次结构
Artintel
学习学习笔记ccsapp
总结一些第六章的一些关键信息Chapter6存储器层次结构DMA局部性抖动Chapter6存储器层次结构随机访问存储器(Random-AccessMemory,RAM)分为两类:静态的和动态的。静态(SRAM)比动态更快,更贵动态(DRAM)数据流通过称为总线(bus)的共享电子电路在处理器和DRAM主存来来回回。每次CPU和主存之间的数据传送都是通过一系列的步骤来完成的,这些步骤称为总线事务(b
- 关于《深入理解计算机系统》一书的理解
Math_Programmer
先说自己为什么要读这本书?主要是因为长久以来,虽然我一直在做着程序员的工作,但我对于计算机领域这快却并没有足够的了解,至少对计算机领域没有一个整体的认识。听说这是一本提纲挈领的书籍,通过这本书认识到计算机的主干知识有哪些,然后是在主干上有哪些枝干,对于枝干上又有哪些领域,能了解到这一步就差不多了。从此后,我可以依据这个知识树,在对应的枝丫上细化我所需要的技术知识。相比起过去两年的支鳞片爪的胡乱摸索
- 【深入理解计算机系统】 三:布尔逻辑与组合电路
Geeksongs
javascriptvuejqueryjavaspringboot
4.1.BooleanExpressionsToday’sdigitalcircuitsarebuiltsothattheycanperformveryfastoperationsoverdatathatisencodedinbinary.TheunderlyingoperationsarepartofwhatisknownasBooleanAlgebra.Thisalgebraconsistso
- 我的程序员读书路
weixin_30416497
c#javascript大数据ViewUI
CLRviaC#(第三版)你必须知道的.NET(第二版)编码:隐匿在计算机软硬件背后的语言代码整洁之道重构:改善既有代码的设计数据结构与算法:C#语言描述程序员修炼之道:从小工到专家编程珠玑(第2版)深入理解计算机系统(第2版)数据挖掘概念与技术(第2版)高效程序员的45个习惯:敏捷开发修炼之道面向对象分析与设计(第三版)深入浅出设计模式(c#/java版)代码大全第二版设计模式:可复用面向对象软
- Leo赠书活动-16期 名校毕业生教材
LeoToJavaer
CSDN送书活动送书福利
Leo赠书活动-16期名校毕业生教材✅作者简介:大家好,我是Leo,热爱Java后端开发者,一个想要与大家共同进步的男人个人主页:Leo的博客当前专栏:赠书活动专栏✨特色专栏:MySQL学习本文内容:Leo赠书活动-16期名校毕业生教材个人知识库:Leo知识库,欢迎大家访问目录Leo赠书活动-16期名校毕业生教材1.《深入理解计算机系统》2.《算法导论》3.《计算机程序的构造和解释》4.《数据库系
- Linux 系统编程从入门到进阶 学习指南
后端
引言大家好,我是小康,今天我们来学习一下Linux系统编程相关的知识。Linux系统编程是连接高级语言和硬件的桥梁,它对深入理解计算机系统至关重要。无论你是打算构建高性能服务器还是开发嵌入式设备,掌握Linux系统编程是C和C++开发者的基本技能。本文旨在为初学者提供一个清晰的Linux系统编程入门指南,带你步入Linux系统编程的世界,从基本概念到实用技能,一步步建立起您的知识体系。基本概念什么
- 世界顶级名校计算机专业,都在用哪些书当教材?(文末送书)
小尘要自信
java开发语言数据库算法赠书计算机组成
目录01《深入理解计算机系统》02《算法导论》03《计算机程序的构造和解释》04《数据库系统概念》05《计算机组成与设计:硬件/软件接口》06《离散数学及其应用》07《组合数学》08《斯坦福算法博弈论二十讲》参与规则清华、北大、MIT、CMU、斯坦福的学霸们在新学期里要学什么?今天我们来盘点一下那些世界名校计算机专业采用的教材。01《深入理解计算机系统》原书第3版)作者:兰德尔E.布莱恩特大卫R.
- 有哪些你看了以后大呼过瘾的编程书?
小鱼资料站
面试面试
深入理解计算机系统作为一个看了两遍以上的人来回答下这个问题。先看下这本书我们能学到啥?然后聊聊我看这本书的历程,最后说说我推荐的阅读方式。深入理解计算机系统书籍完整版PDF:https://pan.xunlei.com/s/VNo-wxw6hR6CsLIoopEnPoTkA1?pwd=sv4w#首先是关于这本书的内容。这本书的简介部分简介明了:一个简单的helloworld程序在计算机上的执行过程
- 深入理解计算机系统:第二章 信息的表示和处理 part1
土元肥肥
第一部分我们对计算机系统的探索是从学习计算机本身开始的,它由处理器和存储器子系统组成。在核心部分,我们需要方法来表示基本数据类型,比如整数和实数运算的近似值。然后,我们考虑机器级指令如何操作这样的数据,以及编译器又如何将c程序翻译成这样的指令。接下来,研究几种实现处理器的方法,帮助我们更好地了解硬件资源如何被用来执行指令。一旦理解了编译器和机器级代码,我们就能了解如何通过编写C程序以及编译它们来最
- 深入理解计算机系统bomb实验
ECNU__YZ
计算机系统
深入理解计算机系统Bomb实验前言准备阶段上传bomb.c文件生成汇编代码进入gdb调试模式获取主要函数的汇编代码实验阶段Phase1实验探究输入字符串首地址的保存继续phase1的研究通关密钥Phase2实验探究通关密钥Phase3实验探究sscanf语句swith-case语句通关密钥Phase4实验探究通关密钥Phase5实验探究通关密钥Phase6实验探究通关密钥秘密关卡实验探究找到隐藏关
- 2019年七月复盘+八月目标
抟九
七月复盘有记录的好处就是可以随时翻阅,检查自己的目标实现了没。站在这七月底,检查七月的行动项,发现没有实现的占了大部分。读书本来是计划结束《曼昆经济学》,看完《聪明的投资者》,加缪《西西弗神话》,《深入理解计算机系统》,但事实证明,我一本都没看完,有点惭愧。这是因为我给自己规划的太多,所以八月就不看那么多了。七月看完了《无尽世界》三册,《当谈跑步时,我在谈什么》,《哲学家们都干了些什么》只看了半本
- 进程、线程的概念、区别和联系;并发、并行概念、区别和联系
程序员小伙伴
以下概念摘自《疯狂java讲义》和《深入理解计算机系统》:程序和进程(Process):几乎所有的操作系统都支持同时运行多个任务,一个任务通常就是指一个程序。程序和进程的主要区别:程序是一个静态的指令集合,进程则是正在系统中活动的指令集合。换句话说,运行中的程序就是进程。进程具有三个重要的性质:独立性、动态性、并发性独立性:经常在操作系统中独立存在,拥有独立的资源和私有的地址空间。没有经过进程自身
- Amdahl定律理解
弱花
摘自深入理解计算机系统第三版其中,a为并行计算部分所占比例,k为并行处理的个数。当1-a=0时,(没有串行,只有并行)最大加速比s=n;当a=0时,(只有串行,没有并行)最小加速比s=1;当k→∞时,s→1/(1-a),即加速比的上限。例如,若串行代码占整个代码的25%,则并行处理的总体性能不可能超过4。
- 《深入理解计算机系统》实验三 —— Buf Lab
3561cc5dc1b0
这是CSAPP的第三个实验,主要让我们熟悉GDB的使用,理解程序栈帧的结构和缓冲区溢出的原理。实验目的 本实验的目的在于加深对IA-32函数调用规则和栈结构的具体理解。实验的主要内容是对一个可执行程序“bufbomb”实施一系列缓冲区溢出攻击(bufferoverflowattacks),也就是设法通过造成缓冲区溢出来改变该可执行程序的运行内存映像,继而执行一些原来程序中没有的行为,例如将给定的
- CSAPP fall2015 深入理解计算机系统 lab1 datalab详解
Thepatterraining
深入理解计算机系统CSAPPcbitdatalabfloat
DataLabdatalab数据实验这个数据实验请在linux机器上面运行,实测macm1本跑不起来。windows没试过。centos上需要安装好gcc运行环境。如果跑不起来记得安装下面这个东西:yum-yinstallglibc-devel.i686运行makebtest的时候可能会有warning提示,不用管,这个时候其实已经创建完btest了,可以直接运行btest。bitXor第一个函数
- CSAPP fall2015 深入理解计算机系统 Cache lab详解
Thepatterraining
深入理解计算机系统csappccache
CacheLabcachelab缓存实验代码下载从CSAPP上面下载对应的lab代码http://csapp.cs.cmu.edu/3e/labs.html环境准备需要安装valgrind。可以参考文章Valgrindcentos。安装好以后执行valgrind--version可以看到版本号。Cachesimulatorcachesimulatornotacache。我们不是实现一个真正的缓存,
- 【深入理解计算机系统】程序是如何运行的
cy413026
CPU及处理器汇编与执行
程序是如何运行的现代计算机存储和处理的信息以二值信号表示,程序对于计算机而言就是一串二进制数据流,以流水线的方式进入CPU进行运算。而数据主要在CPU与内存之间进行传递。本文将从程序源码的结构与表现形式开始,源代码编译成可执行文件,再到执行文件的加载,最终到执行文件的运行整个过程进行梳理。###1程序的结构与表现形式大多数计算使用8位的块,即字节(byte),作为最小的可寻址的内存单元。程序对象,
- 7 深入理解计算机系统
brightsunp
0漫游跟踪hello程序的生命周期:源程序;运行在系统上;输出简单消息;终止。#includeintmain(){printf("hello,world!\n");}1)信息:位+上下文计算机系统的所有信息:包括磁盘文件、存储器的程序、存储器的用户数据,以及网络上的传输数据,都是由一串比特(0、1组成的位,8个一组称为字节)表示的,读取这些数据的上下文是区别它们的唯一方法。作为程序员,必须了解数字
- 【深入理解计算机系统】CSAPP-实验二:BombLab 2020最新详解
热爱学习的贾克斯
笔记反汇编操作系统
前言本章以“拆解炸弹”为背景,通过gdb调试器对程序进行分析,是一次汇编以及反编译的有趣实践。本机使用win10+wsl2.0+ubuntu18.04完成实验。点击查看我的全部代码reference【施工完成】CSAPPbomblab【实战】手摸手教你BombLab答案BorderrelationswithCanadahaveneverbeenbetter.12481632020700ionefg
- 深入理解计算机系统(2):信息的表示和处理
飞大圣
计算机组成原理系统架构c++
信息存储大多数计算机使用8位的块,或者字节(byte),作为最小的可寻址的内存单位,而不是访问内存中单独的位。机器级程序将内存视为一个非常大的字节数组,称为虚拟内存(virtualmemory)。内存的每个字节都由一个唯一的数字来标识,称为它的地址(address),所有可能地址的集合就称为虚拟地址空间(virtualaddressspace)。顾名思义,这个虚拟地址空间只是一个展现给机器级程序的
- 书单
suddennessMan
持续添加1.MIT6.00.1x(计算机科学和Python编程导论)2019-1-2开始预计一个月2.HarvardCS50x(计算机科学)3.SICP(计算机程序的构造和解释)4.Java编程思想5.CSAPP(深入理解计算机系统)6.大话设计模式7.重构改善既有代码的设计8.effectivejava9.深入理解Java虚拟机10.tcp/ip详解卷一、二、三11.数据结构与算法12.Pyth
- 【计算机组成与设计 硬件/软件接口-2】MIPS指令集架构
AndyZzz~
计算机组成原理
指令:计算机的语言引言所谓指令集,指的就是计算机的全部指令,这章节将以MIPS指令集作为学习对象,如果是x86指令集,还请参考《深入理解计算机系统》。MIPS指令集在嵌入式芯片市场占有相当大的市场份额,应用在包括用户电子,网络/存储设备,相机,打印机等等。学习MIPS指令集,其实最终只需要掌握几张表就足够了,要能看懂学会当成API文档进行查阅。本章节并不会讲解太多指令怎么用,我们的关注点更多的落在
- 时钟周期和时钟频率
6ca1ee26e8c2
引自《深入理解计算机系统》处理器活动的顺序是由时钟控制的,时钟提供了某个频率的规律信号,通常用千兆赫兹(GHz),即十亿周期每秒来表示。例如,当表明一个系统有“4GHz”处理器,这表示处理器时钟运行频率为每秒4×10^9个周期。每个时钟周期的时间是时钟频率的倒数。通常是以纳秒(nanosecond,1纳秒等于10^-9秒)或皮秒(picosecond,1皮秒等于10^-12秒)为单位的。例如,一个
- 操作系统第一课:CPU基础知识
学而知不足~
操作系统操作系统
相关书籍推荐读书的原则:不求甚解,观其大略《编码:隐匿在计算机软硬件背后的语言》《深入理解计算机系统》数据结构与算法《java数据结构与算法》《算法》《算法导论》《计算机程序设计艺术》操作系统:Linux内核源码解析Linux内核设计与实现30天自制操作系统网络:机工《TCP/IP详解》卷一建议看原版编译原理:机工龙书编程语言实现模式数据库:SQLite源码DerbyCPU基础知识CPU的制作过程
- 深入理解计算机系统(1):开始
飞大圣
计算机系统系统架构架构
计算机系统是由硬件和系统软件组成的,它们共同工作来运行应用程序。虽然系统的具体实现方式随着时间不断变化,但是系统内在的概念却没有改变。所有计算机系统都有相似的硬件和软件组件,它们又执行着相似的功能。计算机系统信息就是位+上下文//hello.c#includeintmain({printf("hello,world\n");return0;}hello程序的生命周期是从一个源程序(或者说源文件)开
- OSTEP《操作系统导论》万字 精华学习笔记-第一部分:虚拟化
yruluvme
OS:TEP《操作系统导论》学习笔记驱动开发linuxunix
前言操作系统导论(Operating-Systems:Three-Easy-Pieces)是一本非常好的操作系统入门书籍。这是我看完了之后,做的一点笔记总结。(重点部分加粗)前段时间学习过《深入理解计算机系统》(CSAPP)和《计算机组成与设计:硬件软件接口RISC-V》学习完这本书算是对于之前的一点点补充,一些概念理解的更加深刻了。github上找到的课后作业答案第二部分第三部分第一部分:虚拟化
- 《深入理解计算机系统》(CSAPP)读书笔记 —— 第五章 优化程序性能
3561cc5dc1b0
写程序最主要的目标就是使它在所有可能的情况下都正确工作。一个运行得很快但是给出错误结果的程序没有任何用处。程序员必须写出清晰简洁的代码,这样做不仅是为了自己能够看懂代码,也是为了在检査代码和今后需要修改代码时,其他人能够读懂和理解代码。另一方面,在很多情况下,让程序运行得快也是一个重要的考虑因素。本章主要介绍了循环展开,减小过程调用,消除不必要的内存引用等优化代码的方法,有助于我们写出高效的代码,
- 《深入理解计算机系统》(美)布赖恩特(Bryant,R.E.) 等
xiaoxiao无脸男
linuxwindows
书籍:《深入理解计算机系统》(美)布赖恩特(Bryant,R.E.)等适合对象:对计算机感兴趣的朋友。需要相关资料的可私信我。2023.09.20更新完成。先上个大纲框架图:第一章:计算机系统漫游主要知识点:解读全书结构框架,解释OS的原理和相关硬件软件。计算机系统是由硬件和系统软件组成,共同协作以运行应用程序。1.1信息就是位+上下文1.2程序被其他程序翻译成不同的格式1.3了解编译系统如何工作
- 深入理解计算机系统第三章练习题
麻风剑客
习题3.1地址值0x1000xFF0x1040xAB0x1080x130x10C0x11寄存器值%rax0x100%rcx0x1%rdx0x3%rax0x100寄存器寻址0x1040xAB绝对寻址rcx0xFC(,%rcx,4)0xFC+40x1=0xF11错,应该为M(0xFC+0x4)=M(0x100)即内存地址0x100的值为0xFF(%rax,%rdx,4)0x100+40x3=0x10C
- 统一思想认识
永夜-极光
思想
1.统一思想认识的基础,才能有的放矢
原因:
总有一种描述事物的方式最贴近本质,最容易让人理解.
如何让教育更轻松,在于找到最适合学生的方式.
难点在于,如何模拟对方的思维基础选择合适的方式. &
- Joda Time使用笔记
bylijinnan
javajoda time
Joda Time的介绍可以参考这篇文章:
http://www.ibm.com/developerworks/cn/java/j-jodatime.html
工作中也常常用到Joda Time,为了避免每次使用都查API,记录一下常用的用法:
/**
* DateTime变化(增减)
*/
@Tes
- FileUtils API
eksliang
FileUtilsFileUtils API
转载请出自出处:http://eksliang.iteye.com/blog/2217374 一、概述
这是一个Java操作文件的常用库,是Apache对java的IO包的封装,这里面有两个非常核心的类FilenameUtils跟FileUtils,其中FilenameUtils是对文件名操作的封装;FileUtils是文件封装,开发中对文件的操作,几乎都可以在这个框架里面找到。 非常的好用。
- 各种新兴技术
不懂事的小屁孩
技术
1:gradle Gradle 是以 Groovy 语言为基础,面向Java应用为主。基于DSL(领域特定语言)语法的自动化构建工具。
现在构建系统常用到maven工具,现在有更容易上手的gradle,
搭建java环境:
http://www.ibm.com/developerworks/cn/opensource/os-cn-gradle/
搭建android环境:
http://m
- tomcat6的https双向认证
酷的飞上天空
tomcat6
1.生成服务器端证书
keytool -genkey -keyalg RSA -dname "cn=localhost,ou=sango,o=none,l=china,st=beijing,c=cn" -alias server -keypass password -keystore server.jks -storepass password -validity 36
- 托管虚拟桌面市场势不可挡
蓝儿唯美
用户还需要冗余的数据中心,dinCloud的高级副总裁兼首席营销官Ali Din指出。该公司转售一个MSP可以让用户登录并管理和提供服务的用于DaaS的云自动化控制台,提供服务或者MSP也可以自己来控制。
在某些情况下,MSP会在dinCloud的云服务上进行服务分层,如监控和补丁管理。
MSP的利润空间将根据其参与的程度而有所不同,Din说。
“我们有一些合作伙伴负责将我们推荐给客户作为个
- spring学习——xml文件的配置
a-john
spring
在Spring的学习中,对于其xml文件的配置是必不可少的。在Spring的多种装配Bean的方式中,采用XML配置也是最常见的。以下是一个简单的XML配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.or
- HDU 4342 History repeat itself 模拟
aijuans
模拟
来源:http://acm.hdu.edu.cn/showproblem.php?pid=4342
题意:首先让求第几个非平方数,然后求从1到该数之间的每个sqrt(i)的下取整的和。
思路:一个简单的模拟题目,但是由于数据范围大,需要用__int64。我们可以首先把平方数筛选出来,假如让求第n个非平方数的话,看n前面有多少个平方数,假设有x个,则第n个非平方数就是n+x。注意两种特殊情况,即
- java中最常用jar包的用途
asia007
java
java中最常用jar包的用途
jar包用途axis.jarSOAP引擎包commons-discovery-0.2.jar用来发现、查找和实现可插入式接口,提供一些一般类实例化、单件的生命周期管理的常用方法.jaxrpc.jarAxis运行所需要的组件包saaj.jar创建到端点的点到点连接的方法、创建并处理SOAP消息和附件的方法,以及接收和处理SOAP错误的方法. w
- ajax获取Struts框架中的json编码异常和Struts中的主控制器异常的解决办法
百合不是茶
jsjson编码返回异常
一:ajax获取自定义Struts框架中的json编码 出现以下 问题:
1,强制flush输出 json编码打印在首页
2, 不强制flush js会解析json 打印出来的是错误的jsp页面 却没有跳转到错误页面
3, ajax中的dataType的json 改为text 会
- JUnit使用的设计模式
bijian1013
java设计模式JUnit
JUnit源代码涉及使用了大量设计模式
1、模板方法模式(Template Method)
定义一个操作中的算法骨架,而将一些步骤延伸到子类中去,使得子类可以不改变一个算法的结构,即可重新定义该算法的某些特定步骤。这里需要复用的是算法的结构,也就是步骤,而步骤的实现可以在子类中完成。
 
- Linux常用命令(摘录)
sunjing
crondchkconfig
chkconfig --list 查看linux所有服务
chkconfig --add servicename 添加linux服务
netstat -apn | grep 8080 查看端口占用
env 查看所有环境变量
echo $JAVA_HOME 查看JAVA_HOME环境变量
安装编译器
yum install -y gcc
- 【Hadoop一】Hadoop伪集群环境搭建
bit1129
hadoop
结合网上多份文档,不断反复的修正hadoop启动和运行过程中出现的问题,终于把Hadoop2.5.2伪分布式安装起来,跑通了wordcount例子。Hadoop的安装复杂性的体现之一是,Hadoop的安装文档非常多,但是能一个文档走下来的少之又少,尤其是Hadoop不同版本的配置差异非常的大。Hadoop2.5.2于前两天发布,但是它的配置跟2.5.0,2.5.1没有分别。 &nb
- Anychart图表系列五之事件监听
白糖_
chart
创建图表事件监听非常简单:首先是通过addEventListener('监听类型',js监听方法)添加事件监听,然后在js监听方法中定义具体监听逻辑。
以钻取操作为例,当用户点击图表某一个point的时候弹出point的name和value,代码如下:
<script>
//创建AnyChart
var chart = new AnyChart();
//添加钻取操作&quo
- Web前端相关段子
braveCS
web前端
Web标准:结构、样式和行为分离
使用语义化标签
0)标签的语义:使用有良好语义的标签,能够很好地实现自我解释,方便搜索引擎理解网页结构,抓取重要内容。去样式后也会根据浏览器的默认样式很好的组织网页内容,具有很好的可读性,从而实现对特殊终端的兼容。
1)div和span是没有语义的:只是分别用作块级元素和行内元素的区域分隔符。当页面内标签无法满足设计需求时,才会适当添加div
- 编程之美-24点游戏
bylijinnan
编程之美
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
import java.util.Random;
import java.util.Set;
public class PointGame {
/**编程之美
- 主页面子页面传值总结
chengxuyuancsdn
总结
1、showModalDialog
returnValue是javascript中html的window对象的属性,目的是返回窗口值,当用window.showModalDialog函数打开一个IE的模式窗口时,用于返回窗口的值
主界面
var sonValue=window.showModalDialog("son.jsp");
子界面
window.retu
- [网络与经济]互联网+的含义
comsci
互联网+
互联网+后面是一个人的名字 = 网络控制系统
互联网+你的名字 = 网络个人数据库
每日提示:如果人觉得不舒服,千万不要外出到处走动,就呆在床上,玩玩手游,更不能够去开车,现在交通状况不
- oracle 创建视图 with check option
daizj
视图vieworalce
我们来看下面的例子:
create or replace view testview
as
select empno,ename from emp where ename like ‘M%’
with check option;
这里我们创建了一个视图,并使用了with check option来限制了视图。 然后我们来看一下视图包含的结果:
select * from testv
- ToastPlugin插件在cordova3.3下使用
dibov
Cordova
自己开发的Todos应用,想实现“
再按一次返回键退出程序 ”的功能,采用网上的ToastPlugins插件,发现代码或文章基本都是老版本,运行问题比较多。折腾了好久才弄好。下面吧基于cordova3.3下的ToastPlugins相关代码共享。
ToastPlugin.java
package&nbs
- C语言22个系统函数
dcj3sjt126com
cfunction
C语言系统函数一、数学函数下列函数存放在math.h头文件中Double floor(double num) 求出不大于num的最大数。Double fmod(x, y) 求整数x/y的余数。Double frexp(num, exp); double num; int *exp; 将num分为数字部分(尾数)x和 以2位的指数部分n,即num=x*2n,指数n存放在exp指向的变量中,返回x。D
- 开发一个类的流程
dcj3sjt126com
开发
本人近日根据自己的开发经验总结了一个类的开发流程。这个流程适用于单独开发的构件,并不适用于对一个项目中的系统对象开发。开发出的类可以存入私人类库,供以后复用。
以下是开发流程:
1. 明确类的功能,抽象出类的大概结构
2. 初步设想类的接口
3. 类名设计(驼峰式命名)
4. 属性设置(权限设置)
判断某些变量是否有必要作为成员属
- java 并发
shuizhaosi888
java 并发
能够写出高伸缩性的并发是一门艺术
在JAVA SE5中新增了3个包
java.util.concurrent
java.util.concurrent.atomic
java.util.concurrent.locks
在java的内存模型中,类的实例字段、静态字段和构成数组的对象元素都会被多个线程所共享,局部变量与方法参数都是线程私有的,不会被共享。
- Spring Security(11)——匿名认证
234390216
Spring SecurityROLE_ANNOYMOUS匿名
匿名认证
目录
1.1 配置
1.2 AuthenticationTrustResolver
对于匿名访问的用户,Spring Security支持为其建立一个匿名的AnonymousAuthenticat
- NODEJS项目实践0.2[ express,ajax通信...]
逐行分析JS源代码
Ajaxnodejsexpress
一、前言
通过上节学习,我们已经 ubuntu系统搭建了一个可以访问的nodejs系统,并做了nginx转发。本节原要做web端服务 及 mongodb的存取,但写着写着,web端就
- 在Struts2 的Action中怎样获取表单提交上来的多个checkbox的值
lhbthanks
javahtmlstrutscheckbox
第一种方法:获取结果String类型
在 Action 中获得的是一个 String 型数据,每一个被选中的 checkbox 的 value 被拼接在一起,每个值之间以逗号隔开(,)。
所以在 Action 中定义一个跟 checkbox 的 name 同名的属性来接收这些被选中的 checkbox 的 value 即可。
以下是实现的代码:
前台 HTML 代码:
- 003.Kafka基本概念
nweiren
hadoopkafka
Kafka基本概念:Topic、Partition、Message、Producer、Broker、Consumer。 Topic: 消息源(Message)的分类。 Partition: Topic物理上的分组,一
- Linux环境下安装JDK
roadrunners
jdklinux
1、准备工作
创建JDK的安装目录:
mkdir -p /usr/java/
下载JDK,找到适合自己系统的JDK版本进行下载:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
把JDK安装包下载到/usr/java/目录,然后进行解压:
tar -zxvf jre-7
- Linux忘记root密码的解决思路
tomcat_oracle
linux
1:使用同版本的linux启动系统,chroot到忘记密码的根分区passwd改密码 2:grub启动菜单中加入init=/bin/bash进入系统,不过这时挂载的是只读分区。根据系统的分区情况进一步判断. 3: grub启动菜单中加入 single以单用户进入系统. 4:用以上方法mount到根分区把/etc/passwd中的root密码去除 例如: ro
- 跨浏览器 HTML5 postMessage 方法以及 message 事件模拟实现
xueyou
jsonpjquery框架UIhtml5
postMessage 是 HTML5 新方法,它可以实现跨域窗口之间通讯。到目前为止,只有 IE8+, Firefox 3, Opera 9, Chrome 3和 Safari 4 支持,而本篇文章主要讲述 postMessage 方法与 message 事件跨浏览器实现。postMessage 方法 JSONP 技术不一样,前者是前端擅长跨域文档数据即时通讯,后者擅长针对跨域服务端数据通讯,p