- 【ARMv7-A】——栈帧
tyustli
ARM体系结构与编程arm栈帧满减栈fulldescendingFD
ARM栈帧本系列均以imx6ul的cortex-A7(armv7-a)为例在ARM中,通常为满减栈(FullDescendingFD),也就是说,堆栈指针指向堆栈内存中最后一个填充的位置,并且随着每个新数据项被压入堆栈而递减。栈的本质要理解栈的本质,首先得明白,程序执行是怎么执行的?程序执行其实就是对应一个又一个状态机,在A状态有对应的内核寄存器,在B状态也有对应的内核寄存器值。A状态切换到B状态
- IMX6ULL SD卡启动uboot+kernel+rootfs
xingpeng_89
IMX6ULLlinux服务器
目录1.背景说明2.SD卡启动2.1准备条件2.2对SD卡分区格式化2.3制作sd卡镜像3.效果测试1.背景说明网络上绝大数教程,教大家把uboot烧录到SD卡,然后uboot启动后,通过TFTP下载kernel和设备树,然后通过nfs挂载文件系统。很少有SD卡完整启动ubootkernel和rootfs,这里整理了一下,分享给大家。2.SD卡启动2.1准备条件①u-boot-dtb.imx②zI
- IMX6ULL开发板通过网线直连PC机进行TFTP、NFS进行网络调试
Terry.Z_1009
Linuxlinuxubuntu
硬件平台:正点原子imx6ull阿尔法开发板应用背景:1、首先我的笔记本是连得无线网,即处于联网状态。2、办公桌周围没有网口,路由器又比较远,所以不好使用网线连接路由器,再连接开发板进行网络下载。所以,使用PC与开发板通过网线直连,在PC机上创建网桥进行桥接。一、PC端win7系统设置:如下图:此时会出现网桥然后基于正点原子的驱动教程,进行NFS下载,或者TFTP下载2022/04/11以上方法,
- RTMP_ReadPacket, failed to read RTMP packet header rtmp://127.0.0.1/live/lyc: Unknown error occurred
程序山顶洞人
ffmpeg
关于imx6ull视频推拉流出现的:RTMP_ReadPacket,failedtoreadRTMPpacketheaderrtmp://127.0.0.1/live/lyc:Unknownerroroccurred解决方法:根据报错猜测是RTMP服务出现问题,就再去重新配置支持RTMP、HTTPFLV协议的第三方模块:nginx-http-flv-module最后在使用Buildroot编译的时
- 实现platform tree下的单总线协议驱动(Linux)
mftang
linux驱动开发linux驱动开发
目录1开发环境1.1硬件系统参数1.2编译环境:Ubuntu2单总线协议驱动的实现2.1在内核的.dts文件2.2编写驱动代码2.3编写测试App3测试1开发环境1.1硬件系统参数Linux内核:linux-imx-4.1.15-2.1.0-g3dc0a4b-v2.7.tar.bz2硬件:ATK-DL6Y2C开发板(芯片型号:IMX6LL)内核启动位置:eMMC1.2编译环境:Ubuntu版本信息
- IMX6ULL编译led驱动程序出现fatal error: generated/autoconf.h以及 ERROR: Kernel configuration is invalid.的解决方法
Arron475
ubuntuLinux驱动开发驱动开发linux运维ubuntu
问题背景:最近在学习IMX6ULL的驱动程序,在用make命令执行编译led驱动程序时,出现以下报错:make-C/home/book/100ask_imx6ull-sdk/Linux-4.9.88M=pwdmodulesmake[1]:进入目录“/home/book/100ask_imx6ull-sdk/Linux-4.9.88”ERROR:Kernelconfigurationisinvali
- linux+rv1126/imx6ull:opencv静态库交叉编译
孙八瓶
Linux软件linuxopencv运维
目录1.下载2.准备工作2.1安装依赖环境2.2安装Cmake2.3解压opencv3.Cmake设置3.1文件夹选择1)进入源码根目录2)运行cmake3)选择目录4)进入配置界面5)查找编译器6)配置编译器3.2编译选项1)search2)点击Configure3)点击generate4)修改文件4.编译1.下载1)官网自行下载2)国内镜像网站2.准备工作2.1安装依赖环境1)[编译器]>su
- IMX6LL|打造自己的驱动总线
左手的月光
单片机
xbus:打造自属的驱动总线驱动总线软件与硬件代码分离,提高程序的复用性device–关联硬件代码driver_devices–关联软件代码bus_type–统一管理、设置match匹配规则设备驱动模型体现分离思想bus-xbus-devices-drivers总线管理buses_init()函数内核启动执行/sys/busint__initbuses_init(void){bus_kset=ks
- imx6ull学习记录(一)
桃成蹊2.0
IMX6ULL记录linux设备使用记录学习
这一块主要是了解linux系统驱动部分,编译镜像相关的知识,这里记录一下。使用板子如下:教程用的这一个版本:1、基本环境搭建这个比较简单,只是注意一下就是正点原子的教程用了一个NFS文件系统,简单来讲就是linux移植不是有三大块吗,uboot,linux内核和文件系统,正点原子教程里面大部分这个文件系统是放在虚拟机里面的,然后通过nfs的方式来访问的。所以这里要关注一下学习过程中我建了一个文件夹
- 记录 arm 开发板上 nginx 配置 http 服务注意事项
背 锅 侠
nginxhttp运维
1.自定义项目,需要在conf.d目录中增加一个.conf配置文件:server{listen9200;#端口号server_namelocalhost;#服务名称location/{root/home/imx6q/media;#项目根目录(需要修改nginx.conf的用户)indexindex.htmlindex.htm;#autoindexon;#没有找到index配置时,自动列出文件列表}
- IMX6ULL - 移植uboot-imx_v2020.04_5.4.70_2.3.0
树 哥
嵌入式Linuxlinuxarm开发uboot
作者:zzssdd2E-mail:
[email protected]一、说明主机系统:Ubuntu20.04.3LTS开发板:TOPEET-IMX6ULLUboot版本:imx_v2020.04_5.4.70_2.3.0交叉编译器:gcc-arm-10.3-2021.07-x86_64-arm-none-linux-gnueabihf二、环境搭建2.1、uboot源码获取NXP维护的uboot
- pinctrl子系统和GPIO子系统的匹配——of_match_device
ZigeSu
linux内核arm
个人声明:转发请注明出处,个人原创,实属不易。本人水平有限,文章若有不妥之处,还请留言批评指正,不胜感激。pinctrl子系统和GPIO子系统匹配的开始时刻是在执行imx6ul_pinctrl_probe内的of_match_device函数,of_match_device在device.c文件下。staticintimx6ul_pinctrl_probe(structplatform_devic
- IMX6ULL|input子系统(按键实验)
左手的月光
linux嵌入式
一.input子系统input子系统是Linux对输入设备提供的统一驱动框架。如按键、键盘、触摸屏和鼠标等输入设备的驱动方式是类似的,当出现按键、触摸等操作时,硬件产生中断,然后CPU直接读取引脚电平,或通过SPI、I2C等通讯方式从设备的寄存器读取具体的按键值或触摸坐标,然后把这些信息提交给内核。使用input子系统驱动的输入设备可以通过统一的数据结构提交给内核,该数据结构包括输入的时间、类型、
- IMX6ULL|libgpiod控制IO
左手的月光
Linux单片机
一.为何使用libgpiod控制IO在Linux中,最常见的读写GPIO方式就是用GPIOsysfsinterface,是通过操作/sys/class/gpio目录下的export、unexport、gpio{N}/direction,gpio{N}/value(用实际引脚号替代{N})等文件实现的,经常出现shell脚本里面。在kernel4.8开始,加入了libgpiod的支持;而原有基于sy
- TTS文字转语音服务 Linux/Ubuntu ekho实现 及 Linux指定声卡
myqpy
linux
目录背景介绍下载地址:ekho库在linux环境中安装使用(imx6ull平台)ekho库在ubuntu环境中安装使用指定声卡ekho实际使用中遇到的pulseaudio不支持root用户使用问题修改/etc/systemd/system/pulseaudio.service文件并保存使能pulseaudio服务编辑/etc/pulse/client.conf文件并保存问题分析问题1:NoPuls
- IMX6ULL|GPIO子系统
左手的月光
单片机嵌入式硬件
一.GPIO子系统GPIO是GeneralPurposeI/O的缩写,即通用输入输出端口,简单来说就是MCU/CPU可控制的引脚,这些引脚通常有多种功能,最基本的是高低电平输入检测和输出,部分引脚还会与主控器的片上外设绑定,如作为串口、I2C、网络、电压检测的通讯引脚。与LED子系统类似,Linux提供了GPIO子系统驱动框架,使用该驱动框架可以把CPU的GPIO引脚导出到用户空间,用户通过访问/
- [imx6][Linux4.9]IMX6平台 pinctrl子系统
内核笔记
嵌入式硬件驱动开发
文章目录1、Pinctrl子系统1.1、Pinctrl子系统的作用1.2、设备树中PIN的配置信息1.2、设备树中PIN的配置信息中的复用信息解析1.3、PINCTRL子系统驱动主控芯片硬件开发板内核版本imx6100ask_imx6ullLinux-4.9.881、Pinctrl子系统1.1、Pinctrl子系统的作用获取设备树中的pin信息;根据获取到的pin信息来设置pin的复用功能;根据获
- 正点原子imx6ull拷贝:通过SCP命令,实现Ubuntu和开发板拷贝
桃里桑
Linux软件linux运维服务器
1.网络设置https://blog.csdn.net/qq_39200110/article/details/1356495472.SCP指令拷贝文件的指令格式:scp文件用户名@ip地址:路径拷贝文件夹的指令格式:scp-r文件夹用户名@ip地址:路径例子:
[email protected]:/home/root1)test:要传输的文件2)root:为用户名,开发板默认的就是
- IMX6LL|内核模块
左手的月光
嵌入式硬件linux
内核模块基本概念作用解决linux内核可扩展性和可维护性相对较差的缺陷现代内核派系宏内核:关键功能和服务功能均在内核空间提供运行效率高扩展性较差微内核:内核空间只提供关键功能,服务功能在用户空间提供运行效率较低安全性、扩展性较高内核模块加载/卸载使用insmod命令加载使用rmmod命令卸载内核模块入口/出口module_init():加载模块式该函数自动执行,进行初始化操作module_exit
- IMX6LL|时钟控制
左手的月光
fpga开发单片机嵌入式硬件
一.时钟控制模块4个层次配置芯片时钟晶振时钟PLL与PFD时钟PLL选择时钟根时钟/外设时钟1.1晶振时钟系统时钟来源RTC时钟源:32.768KHz,连接RTC模块,进行时间计算。系统时钟:24MHz,芯片主晶振1.2PLL和PFD倍频时钟7路锁相环电路ARM_PLL:驱动ARM内核528_PLL:倍频参数固定为22,系统总线时钟USB1_PLL:驱动第一个USB物理层AUDIO_PLL:驱动音
- IMX6LL|串口通信
左手的月光
单片机嵌入式硬件
相关寄存器UART1时钟源CCM_CSCDR1初始化UART1UART1_UCR1:使能uart1、自动波特率UART1_UCR2:设置串口的发送帧格式奇偶校验位、软件复位数据长度发送完成标志、数据接受标志发送使能、接收使能UART1_UCR3:bit2置1,官方要求设置UART1_UFCR:时钟分频、发送与接收的fifo大小UART1_UBIR、UART1_UBMR:波特率收发数据UART1_U
- 正点原子imx6ull网络环境配置:开发板和电脑通过网线直连、电脑WiFi上网
桃里桑
Linux软件网络
1.硬件连接开发板通过网线连接电脑。电脑连接wifi2.VMware设置2.1添加桥接模式和NAT模式1)打开vm设置2)设置网络适配器为桥接模式,不要勾选“赋值物理网络连接状态”3)添加一个网络适配器并设置成NAT模式,供虚拟机上网。默认添加的网络适配器是NAT模式的,如果不是NAT模式则要手动设置成NAT模式。4)打开虚拟网络编辑器(1)打开菜单栏的编辑->虚拟网络编辑器(2)点击虚拟网络编辑
- IMX6LL|中断详解
左手的月光
嵌入式
一.通用中断控制器(GIC)1.概念通用中断控制器(GeneralInterruptController,GIC)是一种硬件设备,通常用于处理多核处理器或多处理器系统中的中断。GIC负责接收来自各个设备和处理器内核的中断信号,并根据优先级和配置规则将这些中断分派给适当的处理器核心进行处理。GIC的工作原理如下:中断请求:外设或处理器核心会向GIC发送中断请求信号,表示产生了一个中断。中断分发:GI
- Linux-ARM裸机(八)-中断(下半)
xiaoliu_henniu
linuxarm开发运维
通用中断驱动编写做Linux开发时候要把Ubuntu的ip地址设置为静态,防止发生变化。移植SDK包中断相关文件将SDK包中的文件core_ca7.h拷贝到工程中的“imx6ul”文件夹中。裁剪修改的内容参考试验“9_int”中core_ca7.h进行修改(直接使用正点提供的修改好的即可,copy过来直接用)。主要留下和GIC相关的内容,重点需要core_ca7.h中的10个API函数,这10个函
- 用Buildroot构建文件系统、u-boot和kernel镜像并介绍如何使用Buildroot构建一个适合100ask_imx6ull系列开发板的嵌入式Linux系统
鄧二寶official
Bootloaderu-bootkernel文件系统
一、准备工作:①确保你的Ubuntu下载安装了软件,比如ssh和nfs服务,确保Ubuntu能够ping通外网②将含有u-boot、kernel和rootfs和工具链的压缩文件拷贝Ubuntu(最好在线使用git下载,不然可能不是最新的)二、解压编译BootloaderBootloader介绍:Bootloader是在操作系统运行之前运行的一段代码,用于引导操作系统。通常每个操作系统都有一组专属的
- IMX6ULL|libgpiod控制IO
左手的月光
嵌入式
一.为何使用libgpiod控制IO在Linux中,最常见的读写GPIO方式就是用GPIOsysfsinterface,是通过操作/sys/class/gpio目录下的export、unexport、gpio{N}/direction,gpio{N}/value(用实际引脚号替代{N})等文件实现的,经常出现shell脚本里面。在kernel4.8开始,加入了libgpiod的支持;而原有基于sy
- 【Linux驱动】Linux的中断系统 | 中断的重要数据结构
一只大喵咪1201
Linux驱动linuxc语言arm开发驱动开发
作者:一只大喵咪1201专栏:《Linux驱动》格言:你只管努力,剩下的交给时间!目录Linux系统的中断⚽中断分类软中断和硬中断中断的上半部和下半部⚽tasklet⚽工作队列⚽threaded_irqLinux中断系统中的重要数据结构⚽irq_desc数组⚽irqaction结构体⚽irq_data结构体总结Linux系统的中断如上图所示,本喵使用的IMX6ULL也是ARM架构,中断也是异常的一
- imx6ull基于yocto工程的l汇编点亮ed
和平精英总指挥
arm开发
通过汇编点亮led在裸机状态下通过汇编点亮led,即没有操作系统,(ubootkernelrootfs都不需要实现)。led点亮原理1.GPIO复用根据原理图,找到led对应的引脚(pin),复用为GPIO(只有GPIO才能控制输入输出)芯片手册查询寄存器的方法,以CSI_HSYNC为例,在IOMUXC章节搜索CSI_HSYNC找到关键字是MUX意为复用,20E_01E0为该寄存器的地址,根据手册
- IMX6ULL采用YOCTO构建嵌入式Linux系统
望有恒
嵌入式软件开发linux运维服务器
1、创建工程项目文件夹:/home/jason/Linux/Yocto/fsl-release-yocto2、获取repo切换至工程项目文件夹,如:/home/user/Linux/Yocto/fsl-release-yocto,在该文件夹下使用如下命令:curlhttp://commondatastorage.googleapis.com/git-repo-downloads/repo>./re
- 基于ARM Cortex-A7和STM32F2的IMX6ULL多核处理器设计与实现
嵌入式杂谈
arm开发stm32嵌入式硬件
基于ARMCortex-A7和STM32F2的IMX6ULL多核处理器设计和实现是一个复杂且具有挑战性的嵌入式系统项目。在本文中,我们将介绍如何利用IMX6ULL多核处理器的ARMCortex-A7和STM32F2微控制器实现多核处理器系统,并提供相关的代码示例。1.系统概述IMX6ULL多核处理器是一款基于ARMCortex-A7内核的高性能处理器,同时还集成了图像处理单元、视频编解码器、LCD
- ios内付费
374016526
ios内付费
近年来写了很多IOS的程序,内付费也用到不少,使用IOS的内付费实现起来比较麻烦,这里我写了一个简单的内付费包,希望对大家有帮助。
具体使用如下:
这里的sender其实就是调用者,这里主要是为了回调使用。
[KuroStoreApi kuroStoreProductId:@"产品ID" storeSender:self storeFinishCallBa
- 20 款优秀的 Linux 终端仿真器
brotherlamp
linuxlinux视频linux资料linux自学linux教程
终端仿真器是一款用其它显示架构重现可视终端的计算机程序。换句话说就是终端仿真器能使哑终端看似像一台连接上了服务器的客户机。终端仿真器允许最终用户用文本用户界面和命令行来访问控制台和应用程序。(LCTT 译注:终端仿真器原意指对大型机-哑终端方式的模拟,不过在当今的 Linux 环境中,常指通过远程或本地方式连接的伪终端,俗称“终端”。)
你能从开源世界中找到大量的终端仿真器,它们
- Solr Deep Paging(solr 深分页)
eksliang
solr深分页solr分页性能问题
转载请出自出处:http://eksliang.iteye.com/blog/2148370
作者:eksliang(ickes) blg:http://eksliang.iteye.com/ 概述
长期以来,我们一直有一个深分页问题。如果直接跳到很靠后的页数,查询速度会比较慢。这是因为Solr的需要为查询从开始遍历所有数据。直到Solr的4.7这个问题一直没有一个很好的解决方案。直到solr
- 数据库面试题
18289753290
面试题 数据库
1.union ,union all
网络搜索出的最佳答案:
union和union all的区别是,union会自动压缩多个结果集合中的重复结果,而union all则将所有的结果全部显示出来,不管是不是重复。
Union:对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序;
Union All:对两个结果集进行并集操作,包括重复行,不进行排序;
2.索引有哪些分类?作用是
- Android TV屏幕适配
酷的飞上天空
android
先说下现在市面上TV分辨率的大概情况
两种分辨率为主
1.720标清,分辨率为1280x720.
屏幕尺寸以32寸为主,部分电视为42寸
2.1080p全高清,分辨率为1920x1080
屏幕尺寸以42寸为主,此分辨率电视屏幕从32寸到50寸都有
适配遇到问题,已1080p尺寸为例:
分辨率固定不变,屏幕尺寸变化较大。
如:效果图尺寸为1920x1080,如果使用d
- Timer定时器与ActionListener联合应用
永夜-极光
java
功能:在控制台每秒输出一次
代码:
package Main;
import javax.swing.Timer;
import java.awt.event.*;
public class T {
private static int count = 0;
public static void main(String[] args){
- Ubuntu14.04系统Tab键不能自动补全问题解决
随便小屋
Ubuntu 14.04
Unbuntu 14.4安装之后就在终端中使用Tab键不能自动补全,解决办法如下:
1、利用vi编辑器打开/etc/bash.bashrc文件(需要root权限)
sudo vi /etc/bash.bashrc
接下来会提示输入密码
2、找到文件中的下列代码
#enable bash completion in interactive shells
#if
- 学会人际关系三招 轻松走职场
aijuans
职场
要想成功,仅有专业能力是不够的,处理好与老板、同事及下属的人际关系也是门大学问。如何才能在职场如鱼得水、游刃有余呢?在此,教您简单实用的三个窍门。
第一,多汇报
最近,管理学又提出了一个新名词“追随力”。它告诉我们,做下属最关键的就是要多请示汇报,让上司随时了解你的工作进度,有了新想法也要及时建议。不知不觉,你就有了“追随力”,上司会越来越了解和信任你。
第二,勤沟通
团队的力
- 《O2O:移动互联网时代的商业革命》读书笔记
aoyouzi
读书笔记
移动互联网的未来:碎片化内容+碎片化渠道=各式精准、互动的新型社会化营销。
O2O:Online to OffLine 线上线下活动
O2O就是在移动互联网时代,生活消费领域通过线上和线下互动的一种新型商业模式。
手机二维码本质:O2O商务行为从线下现实世界到线上虚拟世界的入口。
线上虚拟世界创造的本意是打破信息鸿沟,让不同地域、不同需求的人
- js实现图片随鼠标滚动的效果
百合不是茶
JavaScript滚动属性的获取图片滚动属性获取页面加载
1,获取样式属性值
top 与顶部的距离
left 与左边的距离
right 与右边的距离
bottom 与下边的距离
zIndex 层叠层次
例子:获取左边的宽度,当css写在body标签中时
<div id="adver" style="position:absolute;top:50px;left:1000p
- ajax同步异步参数async
bijian1013
jqueryAjaxasync
开发项目开发过程中,需要将ajax的返回值赋到全局变量中,然后在该页面其他地方引用,因为ajax异步的原因一直无法成功,需将async:false,使其变成同步的。
格式:
$.ajax({ type: 'POST', ur
- Webx3框架(1)
Bill_chen
eclipsespringmaven框架ibatis
Webx是淘宝开发的一套Web开发框架,Webx3是其第三个升级版本;采用Eclipse的开发环境,现在支持java开发;
采用turbine原型的MVC框架,扩展了Spring容器,利用Maven进行项目的构建管理,灵活的ibatis持久层支持,总的来说,还是一套很不错的Web框架。
Webx3遵循turbine风格,velocity的模板被分为layout/screen/control三部
- 【MongoDB学习笔记五】MongoDB概述
bit1129
mongodb
MongoDB是面向文档的NoSQL数据库,尽量业界还对MongoDB存在一些质疑的声音,比如性能尤其是查询性能、数据一致性的支持没有想象的那么好,但是MongoDB用户群确实已经够多。MongoDB的亮点不在于它的性能,而是它处理非结构化数据的能力以及内置对分布式的支持(复制、分片达到的高可用、高可伸缩),同时它提供的近似于SQL的查询能力,也是在做NoSQL技术选型时,考虑的一个重要因素。Mo
- spring/hibernate/struts2常见异常总结
白糖_
Hibernate
Spring
①ClassNotFoundException: org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException
缺少aspectjweaver.jar,该jar包常用于spring aop中
②java.lang.ClassNotFoundException: org.sprin
- jquery easyui表单重置(reset)扩展思路
bozch
formjquery easyuireset
在jquery easyui表单中 尚未提供表单重置的功能,这就需要自己对其进行扩展。
扩展的时候要考虑的控件有:
combo,combobox,combogrid,combotree,datebox,datetimebox
需要对其添加reset方法,reset方法就是把初始化的值赋值给当前的组件,这就需要在组件的初始化时将值保存下来。
在所有的reset方法添加完毕之后,就需要对fo
- 编程之美-烙饼排序
bylijinnan
编程之美
package beautyOfCoding;
import java.util.Arrays;
/*
*《编程之美》的思路是:搜索+剪枝。有点像是写下棋程序:当前情况下,把所有可能的下一步都做一遍;在这每一遍操作里面,计算出如果按这一步走的话,能不能赢(得出最优结果)。
*《编程之美》上代码有很多错误,且每个变量的含义令人费解。因此我按我的理解写了以下代码:
*/
- Struts1.X 源码分析之ActionForm赋值原理
chenbowen00
struts
struts1在处理请求参数之前,首先会根据配置文件action节点的name属性创建对应的ActionForm。如果配置了name属性,却找不到对应的ActionForm类也不会报错,只是不会处理本次请求的请求参数。
如果找到了对应的ActionForm类,则先判断是否已经存在ActionForm的实例,如果不存在则创建实例,并将其存放在对应的作用域中。作用域由配置文件action节点的s
- [空天防御与经济]在获得充足的外部资源之前,太空投资需有限度
comsci
资源
这里有一个常识性的问题:
地球的资源,人类的资金是有限的,而太空是无限的.....
就算全人类联合起来,要在太空中修建大型空间站,也不一定能够成功,因为资源和资金,技术有客观的限制....
&
- ORACLE临时表—ON COMMIT PRESERVE ROWS
daizj
oracle临时表
ORACLE临时表 转
临时表:像普通表一样,有结构,但是对数据的管理上不一样,临时表存储事务或会话的中间结果集,临时表中保存的数据只对当前
会话可见,所有会话都看不到其他会话的数据,即使其他会话提交了,也看不到。临时表不存在并发行为,因为他们对于当前会话都是独立的。
创建临时表时,ORACLE只创建了表的结构(在数据字典中定义),并没有初始化内存空间,当某一会话使用临时表时,ORALCE会
- 基于Nginx XSendfile+SpringMVC进行文件下载
denger
应用服务器Webnginx网络应用lighttpd
在平常我们实现文件下载通常是通过普通 read-write方式,如下代码所示。
@RequestMapping("/courseware/{id}")
public void download(@PathVariable("id") String courseID, HttpServletResp
- scanf接受char类型的字符
dcj3sjt126com
c
/*
2013年3月11日22:35:54
目的:学习char只接受一个字符
*/
# include <stdio.h>
int main(void)
{
int i;
char ch;
scanf("%d", &i);
printf("i = %d\n", i);
scanf("%
- 学编程的价值
dcj3sjt126com
编程
发一个人会编程, 想想以后可以教儿女, 是多么美好的事啊, 不管儿女将来从事什么样的职业, 教一教, 对他思维的开拓大有帮助
像这位朋友学习:
http://blog.sina.com.cn/s/articlelist_2584320772_0_1.html
VirtualGS教程 (By @林泰前): 几十年的老程序员,资深的
- 二维数组(矩阵)对角线输出
飞天奔月
二维数组
今天在BBS里面看到这样的面试题目,
1,二维数组(N*N),沿对角线方向,从右上角打印到左下角如N=4: 4*4二维数组
{ 1 2 3 4 }
{ 5 6 7 8 }
{ 9 10 11 12 }
{13 14 15 16 }
打印顺序
4
3 8
2 7 12
1 6 11 16
5 10 15
9 14
13
要
- Ehcache(08)——可阻塞的Cache——BlockingCache
234390216
并发ehcacheBlockingCache阻塞
可阻塞的Cache—BlockingCache
在上一节我们提到了显示使用Ehcache锁的问题,其实我们还可以隐式的来使用Ehcache的锁,那就是通过BlockingCache。BlockingCache是Ehcache的一个封装类,可以让我们对Ehcache进行并发操作。其内部的锁机制是使用的net.
- mysqldiff对数据库间进行差异比较
jackyrong
mysqld
mysqldiff该工具是官方mysql-utilities工具集的一个脚本,可以用来对比不同数据库之间的表结构,或者同个数据库间的表结构
如果在windows下,直接下载mysql-utilities安装就可以了,然后运行后,会跑到命令行下:
1) 基本用法
mysqldiff --server1=admin:12345
- spring data jpa 方法中可用的关键字
lawrence.li
javaspring
spring data jpa 支持以方法名进行查询/删除/统计。
查询的关键字为find
删除的关键字为delete/remove (>=1.7.x)
统计的关键字为count (>=1.7.x)
修改需要使用@Modifying注解
@Modifying
@Query("update User u set u.firstna
- Spring的ModelAndView类
nicegege
spring
项目中controller的方法跳转的到ModelAndView类,一直很好奇spring怎么实现的?
/*
* Copyright 2002-2010 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* yo
- 搭建 CentOS 6 服务器(13) - rsync、Amanda
rensanning
centos
(一)rsync
Server端
# yum install rsync
# vi /etc/xinetd.d/rsync
service rsync
{
disable = no
flags = IPv6
socket_type = stream
wait
- Learn Nodejs 02
toknowme
nodejs
(1)npm是什么
npm is the package manager for node
官方网站:https://www.npmjs.com/
npm上有很多优秀的nodejs包,来解决常见的一些问题,比如用node-mysql,就可以方便通过nodejs链接到mysql,进行数据库的操作
在开发过程往往会需要用到其他的包,使用npm就可以下载这些包来供程序调用
&nb
- Spring MVC 拦截器
xp9802
spring mvc
Controller层的拦截器继承于HandlerInterceptorAdapter
HandlerInterceptorAdapter.java 1 public abstract class HandlerInterceptorAdapter implements HandlerIntercep