-
Spring的Quartz定时器同一时刻重复执行二次的问题处理
所属栏目:[教程] 日期:2021-12-14 热度:117
最近用Spring的quartz定时器的时候,发现到时间后,任务总是重复执行两次,在tomcat或jboss下都如此。 打印出他们的hashcode,发现是不一样的,也就是说,在web容器启动的时候,重复启了两个quartz线程。 研究下来发现quartz确实会加载两次: 第一次:web容器[详细]
-
把驱动编译进内核的3种技巧
所属栏目:[教程] 日期:2021-12-14 热度:62
把驱动编译进内核的3种方法-----(mini2440 key按键为例) 方法1:单独以模块的方式编译及加入内核的方法(最简单的方法) 说明:key.c(key_hui.c)是驱动的代码,Makefile是编译规则,key.ko是驱动。key_irq是测试代码. (1). 在源程序目录make arch=arm ,就[详细]
-
C++之static静态修饰符介绍
所属栏目:[教程] 日期:2021-12-14 热度:122
静态类成员:是那些与类本身有关的成员数据和成员函数,而不是与该类对象相关的成员数据和成员函数。 所以静态成员数据也称为类数据,静态成员函数也称为类方法。静态成员数据在类里只是一个说明,还需要一个定义(或叫初始化)。静态成员数据要在类定义之外[详细]
-
Hibernate 一对一双向关联深入介绍
所属栏目:[教程] 日期:2021-12-14 热度:191
1、一对一相对比较简单。hibernate主要是帮助我们保持了两张表的id一致! 先建两张表 create table h_01.idcard (id integer not null, num integer, primary key (id)); create table h_01.student (id integer not null, name varchar(255), primary key (i[详细]
-
Linux shell逐行读取文件的技巧
所属栏目:[教程] 日期:2021-12-14 热度:56
在Linux中有很多方法逐行读取一个文件的方法,其中最常用的就是下面的脚本里的方法,而且是效率最高,使用最多的方法。为了给大家一个直观的感受,我们将通过生成一个大的文件的方式来检验各种方法的执行效率。 方法1:while循环中执行效率最高,最常用的方[详细]
-
简洁的bash编程方法
所属栏目:[教程] 日期:2021-12-14 热度:55
下面这几条是我自己在写shell代码的时候,比较喜欢的几种写法,抛砖引玉。 1) 检查命令执行是否成功 第一种写法,比较常见: echo abcdee | grep -q abcd if [ $? -eq 0 ]; then echo Found else echo Not found fi 简洁的写法: if echo abcdee | grep -q ab[详细]
-
源码详解Java接口和抽象类的差异
所属栏目:[教程] 日期:2021-12-14 热度:193
Java基础之基础,抽象类和接口的区别。要是还不能很清晰的给别人讲述这两者之间的区别,建议自己动手写写代码,就会有所领悟了。 1.抽象类 public abstract class testAbstractClass { //抽象类是可以有私有方法或私有变量 private int TEST_NUM; public abs[详细]
-
Node.js调用C++的关键
所属栏目:[教程] 日期:2021-12-14 热度:112
1.如何将js的字符串转化为C++的字符串 const char* ToCString(const String::Utf8Value value) { return *value ? *value: string conversion failed; } HandleValueOpen(const Argumentsargs) { HandleScope scope; String::Utf8Value str(args[0]);// cons[详细]
-
C++中对hash_map自定义哈希函数和比较函数的认识
所属栏目:[教程] 日期:2021-12-14 热度:77
首先申明一下,我是菜鸟,真正的菜鸟,不是谦虚。所以很多地方有错误,需要大家指出。我只是为了记录,顺便加深自己的理解,不是为了炫耀什么。 这两天学习使用hash_map,在网上搜索了一下,没搜到详细介绍hash_map工作原理的内容(可能是我的搜索方式有问题[详细]
-
Ruby中gsub和gsub!的差异
所属栏目:[教程] 日期:2021-12-14 热度:50
ruby中带!和不带!的方法的最大的区别就是带!的会改变调用对象本身了。比方说str.gsub(/a/, b),不会改变str本身,只会返回一个新的str。而str.gsub!(/a/, b)就会把str本身给改了。 但是gsub和gsub!还有另外一个不同点就是,gsub不管怎么样都会返回一个新的字[详细]
-
C++ 判断文件的几种办法
所属栏目:[教程] 日期:2021-12-14 热度:193
C++ 判断文件的几种方式 ifstream file_1; 1. if(!file_1) 2.if(!file_1.good()) 3.if(file_1.fail()) 上述三个等价,代表文件打开失败,但不能检测出以不合适的文件模式打开文件失败,而第4中方法可以。 4.if(!file_1.is_open()) 推荐用第4中方式,其判断[详细]
-
Java中遍历HashMap的技巧
所属栏目:[教程] 日期:2021-12-14 热度:97
Java中,通常有两种遍历HashMap的方法,如下: import java.util.*; publicclass MapTest { static HashMapString, Integer hashMap = new HashMapString, Integer(); publicstaticvoid main(String [] args) { hashMap.put(one, 1); hashMap.put(two, 2); ha[详细]
-
Android大图片裁剪终极解决方案
所属栏目:[教程] 日期:2021-12-14 热度:120
约几个月前,我正为公司的APP在Android手机上实现拍照截图而烦恼不已。 上网搜索,确实有不少的例子,大多都是抄来抄去,而且水平多半处于demo的样子,可以用来讲解知识点,但是一碰到实际项目,就漏洞百出。 当时我用大众化的解决方案,暂时性的做了一个拍[详细]
-
C++ 声明与定义的差异
所属栏目:[教程] 日期:2021-12-14 热度:112
在C++的使用过程中,经常听到变量的定义、声明,也经常出现两者定义随意混用的情况,其实两者的差别还是比较大的。 两个术语的英语定义为: Declaring is like telling the machine that you want say for example, the variable x to exist, you can also[详细]
-
Android调用系统邮件类应用的正确实现技巧
所属栏目:[教程] 日期:2021-12-14 热度:117
Android应用开发中,很多情况下免不了要调用手机上的邮件类应用,实现邮件发送的功能,这一般是通过调用系统已有的Intent来实现的。看到网上很多邮件发送都是调用action为android.content.Intent.ACTION_SEND的Intent来实现的,下面我们就来看下这种方式实现[详细]
-
Python模块paramiko的上传下载和远程执行命令技巧
所属栏目:[教程] 日期:2021-12-14 热度:200
用Python实现远程登陆主机执行命令或通过sftp上传下载文件,有个很好的模块paramiko模块来演示这些功能,使用起来很方便,大家可学习一下。写了几个小程序,用于说明此模块的使用方法。 1:连接远程linux主机并执行命令 #!/usr/bin/env python import parami[详细]
-
Android设置Gallery 不居中或左靠齐谨慎事项
所属栏目:[教程] 日期:2021-12-14 热度:87
本来看这样的布局本以为它会居左,但其实不然。仔细看看它内部实现代码可以看出。它默认是居中显示第一个。所以造成左边空出一大截很难看,解决办法如下: Gallery Android:id=@+id/gallery_go_userface android:layout_marginTop=12dp android:layout_margi[详细]
-
C语言和C++下字符串处理函数概括
所属栏目:[教程] 日期:2021-12-14 热度:94
一、ctype.h字符处理库中的函数 #includectype.h 函数原型:int f(int c) 函数说明:C语言定义的处理字符操作,包括是否是数字,字母,打印字符,十六进制数字,大小写转换等, 具体如下: isalnum:Check if character is alphanumeric (function) isalpha[详细]
-
Android输入法框架中按键消息的处理步骤
所属栏目:[教程] 日期:2021-12-14 热度:103
最近研究了一下Android输入法,发现Android输入法框架中按键消息的处理流程和一般应用程序的处理流程有很大的不同,故在此做个总结。 一、一些名词缩写 IMF(Input MethodFramework):输入法框架 IM(Input Method):输入法 IMS(Input Method Service):[详细]
-
Linux进程状态分析
所属栏目:[教程] 日期:2021-12-14 热度:197
以下部分的代码示例,来自于Linux内核的0.11版本源码 在定义进程的数据结构task_struct时,有一个state字段是用来表示进程状态的,这里总结了下关于state字段的操作 关于进程的几个状态值在sched.h中定义如下 #define TASK_RUNNING 0 #define TASK_INTERRUPTI[详细]
-
Linux系统的中断、系统调用和调度概括
所属栏目:[教程] 日期:2021-12-14 热度:67
最近学习Linux操作系统,关于中断系统调用和进程的级别总是感觉有些模糊的地方,特在此做个小结,整理下思路。 所谓的中断就是在计算机执行程序的过程中,由于出现了某些特殊事情,使得CPU暂停对程序的执行,转而去执行处理这一事件的程序。等这些特殊事情处[详细]
-
Linux中断介绍
所属栏目:[教程] 日期:2021-12-14 热度:132
这里以linux-kernel 0.11版本为基础整理中断相关知识,目的在于对于中断有一个全面、清晰和简洁的认识 1、Linux的中断类型 Linux的各种中断都是由系统负责统一处理的。在响应一个特定的中断的时候,内核会执行一个函数,该函数叫做中断处理函数或中断服务例[详细]
-
SSH2环境搭建的asm和cglib包冲突的处理
所属栏目:[教程] 日期:2021-12-14 热度:185
在搭建ssh2的开发环境时,经常会遇到包冲突的问题,原因是struts, hibernate 和spring 引入了各自的开发包,这些开发包有些互相冲突,导致了各个版本的集成,常常不是一番风顺。其中asm 和 cglib 的冲突在使用annotation时经常出现, 我使用的环境是struts2.[详细]
-
Java中String类的compareTo技巧
所属栏目:[教程] 日期:2021-12-14 热度:90
首先来看一段代码: String s1 = abcd; String s2 = abce; String s3 = Abc; String s4 = abcdefg; System.out.println(s1.compareTo(s2)); //-1 System.out.println(s1.compareTo(s3)); //32 System.out.println(s4.compareTo(s1)); //3 System.out.println([详细]
-
介绍ARM9的CPSR寄存器
所属栏目:[教程] 日期:2021-12-14 热度:128
最近在学习嵌入式底层系统开发,在写启动代码时要设置各个模式的SP,需要调整CPU的工作模式,部分代码如下: .equ DISABLE_IRQ, 0x80 .equ DISABLE_FIQ, 0x40 .equ SYS_MOD, 0x1f .equ IRQ_MOD, 0x12 .equ FIQ_MOD, 0x11 .equ SVC_MOD, 0x13 .equ ABT_MOD, 0x[详细]

浙公网安备 33038102330459号