- 使用 gdb 在汇编指令层面对程序注入、修改
shimly123456
汇编
gdb启动程序后,打开汇编界面layoutasm可以看到汇编代码,左边有每行指令的地址可以使用x/10x0xADDRESS这种命令去确认某个地址的指令使用如下命令把某个地址的指令改为0x90NOP气泡指令(gdb)set{unsignedchar[4]}0x401000={0x90,0x90,0x90,0x90}此时layoutasm显示的汇编指令还是我们修改前的指令,我们需要重新反汇编disas
- 科学家的故事100个——学习优秀品质
拾光散人
《科学家的故事100个》,截取了104个科学家最精彩的一个故事汇编成一本书。每个故事都是一位科学家的故事,孩子们可以通过阅读了解他们,可以培养孩子们热爱科学,从科学家们的身上学习不同的优秀的品质,我觉得值得去一读再读。
- 微机原理第七周笔记
遥控老爷
5.7汇编语言程序设计举例汇编源程序的设计步骤分析问题,建立数学模型确定最佳算法合理分配存储单元和寄存器绘制流程图编写程序调试程序程序基本结构模块化设计方法✓“自顶向下,逐步细化”结构化编码方法✓顺序、分支、循环三种基本结构顺序程序设计指令指针IP值线性增加,IP=IP+1条件程序设计IP值受标志位的影响而跳变,影响标志的指令CMP、TEST、JXX循环程序设计IP值受计数器CX中的值不为零而循环
- 笔记整理—内核!启动!—kernel部分(2)从汇编阶段到start_kernel与内核进程
TeYiToKu
X210嵌入式学习整理笔记汇编linux嵌入式硬件c语言单片机
kernel起始与ENTRY(stext),和uboot一样,都是从汇编阶段开始的,因为对于kernel而言,还没进行栈的维护,所以无法使用c语言。_HEAD定义了后面代码属于段名为.head.text的段。内核起始部分代码被解压代码调用,前面关于uboot的文章中有提到过(eg:zImage)。uboot启动是无条件的,只要代码的位置对,上电就工作,kernel启动由bootloader进行构建
- ARM64堆栈回溯
程序猿Ricky的日常干货
故障分析
基于AAPCS64栈帧的组织方式先看一个实例代码程序:#includeintcallee_func2(inta){intb=2;returna+b;}intcallee_func1(inta){intb=1,c;c=callee_func2(a);returnb+c;}intmain(void){intret;ret=callee_func1(0);return0;}对该程序进行编译以及反汇编操作
- 栈和帧指针使用方法
greedyhao
反汇编栈帧
这篇主要是围绕SPFPPCLR寄存器进行介绍,不理解的可以一起讨论下,我也是今天才开始学习这些汇编基础知识处理器寄存器被指定为R0、R1等。MOVE指令的源位于左侧,目标位于右侧。伪处理程序中的堆栈从高地址增长到低地址。因此,push会导致堆栈指针的递减。pop会导致堆栈指针的增量。寄存器sp(stackpointer)用于指向堆栈。寄存器fp(framepointer)用作帧指针。帧指针充当被调
- 佛历•《大般若波罗蜜多经》
观自在_演霞
《大般若经》佛教经典。全称《大般若波罗密多经》简称《般若经》。为宣说诸法皆空之义的大乘般若类经典的汇编。唐玄奘译,六百卷,包括般若系十六种经典(即十六会)。其中第二会(《二万五千颂般若》)第四会(《八千颂般若》)和第九会(《金刚般若》)为《般若经》的基本思想,大概成书于公元前一世纪左右,其他各会是在以后几个世纪中成书的。一般认为最早出现于南印度,以后传播到西、北印度,在贵霜王朝时广为流传。梵本多数
- MIPS架构——汇编代码转机器代码编译器 Matlab GUI
diaobing4810
matlab嵌入式
MIPS架构下的MCU,指令集包含R-Type、I-Type、J-Type三种,在数电课程设计时为了给MCU编写指令集,需要将汇编语言转化成机器代码,这里分享一下自己写的Matlab的GUI。主函数C2M1functionvarargout=C2M(varargin)2val=zeros(1,1);34%C2MMATLABcodeforC2M.fig5%C2M,byitself,createsan
- 汇编(二)
泰克2008
总线CPU芯片.png每一个CPU芯片都有许多管脚,这些管脚和总线相连,CPU通过总线跟外部器件进行交互总线:一根根导线的集合总线的分类地址总线数据总线控制总线总线:一根根导线的集合.png举个例子总线的分类.png地址总线它的宽度决定了CPU的寻址能力8086的地址总线宽度是20,所以寻址能力是1M(2^20)地址总线.png数据总线它的宽度决定了CPU的单次数据传送量,也就是数据传送速度808
- Linux 技巧汇编
极客柒
linux经验分享服务器
10个重要的Linuxps命令实战显示所有当前进程根据用户过滤进程通过cpu和内存使用来过滤进程通过进程名和PID过滤根据线程来过滤进程树形显示进程显示安全信息格式化输出root用户(真实的或有效的UID)创建的进程使用PS实时监控进程状态https://linux.cn/article-4743-1.htmlPython云服务器应用|Https应用|宝塔面板设置服务器进程定时重启https://
- 《论语》心得
85Bo
《论语》是一部中国春秋时期语录体散文集,以记录春秋时期思想家孔子言行为主及其弟子的言论汇编,较为集中地反映了孔子的思想,是儒家学派的经典著作之一,中国现传扬并学习的古代著作之一。《论语》,圣人之学,载道之学,君子治天下之学也。北宋政治家赵普更有“半部《论语》治天下”之说。它的语言言简意赅,意味深长,所记孔子循循善诱的教诲之言,或是与人应答之言,或是给予启发,亦或是相互论辩,富于变化,给人深思。尤其
- 【RISC-V设计-13】- RISC-V处理器设计K0A之指令测试
kearn.chen
RISC-V设计专题risc-v
【RISC-V设计-13】-RISC-V处理器设计K0A之指令测试文章目录【RISC-V设计-13】-RISC-V处理器设计K0A之指令测试1.简介2.验证用例3.指令代码4.链接脚本5.编译脚本6.仿真结果6.1复位结束6.2运行成功6.3终端打印7.总结1.简介借助上一篇文章所提及的验证环境,在本篇文章中,将会阐述如何增添一个用例来验证指令集,以及怎样运用编译器编译汇编代码,并生成二进制的Bi
- 【软件逆向】第32课,软件逆向安全工程师之(七)基址变址相对寻址,每天5分钟学习逆向吧!
Karle_
软件逆向学习安全学习OD工具软件逆向hook
基址变址相对寻址(Base-IndexedRelativeAddressing)是x86汇编语言中的一种寻址模式,它结合了基址寄存器、索引寄存器和偏移量来访问内存中的数据。这种寻址模式允许程序员以非常灵活的方式访问数组、结构体和其他复杂数据结构中的元素。基址变址相对寻址的特点:基址寄存器:基址寄存器(如ebp或esp)包含一个内存地址,作为数据访问的起点。索引寄存器:索引寄存器(如ebx、esi或
- 汇编语言题库答案与解析2024版
木人舟
网络汇编经验分享
汇编语言题库,答案与解析作者——这还用说?前言临时抱佛脚专用,拿着它速通汇编语言吧!,还有就是,答案与解析都是基于websearch的GenAL生成的,所以在计算题上会错误比较多,这个就自己想想办法吧,但是在概念与需要记忆的题上效果很好,自己作为参考吧一单选题第一章PC机的最小信息单位是()。A.bitB.字节C.字长D.字一个CPU的寻址能力是8KB,那么它的地址总线的宽度为()位。A.8B.3
- aarch64架构汇编速成
reL1fe
架构arm
aarch64架构汇编速成,用于逆向aarch64代码学习资料:https://github.com/nzcv/note重要寄存器x0~x7:传递子程序的参数和返回值,一般x0保存返回值x29:帧指针寄存器(FP),用于连接栈帧,使用时必须保存。(类似8064架构下的ebp)x30:链接寄存器(LR),用于保存子程序的返回地址x31:堆栈指针寄存器(SP),用于指向每个函数的栈顶。重要指令ADD指
- 编译与反编译 GCC 常用指令
烹小鲜啊
编译gcc/gdb编译调试
从源代码转变为可执行代码的过程,具体可分为4个过程,分别为预处理(Preprocessing)、编译(Compilation)、汇编(Assembly)链接(Linking)一.GCC常用编译命令选项@localhosttrain]$gcc--helpUsage:gcc[options]file...Options:-pass-exit-codesExitwithhighesterrorcodef
- callx0 和 call 的区别
小蘑菇二号
stm32单片机嵌入式硬件
在讨论callx0和call的区别之前,我们需要明确这些指令是在哪个处理器架构和汇编语言环境中使用的。这里我们将以XTensa架构为例,因为XTensa架构是嵌入式系统中常见的一种RISC(ReducedInstructionSetComputer,精简指令集计算机)架构,常用于物联网(IoT)设备,如Espressif的ESP系列芯片。XTensa汇编语言中的call和callx0指令1.cal
- XTensa架构的处理器上--汇编实现一个1秒定时器
小蘑菇二号
单片机stm32嵌入式硬件
要在XTensa架构的处理器上实现一个1秒定时器,你可以使用定时器中断来实现。XTensa架构的处理器通常用于嵌入式系统,例如ESP32等。下面是一个基于XTensa架构的1秒定时器实现的例子。XTensa架构定时器实现假设你的XTensa处理器的时钟频率为1GHz(即每秒10亿个时钟周期),那么你需要配置一个定时器中断,使其每10亿个时钟周期触发一次中断。步骤1:初始化定时器选择定时器:XTen
- 活好每一个当下——悟《兰亭集序》
温雯二雅
作者:甘佳怡“是日,天朗气清,惠风和畅”,王羲之与41位亲朋志士会与会稽山阴之兰亭,行修禊之礼,饮酒赋诗,汇编诸人诗作,自为其序,这就是著名的《兰亭集序》。本享一觞一咏之乐,王羲之正因这美好之事而引发思考,静悟人生而生痛生悲。痛美好的情感不能永恒,痛美好的事物不能永在,痛美好的生命不能永存。有人把记忆比作海滩上的足迹,把时间比作海浪,无论当时的记忆多么清晰,多么厚重,终究敌不过时间的冲刷,最终会“
- 陈波:只要学会这一招!3秒你就可以成为顶级的文案高手?
陈波的频道
点击左上角【陈波】关注每天领取一份干货文章本文共644字,阅读全文约3分钟今天来聊聊文案的这个话题有没有什么办法可以让你瞬间成为顶级的文案高手的捷径呢?答案是有!今天,我就简单的说一下首先我把它叫做“汇编技术之框架改编法”什么意思呢?简单点理解就是提取有效框架然后在内容上加以汇总改编具体的汇编有那些形式呢?比如说内容变化人物,性格,环境,时间,环境。角度,事物的演变等多重形式我举个例子送礼,就送脑
- Cortex-M3(2) 汇编启动文件分析
keven-wang
Cortex-M3Cortex-M3启动文件STM32F429汇编
1、汇编文件理解与分析参考:https://blog.csdn.net/cacti_one/article/details/72811281由于启动代码是用汇编语言写的,并且启动代码中有大量的伪指令(Directives),所以,在正式介绍启动代码前,先来介绍下相关的伪指令。一、伪指令(Directives)由于MDK中的汇编器(汇编编译器)用的是ARM的汇编器,所以可以从ARM官网下载汇编器的用
- RISC-V汇编实现矩阵阶乘
wave_sky
risc-v汇编
1)源代码longlongfact(longlongn){if(n=0,gotoL1addix10,x0,1//return1addisp,sp,16//pop2itemsoffstackjalrx0,0(x1)//returntocallerL1:addix10,x10,-1//n>=1:argumentgets(n-1)jalx1,fact//callfactwith(n-1)ldx6,0(s
- Scott Brinker:开发者 vs.非开发者是错误的划分
marteker
科技
开发者vs.非开发者是错误的划分我从小就开始编程,为BBS编写多人游戏——这是我们今天所知道的网络和社交媒体的先驱。那是在80年代末90年代初,我主要用一种叫做C的语言写东西,偶尔用8086汇编语言写一些高性能的组件。对于那些不是软件开发人员的人,或者对于那些从小就认为Java是一种低级语言的年轻开发人员来说,汇编代码是这样的:汇编语言代码示例你实际上是将单个指令拼写给CPU,将字节从内存移动到寄
- 【软件逆向】第27课,软件逆向安全工程师之(二)寄存器寻址,每天5分钟学习逆向吧!
Karle_
软件逆向学习安全学习
寄存器寻址是汇编语言中的一种寻址方式,在这种方式中,操作数位于CPU的寄存器中。寄存器是CPU内部的高速存储位置,用于快速访问数据。以下是关于寄存器寻址的详细信息:寄存器寻址的特点:操作数在寄存器中:数据直接存储在寄存器中,而不是内存地址或立即数。快速访问:由于寄存器位于CPU内部,因此访问速度远快于内存。指令简短:使用寄存器寻址的指令通常较短,因为不需要指定内存地址。识别寄存器寻址:查看指令格式
- 手把手教你从开发进度划分测试
Jarrett_Zheng
单元测试压力测试
一.单元测试(UnitTesting)单元测试:软件单元测试的对象是可独立编译或汇编的程序模块。测试的对象是软件测试中的最小单位:模块。测试阶段:编码后或者编码前(TDD:测试驱动开发)注:一般编码后测试测试对象:最小模块测试人员:测试工程师或开发人员测试依据:代码和注释+详细文档测试方法:白盒测试测试内容:模块接口测试、局部数据结构测试、独立执行路径测试、错误处理路径测试、边界条件测试注释:1、
- 哈工大操作系统的笔记
江南弄
笔记linux
操作系统笔记L1.什么是操作系统?引入:如何在屏幕上打印出"hello,world"呢?(1)是计算机在底层通过一些汇编指令,cpu将"hello,world"在0x68的内存中存储,然后通过汇编指令将0x68写入777显存地址,然后到图形控制器,就可以输出了。如下图:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ogx699C6-1684932615725)(D:
- Cortex-M3寄存器组、汇编语言与C语言的接口介绍
Chenxr32
MCUc语言linuxc++
学uCOS的任务切换时涉及到汇编代码。为了能理解汇编代码,我在网上了解了Cortex-M3寄存器组、C与汇编的接口的知识,在这里分享给大家。先来介绍Cortex-M3寄存器组:Cortex-M3拥有16个通用寄存器R0-R15。R0-R12都是32位通用寄存器,用于数据操作。R13是堆栈指针。在CM3处理器内核中共有两个堆栈指针,于是也就支持两个堆栈。当引用R13(SP)时,你引用到的是当前正在使
- STM32中断三步曲教你弄会中断设置以及中断优先级设置
呼啦啦的爱
中断作为stm32中必不可少的一个功能,其重要性是不言而喻的因此把中断学习好是根本。所以今天就来好好啃一下中断配置的知识,俗话说:磨刀不误砍柴工。问题是什么呢?项目中我用到了一个触摸键盘TTP229,结果在测试键盘时,不能够输入密码?最终,调试出bug就是由于中断优先级的影响。本项目使用到的是STM32F030C8型号的MCU,我们可以从官方下载到的标准库文件中的启动汇编文件中,查看到本型号单片机
- 新手学习单片机最常见的六大误区,你进坑了吗?
无际单片机编程
单片机自动化嵌入式stm32
一、去背寄存器千万不要去记寄存器,我做开发这么多年了,一个寄存器都记不住。寄存器一般是我们要使用单片机外设的时候会去配置。一流的方法是直接参考别人的配置程序。二流的方法是看数据手册,最傻雕的做法就是去背寄存器。二、去背汇编指令除了一些在校大学生应付学校考试要背以外,我到现在为止,做过几十个项目都是用c语言,没用汇编做过一个项目。很多人说还是有必要学,学了对单片机理解地透彻一点。我想说的是你又不制造
- 汇编之条件跳转指令(JCC)指令和无条件指令
TIF星空
汇编经验分享
文章目录JCC指令详细说明和示例无条件指令详细说明和示例条件跳转指令和无条件跳转指令的共同点和显著的不同点详细对比相同点不同点示例对比条件跳转指令无条件跳转指令总结JCC指令在汇编语言中,条件跳转指令(JCC指令)用于根据特定条件跳转到代码的其他部分。这些条件通常由前面的比较或测试指令设置的标志位决定。以下是常见的JCC指令。指令名称条件描述示例JE/JZ等于/零如果零标志(ZF)置位,则跳转JE
- java短路运算符和逻辑运算符的区别
3213213333332132
java基础
/*
* 逻辑运算符——不论是什么条件都要执行左右两边代码
* 短路运算符——我认为在底层就是利用物理电路的“并联”和“串联”实现的
* 原理很简单,并联电路代表短路或(||),串联电路代表短路与(&&)。
*
* 并联电路两个开关只要有一个开关闭合,电路就会通。
* 类似于短路或(||),只要有其中一个为true(开关闭合)是
- Java异常那些不得不说的事
白糖_
javaexception
一、在finally块中做数据回收操作
比如数据库连接都是很宝贵的,所以最好在finally中关闭连接。
JDBCAgent jdbc = new JDBCAgent();
try{
jdbc.excute("select * from ctp_log");
}catch(SQLException e){
...
}finally{
jdbc.close();
- utf-8与utf-8(无BOM)的区别
dcj3sjt126com
PHP
BOM——Byte Order Mark,就是字节序标记 在UCS 编码中有一个叫做"ZERO WIDTH NO-BREAK SPACE"的字符,它的编码是FEFF。而FFFE在UCS中是不存在的字符,所以不应该出现在实际传输中。UCS规范建议我们在传输字节流前,先传输 字符"ZERO WIDTH NO-BREAK SPACE"。这样如
- JAVA Annotation之定义篇
周凡杨
java注解annotation入门注释
Annotation: 译为注释或注解
An annotation, in the Java computer programming language, is a form of syntactic metadata that can be added to Java source code. Classes, methods, variables, pa
- tomcat的多域名、虚拟主机配置
g21121
tomcat
众所周知apache可以配置多域名和虚拟主机,而且配置起来比较简单,但是项目用到的是tomcat,配来配去总是不成功。查了些资料才总算可以,下面就跟大家分享下经验。
很多朋友搜索的内容基本是告诉我们这么配置:
在Engine标签下增面积Host标签,如下:
<Host name="www.site1.com" appBase="webapps"
- Linux SSH 错误解析(Capistrano 的cap 访问错误 Permission )
510888780
linuxcapistrano
1.ssh -v
[email protected] 出现
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
错误
运行状况如下:
OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013
debug1: Reading configuratio
- log4j的用法
Harry642
javalog4j
一、前言: log4j 是一个开放源码项目,是广泛使用的以Java编写的日志记录包。由于log4j出色的表现, 当时在log4j完成时,log4j开发组织曾建议sun在jdk1.4中用log4j取代jdk1.4 的日志工具类,但当时jdk1.4已接近完成,所以sun拒绝使用log4j,当在java开发中
- mysql、sqlserver、oracle分页,java分页统一接口实现
aijuans
oraclejave
定义:pageStart 起始页,pageEnd 终止页,pageSize页面容量
oracle分页:
select * from ( select mytable.*,rownum num from (实际传的SQL) where rownum<=pageEnd) where num>=pageStart
sqlServer分页:
 
- Hessian 简单例子
antlove
javaWebservicehessian
hello.hessian.MyCar.java
package hessian.pojo;
import java.io.Serializable;
public class MyCar implements Serializable {
private static final long serialVersionUID = 473690540190845543
- 数据库对象的同义词和序列
百合不是茶
sql序列同义词ORACLE权限
回顾简单的数据库权限等命令;
解锁用户和锁定用户
alter user scott account lock/unlock;
//system下查看系统中的用户
select * dba_users;
//创建用户名和密码
create user wj identified by wj;
identified by
//授予连接权和建表权
grant connect to
- 使用Powermock和mockito测试静态方法
bijian1013
持续集成单元测试mockitoPowermock
实例:
package com.bijian.study;
import static org.junit.Assert.assertEquals;
import java.io.IOException;
import org.junit.Before;
import org.junit.Test;
import or
- 精通Oracle10编程SQL(6)访问ORACLE
bijian1013
oracle数据库plsql
/*
*访问ORACLE
*/
--检索单行数据
--使用标量变量接收数据
DECLARE
v_ename emp.ename%TYPE;
v_sal emp.sal%TYPE;
BEGIN
select ename,sal into v_ename,v_sal
from emp where empno=&no;
dbms_output.pu
- 【Nginx四】Nginx作为HTTP负载均衡服务器
bit1129
nginx
Nginx的另一个常用的功能是作为负载均衡服务器。一个典型的web应用系统,通过负载均衡服务器,可以使得应用有多台后端服务器来响应客户端的请求。一个应用配置多台后端服务器,可以带来很多好处:
负载均衡的好处
增加可用资源
增加吞吐量
加快响应速度,降低延时
出错的重试验机制
Nginx主要支持三种均衡算法:
round-robin
l
- jquery-validation备忘
白糖_
jquerycssF#Firebug
留点学习jquery validation总结的代码:
function checkForm(){
validator = $("#commentForm").validate({// #formId为需要进行验证的表单ID
errorElement :"span",// 使用"div"标签标记错误, 默认:&
- solr限制admin界面访问(端口限制和http授权限制)
ronin47
限定Ip访问
solr的管理界面可以帮助我们做很多事情,但是把solr程序放到公网之后就要限制对admin的访问了。
可以通过tomcat的http基本授权来做限制,也可以通过iptables防火墙来限制。
我们先看如何通过tomcat配置http授权限制。
第一步: 在tomcat的conf/tomcat-users.xml文件中添加管理用户,比如:
<userusername="ad
- 多线程-用JAVA写一个多线程程序,写四个线程,其中二个对一个变量加1,另外二个对一个变量减1
bylijinnan
java多线程
public class IncDecThread {
private int j=10;
/*
* 题目:用JAVA写一个多线程程序,写四个线程,其中二个对一个变量加1,另外二个对一个变量减1
* 两个问题:
* 1、线程同步--synchronized
* 2、线程之间如何共享同一个j变量--内部类
*/
public static
- 买房历程
cfyme
2015-06-21: 万科未来城,看房子
2015-06-26: 办理贷款手续,贷款73万,贷款利率5.65=5.3675
2015-06-27: 房子首付,签完合同
2015-06-28,央行宣布降息 0.25,就2天的时间差啊,没赶上。
首付,老婆找他的小姐妹接了5万,另外几个朋友借了1-
- [军事与科技]制造大型太空战舰的前奏
comsci
制造
天气热了........空调和电扇要准备好..........
最近,世界形势日趋复杂化,战争的阴影开始覆盖全世界..........
所以,我们不得不关
- dateformat
dai_lm
DateFormat
"Symbol Meaning Presentation Ex."
"------ ------- ------------ ----"
"G era designator (Text) AD"
"y year
- Hadoop如何实现关联计算
datamachine
mapreducehadoop关联计算
选择Hadoop,低成本和高扩展性是主要原因,但但它的开发效率实在无法让人满意。
以关联计算为例。
假设:HDFS上有2个文件,分别是客户信息和订单信息,customerID是它们之间的关联字段。如何进行关联计算,以便将客户名称添加到订单列表中?
&nbs
- 用户模型中修改用户信息时,密码是如何处理的
dcj3sjt126com
yii
当我添加或修改用户记录的时候对于处理确认密码我遇到了一些麻烦,所有我想分享一下我是怎么处理的。
场景是使用的基本的那些(系统自带),你需要有一个数据表(user)并且表中有一个密码字段(password),它使用 sha1、md5或其他加密方式加密用户密码。
面是它的工作流程: 当创建用户的时候密码需要加密并且保存,但当修改用户记录时如果使用同样的场景我们最终就会把用户加密过的密码再次加密,这
- 中文 iOS/Mac 开发博客列表
dcj3sjt126com
Blog
本博客列表会不断更新维护,如果有推荐的博客,请到此处提交博客信息。
本博客列表涉及的文章内容支持 定制化Google搜索,特别感谢 JeOam 提供并帮助更新。
本博客列表也提供同步更新的OPML文件(下载OPML文件),可供导入到例如feedly等第三方定阅工具中,特别感谢 lcepy 提供自动转换脚本。这里有导入教程。
- js去除空格,去除左右两端的空格
蕃薯耀
去除左右两端的空格js去掉所有空格js去除空格
js去除空格,去除左右两端的空格
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>&g
- SpringMVC4零配置--web.xml
hanqunfeng
springmvc4
servlet3.0+规范后,允许servlet,filter,listener不必声明在web.xml中,而是以硬编码的方式存在,实现容器的零配置。
ServletContainerInitializer:启动容器时负责加载相关配置
package javax.servlet;
import java.util.Set;
public interface ServletContainer
- 《开源框架那些事儿21》:巧借力与借巧力
j2eetop
框架UI
同样做前端UI,为什么有人花了一点力气,就可以做好?而有的人费尽全力,仍然错误百出?我们可以先看看几个故事。
故事1:巧借力,乌鸦也可以吃核桃
有一个盛产核桃的村子,每年秋末冬初,成群的乌鸦总会来到这里,到果园里捡拾那些被果农们遗落的核桃。
核桃仁虽然美味,但是外壳那么坚硬,乌鸦怎么才能吃到呢?原来乌鸦先把核桃叼起,然后飞到高高的树枝上,再将核桃摔下去,核桃落到坚硬的地面上,被撞破了,于是,
- JQuery EasyUI 验证扩展
可怜的猫
jqueryeasyui验证
最近项目中用到了前端框架-- EasyUI,在做校验的时候会涉及到很多需要自定义的内容,现把常用的验证方式总结出来,留待后用。
以下内容只需要在公用js中添加即可。
使用类似于如下:
<input class="easyui-textbox" name="mobile" id="mobile&
- 架构师之httpurlconnection----------读取和发送(流读取效率通用类)
nannan408
1.前言.
如题.
2.代码.
/*
* Copyright (c) 2015, S.F. Express Inc. All rights reserved.
*/
package com.test.test.test.send;
import java.io.IOException;
import java.io.InputStream
- Jquery性能优化
r361251
JavaScriptjquery
一、注意定义jQuery变量的时候添加var关键字
这个不仅仅是jQuery,所有javascript开发过程中,都需要注意,请一定不要定义成如下:
$loading = $('#loading'); //这个是全局定义,不知道哪里位置倒霉引用了相同的变量名,就会郁闷至死的
二、请使用一个var来定义变量
如果你使用多个变量的话,请如下方式定义:
. 代码如下:
var page
- 在eclipse项目中使用maven管理依赖
tjj006
eclipsemaven
概览:
如何导入maven项目至eclipse中
建立自有Maven Java类库服务器
建立符合maven代码库标准的自定义类库
Maven在管理Java类库方面有巨大的优势,像白衣所说就是非常“环保”。
我们平时用IDE开发都是把所需要的类库一股脑的全丢到项目目录下,然后全部添加到ide的构建路径中,如果用了SVN/CVS,这样会很容易就 把
- 中国天气网省市级联页面
x125858805
级联
1、页面及级联js
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
&l