ognl 1. 什么是ognl 对象图导航语言 Struts内置的表达式语言,它比EL要强大很多. ------------------ 2. 单独学习ognl * EL它操作的数据来自于:四大域:pagecontext.request.session.application * ognl操作的数据来自于:ognl上下文对象,以及root对象 OgnlContext它是一个Map,你不用对它有过多了解! OGNL表达式以“#”开头! OGNL表达式几乎与EL相同! ---------------…
下载 1. 下载是一种响应方式 正常的响应:响应正文是html:response.getWriter().print("html"); 下载的响应: 1.一个流:字节数据:response.getOutputStream().write(文件的内容,即一些字节数据); 2.response.setContentType("image/jpeg"); 3. response.setHeader("Content-disposition", &quo…
上传 1. 上传对表单的要求 * method=post * enctype=multipart/form-data 2. 上传对servlet要求 * getParameter()不能再使用! ---------------------------------- Struts使用名为fileupload的拦截器完成上传. 1. 拦截器首先查看表单是否为multipart/form-data2. 如果为multipart/form-data,那么拦截器会把file字段的数据封装到Action的三…
此系列博文基于同一个项目已上传至github 传送门 JavaWeb_(Struts2框架)Struts创建Action的三种方式 传送门 JavaWeb_(Struts2框架)struts.xml核心配置.动态方法调用.结果集的处理 传送门 JavaWeb_(Struts2框架)Log4j的配置以及解决中文乱码 传送门 JavaWeb_(Struts2框架)参数传递之接收参数与传递参数 传送门 JavaWeb_(Struts2框架)Ognl小案例查询帖子 传送门 JavaWeb_(Struts…
1. OGNL是Object Graphic Navigation Language(对象图导航语言)的缩写 * 所谓对象图,即以任意一个对象为根,通过OGNL可以访问与这个对象关联的其它对象 * 通过它简单一致的表达式语法,可以存取对象的任意属性,调用对象的方法,遍历整个对象的结构图,实现字段类型转化等功能.它使用相同的表达式去存取对象的属性 2. Struts2框架使用OGNL作为默认的表达式语言(OGNL可以在struts2框架中使用,也可以单独使用)表达式语言用于获取jsp页面数据 *…
20155303狄惟佳预备作业三Linux学习笔记 初次接触Ubuntu系统以及Linux内核,了解了其产生的历史,从感性来讲,深深吸引我的是其中蕴含的珍贵的开源精神,以及Stallman等人对"人人为我,我为人人"软件世界的追求.Ubuntu产生于一个软件逐渐脱离硬件成为独立产业的时代,很多软件逐渐只提供二进制代码而不提供源代码.出于工作需要,Stallman决心创建一套完全自由的操作系统,从而创造自由的软件世界.经过全世界有志之士的共同努力,Linux应运而生,并不断被修改完善.开…
<Linux内核分析>第三周学习笔记 构造一个简单的Linux系统MenuOS 郭垚 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一.Linux内核源代码简介 1.1 Linux内核源代码 arch:支持不同的CPU的源代码,其中的关键目录包括:Documentation.drivers.firewall.fs.include等 documentation:文档目录 fs…
linux内核分析第三周学习笔记 标签(空格分隔): 20135328陈都 陈都 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 # 构造一个简单的Linux系统MenuOS 上周回顾: 计算机三大法宝 存储程序计算机 函数调用堆栈 中断 操作系统两把宝剑 中断上下文的切换 进程上下文的切换 Linux内核源码简介 我们关注的部分 arch/x86目录下的代码 init/main.c中s…
<Linux命令.编辑器与shell编程>第三版 学习笔记---001 Linux命令.编辑器与shell编程 Shell准备 1.识别Shell类型 echo  $0 echo $BASH echo $SHELL 上边三个命令结果都是: /bin/bash 2.终端常用操作 a.删除单个字符 c+h或退格键 b.删除单个单词 c+w c.删除单个行 c+u d.重复编辑命令行 arrowUp或arrowDown e.中断命令执行c+C 3.切换为root用户 a.su命令后,输入root密码…
上篇 Struts2框架的基本使用(二)介绍了Action和result的相关配置操作,本篇接着介绍剩下的异常处理机制和Convention插件的使用.下篇文章介绍的是Struts2框架中标签库的使用情况. 一.Struts的异常处理机制      每一个优秀的MVC框架都有一套完善的异常处理机制.我们不希望在Action中try..catch捕获异常,这样整个Action中耦合了大量的异常处理代码,一旦以后需要修改异常处理的代码就需要在Action中做大量变动,这是我们不愿意看到的.我们可以看…
类和对象: 我们经常会对打印一个对象来得到对象的某些信息. class pair:     def __init__(self,x,y):         self.x=x         self.y=y if __name__=='__main__':     p=pair(3,4)     print p E:\python2.7.11\python.exe E:/py_prj/python_cookbook/chapter8.py <__main__.pair instance at 0…
昨天学的超链接,今天深入学习了下,发现了更多的知识点,而且关于初始新建网页时,由于是初学者,所以还是纯手写代码~ <html> <head> <title>超链接</title> <meta http-equiv = "content-type" content = "text/html;charset = utf-8"> <script type = "text/javascript&qu…
数据结构 假设有M个元素的列表,需要从中分解出N个对象,N<M,这会导致分解的值过多的异常.如下: record=['zhf','zhf@163.com','775-555-1212','847-555-1212'] name,email,=record E:\python2.7.11\python.exe E:/py_prj/python_cookbook.py Traceback (most recent call last): File "E:/py_prj/python_cookb…
在子类中调用父类的方法,可以下面的A.spam(self)的方法. class A(object):     def spam(self):         print 'A.spam' class B(A):     def spam(self):         print 'B.spam'         A.spam(self) if __name__=='__main__':     b=B()     b.spam() 但是上面的代码有一个问题,如果B的父类变更了,而且有很多子类的父…
创建对象类型的 1,静态工厂方法代替构造器 静态工厂方法有名称,不容易混乱他的作用 不必再每次调用他的时候创建实例,创建实例的代价是高的,可以重复利用缓存的对象 静态工厂甚至能返回子类对象,例如在接口上(Java8 )的静态方法上,返回一个直接可以用的类 根据参数值,决定不同的返回类型(貌似和上面有点像 返回的类型,可以在写静态工厂时候不存在(貌似用在rpc方面) 缺点 如果不包含公有或包含的构造器,就不能让子类实例化 javadoc不能很好解释 ps vauleOf,转换方法 instance…
25 | 更多的测试手法 在本篇文章,我会继续为你讲解更多更高级的测试方法.这会涉及testing包中更多的 API.go test命令支持的,更多标记更加复杂的测试结果,以及测试覆盖度分析等等. 前导内容:-cpu 的功能 续接前文.我在前面提到了go test命令的标记-cpu,它是用来设置测试执行最大 P 数量的列表的. 复习一下,我在讲 go 语句的时候说过,这里的 P 是 processor 的缩写,每个 processor 都是一个可以承载若干个 G,且能够使这些 G 适时地与 M…
Undefined类型 该类型只有一个值,即undefined. 对未初始化的变量和未定义的变量,用typeof检测,都会返回'undefined' Null类型 该类型只有一个值,null.并且从逻辑角度看,null值表示一个空对象指针,所以typeof null =='object'. 只要意在保存对象的变量还没有真正的保存对象,就应该明确的让该变量保存null值. var a = null; if (a) { a.again = 1; } else { a.again = 2; } //这…
一. CommonJS 规范 1.1nodejs 与 commonjs 之间的关系: 1)nodejs是一种服务器语言. a)开启服务的能力 b)文件读写的能力 服务器:就是一台安装了服务软件 2)commonjs是nodejs的规范. 1.2commonjs规范的意义: 由于nodejs是用javascript来写的,javascript遵守ECMAScript规范,而ECMAScript这个规范它(如果作为一门后台语言的规范)是不完整的,因为它内容仅仅只是规范了javascript的:词法.…
3.5.6.Math对象(了解) 无需创建,直接Math.方法来进行使用.(内置对象) Math方法 random() 随机生成0~1数字 round(x) 对X进行四舍五入 3.5.7.RegExp对象(重点) * var reg = new RegExp("表达式"); (开发中基本不用) * var reg = /^表达式$/ 直接量(开发中常用) 直接量中存在边界,即^代表开始,$代表结束 /^表达式$/    只要有不符合正则的字符存在,即为false.全部符合为true(检…
#信息的表示和处理 三种重要的数字表示 1. 无符号数编码: 基于传统的二进制表示法,表示大于或者等于零的数字. 2. 补码编码: 表示有符号数整数的最常见的方式,有符号数就是只可 以为正或者为负的数. 3. 浮点数编码: 表示实数的科学计数法的以二为基数的版本. 进制转换 太过于熟悉,此处就不详细说明,注意当转换的起始值和终止值 均不为二进制时,将二进制作为中间过渡将会容易很多. 例如:十六进制→八进制 转换为 十六进制→二进制→八进制 进制运算 进行n进制运算(加减乘除),基数则为n. 例如…
第三章:基本的bash shell命令 bash程序使用命令行参数来修改所启动shell的类型 参数 描述 -c string 从string中读取命令并处理他们 -r 启动限制性shell,限制用户在默认目录下活动 -i 启动交互性shell,允许用户输入 -s 从标准输入读取命令 环境变量PS1.PS2 PS1:控制默认命令行提示符格式 PS2:控制后续命令行提示符格式   bash shell提示符字符串中使用的特殊字符 字符 描述 \a 报警字符 \d “日 月 年”格式显示的日期 \e…
__get__以及__set__:假设T是一个类,t是他的实例,d是它的一个描述器属性.读取属性的时候T.d返回的是d.__get__(None,T),t.d返回的是d.__get__(t,T).说法比较绕,我们来看一个实例: class Descriptor(object):     def __get__(self, instance, owner):         return 'get',self,instance,owner class T(object):     d=Descri…
第三章  进程管理 姓名:王玮怡  学号:20135116 一.进程 1.进程的含义 进程是处于执行期的程序以及相关资源的总称,程序本身并不是进程,实际上就是正在执行的代码的实时结果.Linux内核通常把进程也叫“任务”. 2.线程的含义 执行线程简称线程,是在进程中互动的对象.内核调度的对象是线程而不是进程.Linux系统不区分线程和进程,线程只是一种特殊的进程. 3.进程的执行过程 (1)clone()调用fork(),通过复制一个现有进程来创建一个全新的进程,进程开始存活.其中调用fork…
一.进程 1.进程就是处于执行期的程序(目标码存放在某种存储介质上).但进程并不仅仅局限于一段可执行程序代码,通常进程还要包含其他资源.执行线程,简称线程(thread),是在进程中活动的对象. 2.每个线程都拥有一个独立的程序计数器.进程技和一组进程寄存器. 3.内核调度的对象是线程,而不是进程.对Linux 而言,线程是一种特殊的进程. 4.在现代操作系统中,进程提供两种虚拟机制:虚拟处理器和虚拟内存. 5.程序本身并不是进程,进程是处于执行期的程序以及相关的资源的总称. 6.Linux 系…
第三章 进程管理 进程是Unix操作系统抽象概念中最基本的一种. 进程管理是所有操作系统的心脏所在. 一.进程 1. 进程是处于执行期的程序.除了可执行程序代码,还包括打开的文件.挂起的信号.内核内部数据.一个或者多个执行线程等多种资源 线程是在进程活动中的对象:内核调度的对象是线程而不是进程 在Linux系统中,并不区分线程和进程 可能存在两个或者多个进程执行的是同一个程序:甚至N个进程共享打开的文件.地址空间之类的资源 2. 线程:是进程中活动的对象.每个线程都有一个独立的程序计数器,进程栈…
第三章 进程管理 一.进程 1.进程 进程就是处于执行期的程序. 进程就是正在执行的程序代码的实时结果. 进程是处于执行期的程序以及相关的资源的总称. 进程包括代码段和其他资源. 2.线程 执行线程,简称线程,是在进程中活动的对象. 内核调度的对象是线程而不是进程. Linux对线程并不特别区分,视其为特殊的进程. 3.虚拟处理器和虚拟内存 在现代操作系统中,进程提供两种虚拟机制:虚拟处理器和虚拟内存. 包含在同一个进程中的线程可以共享虚拟内存,但是每个都拥有各自的虚拟处理器. 4.几个函数 f…
姬梦馨 原创博客 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 常用调试参数 r(run) 开始运行程序 c(continue) 继续运行一直到断点停止 b(break) 设置程序断点 l(list) 显示当前行后面的源程序 bt (backtrace) 查看堆栈信息 info 查看各类gdb信息以及环境信息,比如:info break可以查看断点信息 p(print) 打印出变量值;如 p var,会把va…
第三周 构造一个简单的Linux系统MenuOS 计算机三个法宝: 1.存储程序计算机 2.函数调用堆栈 3.中断 操作系统两把宝剑: 1.中断上下文的切换:保存现场和恢复现场 2.进程上下文的切换 一.阅读Linux内核代码 本周我们要学习如何阅读Linux内核源代码,首先打开Lstest Stable Kernel:linux-3.18.6 arch/目录在Linux内核中占有相当庞大的代码量,因为Linux支持很多CPU,这个arch/x86目录下的代码是我们重要关注的代码 根目录中比较关…
20135313吴子怡.北京电子科技学院 chapter1 知识点梳理 一.Linux内核源代码简介 (视频中对目录下的文件进行了简介,记录如下) arch目录 占有相当庞大的空间 arch/x86目录下的代码是需要重点关注的. arch下其他目录可以删掉. init目录 内核启动相关的基本代码基本都在init目录下. main.c 文件中有一个start_kernel函数,初始化Linux内核的起点,这个函数相当于普通c程序的main函数. kernel目录 Linux内核的核心代码在kern…
null.NaN.undefined三者的区别是什么? 在初次接触到JavaScript的时候,傻傻的分不清null.NaN.undefined三者到底区别何在,在实际的项目开发中也因为这个问题而困惑久矣.针对这个问题,我特意查找了多方资料,在笔记本上做了详细的分析记录,但是由于纸质资料不便于携带.不便于后期查看.所以特此将笔记搬至博客园上,如有表述不正确的地方,希望大家能够给予意见,谢谢! 1.数据类型 ECMAScript中定义了5中简单的数据类型(也称为基本数据类型):Undefined.…