- C#实现ModbusRTU详解【五】—— NModbus4的使用
澎湖Java架构师
面试学习路线阿里巴巴c#开发语言java安全
前言通过前面的四篇文章,我们已经了解到了ModbusRTU具体是什么,以及如何生成正确的报文,也完成了一个完整实现ModbusRTU的Demo。前面我们的实现方式,是从零开始一点点自己写,所以我们需要完整实现整个串口通讯以及报文的生成与收发。在实际使用的时候,我们其实不需要写那么多东西,GitHub上其实有很多现成的类库,可以直接导入使用,无需自己生成通讯报文。由于本专栏并非仅仅介绍实际应用,所以
- C#开发串口通讯软件如何如何避免串口通讯中的资源竞争?
openwin_top
c#串口应用开发问题系列c#开发语言串口上位机通讯
microPythonPython最小内核源码解析NI-motion运动控制c语言示例代码解析python编程示例系列python编程示例系列二python的Web神器Streamlit如何应聘高薪职位在C#中开发串口通讯软件时,避免资源竞争是确保系统稳定性和数据完整性的关键。资源竞争通常发生在多个线程或进程同时访问同一个串口资源时。为了避免这种情况,可以采取以下措施:使用锁机制(Lock):使用
- 串口通讯协议基础
桐叶岩
嵌入式硬件c语言信息与通信tcp/ip单片机linuxc++
串口通讯协议串口协议通常用于在设备之间进行串行通信。串口通信是一种基于串行传输的通信方式,通过串行端口(串口)将数据以逐位顺序进行传输。常见的串口协议包括RS-232、RS-485、UART等。基本概念和特点RS-232RS-232是一种常见的串口通信标准,通常用于在计算机和外部设备之间进行串口通信。RS-232使用差分信号进行数据传输,支持全双工通信,可以同时进行数据发送和接收。物理接口:RS-
- 串口通讯Serial Communication
A_nanda
c#基础串口通讯c#
串口通信是一种经典的计算机与外设之间数据传输方式,在工业控制、嵌入式系统开发、远程通信等多个领域中有着广泛的应用。C#作为.NET框架下的主要编程语言,提供了强大的串口通信支持,使得开发者能够方便地实现串口设备的控制和数据交互。本文将对C#串口通信的关键知识点进行总结,帮助读者更好地理解和应用这一技术。一、串口通信基础1.1串口通信简介串口通信(SerialCommunication)是通过串行接
- 串口通讯基础
Ethan@LM
单片机嵌入式硬件
第1章串口的发送和接收过程1.1串口接收过程当上位机给串口发送(0x55)数据时,MCU的RX引脚接受到(0x55)数据,数据(0x55)首先进入移位寄存器。数据全部进入移位寄存器后,一次将(0x55)全部搬运到接收数据寄存器(RDR),并且触发串口接收非空中断(RXNE)标志位【前提是使能了RXNE中断】,该标志位置位表示可以向串口输入移位寄存器写数据了。当串口给上位机发送(0xAA)数据时,M
- 【NB-Iot自我学习之路_4】NB模组初始化流程【移动篇】+【电信篇】
Litchi_kang
NB-IOT
一、前言移动的NB模组连接移动的平台。利尔达的NB模组连接电信的平台。二、移动NB模组对接移动平台流程串口通讯波特率为9600,数据位为8,停止位为1,奇偶检验为None。初始化流程2.1M5310-A上电检查流程(1)AT//判断模组是否上电开机成功(2)AT+CSQ//信号质量检查(3)AT+CEREG?//判断PS域附着状态,标识位返回1或5表示附着正常(4)AT+CGATT?//检查模组P
- 【星云 Orbit • STM32F4】09. 常用自定义串口通讯协议框架
智木芯语
【星云Orbit•STM32F4】stm32嵌入式硬件单片机
【星云Orbit•STM32F4】09.常用自定义串口通讯协议框架1.引言本教程旨在帮助嵌入式开发小白从零开始,学习如何在STM32F407微控制器上实现一个常用的自定义串口通讯协议。该协议能够通过串口发送和接收数据,并支持基本的错误检测和数据处理功能。教程内容涵盖基础知识、配置步骤、HAL库函数详解,并提供配套例程和代码注释。2.硬件准备STM32F407开发板串口调试工具(如串口助手)3.软件
- 如何验证串口通讯的鲁棒性?稳定性?可用性?
蓑衣客VS索尼克
个人总结网络嵌入式硬件单片机stm3251单片机学习
前言问题的产生:假定我写了一个不错的FIFObuffer程序,那我现在用在了我的串口通信程序中,我该如何进行验证我的buffer或者功能程序的性能呢?下面是我大致想到的一些测试情况,阔以看看:一、性能测试串口参数配置测试用例1:设置波特率为9600,数据位为8位,停止位为1位,无校验位。预期结果:程序正常工作,数据传输无误。用例2:设置波特率为115200,数据位为7位,停止位为2位,奇校验。预期
- 16、单片机串口原理与应用
Geek@Yang
STM8S单片机学习笔记单片机串口原理
文章目录1、什么是计算机通信2、并行通信方式3、串行通信方式4、串行同步通信原理5、串行异步通信原理6、串行异步通信的数据格式7、串行通信的错误校验8、波特率和比特率9、RS-232串口通讯原理图10、RS-232标准接口主要引脚定义11、采用RS-232接口存在的问题12、串行通信的传输方向13、RS-232点对点通信硬件连接方法14、RS-232多机通信硬件连接方法1、什么是计算机通信 计算
- ZigBee2-2 练习 串口
周周周诶。
ZigBee练习stm32物联网zigbee嵌入式
ZigBee2-2练习串口2-3串口通讯--收发字符串原代码分析:修改后代码2-4AD采集cc2530温度串口显示原代码分析:修改后代码理论部分学习:无线传感网络--ZigBee2-3串口2-3串口通讯–收发字符串要求:(2)在《2-3串口通讯–收发字符串》中完成了串口数据收发的功能,要求修改代码,使得串口调试助手向开发板发送字符串“D1#”时,Led1交替改变亮和灭的状态。原代码/*******
- C# Winform--SerialPort串口通讯(ASCII码发送)
@Crazy Snail
随笔c#开发语言WinformSerialport通信
1.代码部分privateSerialPortserialPort=newSerialPort();privatevoidbutton1_Click(objectsender,EventArgse){serialPort.BaudRate=9600;serialPort.Parity=Parity.None;serialPort.StopBits=StopBits.One;serialPort.D
- 串口调试可能遇见的常见问题和排查方法
苏州稳联
物联网嵌入式硬件信息与通信
串口UART作为嵌入式应用和通讯领域中最常用的接口之一,接口协议虽然简单,但在实际应用中不同设备之间的通讯也会存在各种小问题,下面对使用中各种常见的问题做下总结和梳理,可作为调试参考。01串口通信常见问题串口通信乱码串口通讯乱码通常是指接收方接收到的数据不符合预期,出现此情况时需要考虑的因素通常包含以下几个方面:-双方设定的串口参数是否匹配需检查设置的:串口波特率、串口数据格式等参数。-串口通讯电
- SPP蓝牙串口
LS_learner
嵌入式嵌入式硬件
SPP蓝牙串口,其中SPP是SerialPortProfile的缩写,意为串口通讯协议,它是完成蓝牙设备之间创建串口进行数据传输的一种协议。以下是对SPP蓝牙串口的详细介绍:一、定义与作用SPP定义了使用蓝牙进行RS232(或类似)串行电缆仿真的设备应使用的协议和过程。此协议涵盖的方案通过虚拟串行端口抽象(本身取决于操作系统)来处理使用蓝牙的应用程序。简而言之,SPP的主要作用是在蓝牙设备之间建立
- python如何代替arduino_用电脑Python控制Arduino
weixin_39980809
python指令:importserial#导入串口通讯库importtimeser=serial.Serial("com4",9600,timeout=1)demo1=b"0"demo2=b"1"while1:c=input('请输入指令:')if(c=='0'):ser.write(demo1)if(c=='1'):ser.write(demo2)Arduino指令voidsetup(){Se
- STM32的USART串口通讯
我 淦
嵌入式stm32
文章目录一、寄存器与固件库1、基于寄存器方式的开发特点2、基于固态库方式的开发特点二、STM32的USART串口通讯程序STM32的USART简介1、实验要求2、实验环境3、实验准备4、实验代码5、程序烧录6、实验结果三、总结一、寄存器与固件库基于寄存器与基于固件库的stm32LED流水灯例子的编程方式差异比较:1、基于寄存器方式的开发特点(1)具体参数更直观(2)程序运行占用资源少(3)寄存器更
- 关于Qt在子线程中使用通讯时发生无法接收数据的情况
极客晨风
qtC++qt网络数据库
在多线程应用中,串口通讯或TCP通讯的场景常常涉及到持续的读写操作,如果子线程处理不当,可能会导致信号阻塞问题。本文将通过串口通讯或TCP通讯为例,详细解释如何在多线程环境中避免信号阻塞,并提供代码示例。1.问题背景假设我们在一个应用程序中使用多线程处理串口或TCP通讯,通常会在子线程中实现持续的数据读取。为了确保实时处理数据,常见的做法是在子线程的run()方法中使用while循环。然而,如果没
- USART--串口通信
Can!
单片机单片机嵌入式硬件
目录一、通讯的基本知识1、串行通讯与并行通讯2、全双工、半双工及单工通讯3、同步通讯与异步通讯4、通讯速率二、串口通讯1、物理层:2、协议层:3、STM32代码中使用过程串口步骤:一、通讯的基本知识1、串行通讯与并行通讯根据数据传送的方式,通讯可分为串行通讯与并行通讯;(1)串行通讯:是指设备之间通过少量数据信号线(一般是8根以下),地线以及控制信号线,按数据位形式一位一位地传输数据的通讯方式;(
- 使用QT实现串口通讯,写一个程序,能实时接收串口数据,也能发送串口数据
kfjh
信息与通信
使用Qt实现串口通讯涉及几个关键步骤。下面是一个简单的示例程序,它展示了如何设置一个Qt应用程序来实时接收串口数据和发送数据。包含必要的头文件首先,确保你的项目中包含了必要的Qt串口模块的头文件。#include#include配置和打开串口在Qt中,使用QSerialPort类来配置和打开串口。你需要指定串口的名称、波特率和其他参数。QSerialPortserial;serial.setPor
- 通过串口读取液位仪数据
文叉叉
之前我们用测试工具模拟了串口通讯,并通过JAVA实现了串口数据接收和发送,今天来个实战,以某品牌的液位仪为实验设备,通过串口连接到上位机,用液位仪的通讯命令读取油罐的液位数据。液位仪是使用电子或其它技术用于检测液体表面,流量,流速的仪器,适用多种环境监测,如地下水监测,油站油罐中油位和水位监测等。如果你的电脑没有串口,请使用USB转串口来扩展,前面文章中有介绍。设备连接方式如下:液位仪连接图液位仪
- C#中实现串口通讯和网口通讯(使用SerialPort和Socket类)
亲爱的老吉先森
学习疑惑c#开发语言
仅作自己学习使用1准备部份串口通讯需要两个调试软件commix和VirtualSerialPortDriver,分别用于监视串口和创造虚拟串口。网口通讯需要一个网口调试助手,网络上有很多资源,我在这里采用的是微软商店中的TCP/UDP网络调试助手,其中也有和commix一样功能的串口调试模块。第一个软件是这样的:资源在这里:免费下载:Commix也可以前往官网下载:Bwsensing—Attitu
- 自制蓝牙手机app控制stm8/stm32/C51板载LED
挨踢玩家
stm8sstm32单片机arm
这里来分享下,自制手机app来控制单片机上的LED,以实现上位机,下位机的通讯这次分享的是蓝牙app控制stm8,stm32,C51的我前面的文章分享过,不懂的可以看看–>传送门原理很简单,就是蓝牙手机app发送字符1(亮),字符2(灭)蓝牙app的制作看我上面的传送门,这里一点都没更改这里的代码是基于stm8s串口通讯改的代码,如果没有代码的话可以看我上一篇文章–>传送门其实这些都很简单的,看我
- VB.net写一个简易串口RS485调试助手
机构师
工业自动化编程VB.net实例应用python
最近在调试带rs485串口通讯的设备,项目上主要是用PLC和串口通讯,因为PLC有集成好的串口块,使用起来比较容易,为了方便测试,就想着用上位机写一个简易的串口通讯程序,用于调试。在网上查找了一些资料后,基本上选择了两个方式,VB.net和python,python来写串口通讯程序,我在另一篇博客里面已经发了:https://blog.csdn.net/normer123456/article/d
- vb.net进行CRC-16/MODBUS校验(调用C#dll),对16进制输入进行CRC校验输出
机构师
VB.net实例应用C#实例应用.netc#开发语言
如果使用vb.net进行串口通讯测试,就需要发送串口指令,一般是16进制数据,并且,大部分串口设备会对指令码进行crc校验。通常来说,串口通讯的crc校验模型都是crc-16/modbus。一、原理解释crc-16/modbus模型,其原理解释如下:预置1个16位的寄存器为十六进制FFFF(即全为1),称此寄存器为CRC寄存器。把第一个8位二进制数据(通信信息帧的第一个字节)与16位的CRC寄存器
- 【Iot】什么是串口?什么是串口通信?串口通信(串口通讯)原理,常见的串口通信方式有哪些?
卸载引擎
iot物联网单片机前端
串口通信原理1.串口2.串口通信4.波特率与比特率5.帧格式3.串口通讯的通讯协议3.1.RS2323.2.RS485总结1.串口串行接口简称串口,也称串行通信接口或串行通讯接口(通常指COM接口),是采用串行通信方式的扩展接口。串口可以将接收来自CPU的并行数据字符转换为连续的串行数据流发送出去,同时可将接收的串行数据流转换为并行的数据字符供给CPU的器件。一般完成这种功能的电路,我们称为串行接
- [香橙派开发系列]使用蓝牙和手机进行信息的交换
恰柠
香橙派单片机
文章目录前言一、HC05蓝牙模块1.HC05概述2.HC05的连接图3.进入HC05的命令模式4.常用的AT指令4.1检查AT是否上线4.2重启模块4.3获取软件版本号4.4恢复默认状态4.5获取蓝牙的名称4.6设置蓝牙模块的波特率4.7查询蓝牙的连接模式4.8查询模块角色5.连接电脑6.通过HC05发送消息7.stm32完整代码二、香橙派串口通讯1.打开串口设备2.接线3.串口函数3.1打开串口
- 串口通讯(串行接口通讯)
有名企梦的小菜鸡
嵌入式学习单片机stm32嵌入式硬件
文章目录一、串行通讯是什么?二、种类三、并行与串行的区别四、通信方式总结一、串行通讯是什么?串行通讯是通信双方按位进行,遵守时序的一种通信方式。串行通信中,将数据按位依次传输,每位数据占据固定的时间长度,即可使用少数几条通信线路就可以完成系统间交换信息。我们首先要使能GPIO时钟,然后使能复用功能时钟,同时要把GPIO模式设置为复用功能对应的模式。这些准备工作做完之后,剩下的当然是串口参数的初始化
- STM32学习笔记——HC05
注意沈题!
stm32单片机学习
STM32HAL库+CubeMX串口通讯HC-05前言软件及硬件准备硬件连接蓝牙模块调试CubeMX配置keil软件编写实验注意事项源码及注意事项2023.3.11前言我所使用的开发板为STM32F405RG,蓝牙模块为HC-05。本文是为自己留作笔记用,也是给大家分享一下蓝牙模块的基本使用,如有不对,还望指出。软件及硬件准备软件:keil5CubeMXXCOM硬件:主控板:STM32F405RG
- Arduino:串口通讯
氿 柒
串口单片机
一、硬件串口在PC机上最常见的串行通讯协议是RS-232串行协议,而各种微控制器(单片机)上采用的是TTL串行协议,两者电平不同,需要经过相应电平转换才能进行相互通讯。ArduinoUnoR3开发板上,硬件串口位于Rx(0)和Tx(1)引脚上,Arduino的USB口通过转换芯片与这两个引脚连接。该转换芯片会通过USB接口在PC机上虚拟出一个用于Arduino通讯的串口,我们下载程序也是通过串口进
- 如何监控两台android设备之间串口通讯的ADB日志?
helloworld1238888
androidadb
如果你的目标是将设备通过Wi-Fi连接到计算机,可以执行以下步骤:一.通过USB连接设备:adbdevices确保设备通过USB连接,并且可以通过adbdevices命令正常识别。二、将设备1和设备2都切换到TCP/IP模式:命令格式:adb-s设备的序列号tcpip端口号1.连接第一台设备:adb-s0123456789ABCDEFtcpip44442.连接第二台设备:adb-sMTK00023
- Arduino| 串口通讯、入门示例
魔法自动机
硬件相关单片机嵌入式硬件串口通讯Arduino下位机
Arduino串口通讯为什么要做串口通讯串口通讯原理串口通讯函数字符串常用函数串口通讯示例入门示例测试串口通讯复杂指令处理为什么要做串口通讯串口通讯:串口通信是用来在不同电子设备之间交换数据用的技术,其实就是要实现不同电子设备之间的“通讯对话”。串口给通讯应用例子:刚拿到Arduino进行Blink测试,程序通过引脚控制了小灯亮起,但是如果我们想要改变当前小灯的亮度,想要把这个“想法”传递给Ard
- 安装数据库首次应用
Array_06
javaoraclesql
可是为什么再一次失败之后就变成直接跳过那个要求
enter full pathname of java.exe的界面
这个java.exe是你的Oracle 11g安装目录中例如:【F:\app\chen\product\11.2.0\dbhome_1\jdk\jre\bin】下的java.exe 。不是你的电脑安装的java jdk下的java.exe!
注意第一次,使用SQL D
- Weblogic Server Console密码修改和遗忘解决方法
bijian1013
Welogic
在工作中一同事将Weblogic的console的密码忘记了,通过网上查询资料解决,实践整理了一下。
一.修改Console密码
打开weblogic控制台,安全领域 --> myrealm -->&n
- IllegalStateException: Cannot forward a response that is already committed
Cwind
javaServlets
对于初学者来说,一个常见的误解是:当调用 forward() 或者 sendRedirect() 时控制流将会自动跳出原函数。标题所示错误通常是基于此误解而引起的。 示例代码:
protected void doPost() {
if (someCondition) {
sendRedirect();
}
forward(); // Thi
- 基于流的装饰设计模式
木zi_鸣
设计模式
当想要对已有类的对象进行功能增强时,可以定义一个类,将已有对象传入,基于已有的功能,并提供加强功能。
自定义的类成为装饰类
模仿BufferedReader,对Reader进行包装,体现装饰设计模式
装饰类通常会通过构造方法接受被装饰的对象,并基于被装饰的对象功能,提供更强的功能。
装饰模式比继承灵活,避免继承臃肿,降低了类与类之间的关系
装饰类因为增强已有对象,具备的功能该
- Linux中的uniq命令
被触发
linux
Linux命令uniq的作用是过滤重复部分显示文件内容,这个命令读取输入文件,并比较相邻的行。在正常情 况下,第二个及以后更多个重复行将被删去,行比较是根据所用字符集的排序序列进行的。该命令加工后的结果写到输出文件中。输入文件和输出文件必须不同。如 果输入文件用“- ”表示,则从标准输入读取。
AD:
uniq [选项] 文件
说明:这个命令读取输入文件,并比较相邻的行。在正常情况下,第二个
- 正则表达式Pattern
肆无忌惮_
Pattern
正则表达式是符合一定规则的表达式,用来专门操作字符串,对字符创进行匹配,切割,替换,获取。
例如,我们需要对QQ号码格式进行检验
规则是长度6~12位 不能0开头 只能是数字,我们可以一位一位进行比较,利用parseLong进行判断,或者是用正则表达式来匹配[1-9][0-9]{4,14} 或者 [1-9]\d{4,14}
&nbs
- Oracle高级查询之OVER (PARTITION BY ..)
知了ing
oraclesql
一、rank()/dense_rank() over(partition by ...order by ...)
现在客户有这样一个需求,查询每个部门工资最高的雇员的信息,相信有一定oracle应用知识的同学都能写出下面的SQL语句:
select e.ename, e.job, e.sal, e.deptno
from scott.emp e,
(se
- Python调试
矮蛋蛋
pythonpdb
原文地址:
http://blog.csdn.net/xuyuefei1988/article/details/19399137
1、下面网上收罗的资料初学者应该够用了,但对比IBM的Python 代码调试技巧:
IBM:包括 pdb 模块、利用 PyDev 和 Eclipse 集成进行调试、PyCharm 以及 Debug 日志进行调试:
http://www.ibm.com/d
- webservice传递自定义对象时函数为空,以及boolean不对应的问题
alleni123
webservice
今天在客户端调用方法
NodeStatus status=iservice.getNodeStatus().
结果NodeStatus的属性都是null。
进行debug之后,发现服务器端返回的确实是有值的对象。
后来发现原来是因为在客户端,NodeStatus的setter全部被我删除了。
本来是因为逻辑上不需要在客户端使用setter, 结果改了之后竟然不能获取带属性值的
- java如何干掉指针,又如何巧妙的通过引用来操作指针————>说的就是java指针
百合不是茶
C语言的强大在于可以直接操作指针的地址,通过改变指针的地址指向来达到更改地址的目的,又是由于c语言的指针过于强大,初学者很难掌握, java的出现解决了c,c++中指针的问题 java将指针封装在底层,开发人员是不能够去操作指针的地址,但是可以通过引用来间接的操作:
定义一个指针p来指向a的地址(&是地址符号):
- Eclipse打不开,提示“An error has occurred.See the log file ***/.log”
bijian1013
eclipse
打开eclipse工作目录的\.metadata\.log文件,发现如下错误:
!ENTRY org.eclipse.osgi 4 0 2012-09-10 09:28:57.139
!MESSAGE Application error
!STACK 1
java.lang.NoClassDefFoundError: org/eclipse/core/resources/IContai
- spring aop实例annotation方法实现
bijian1013
javaspringAOPannotation
在spring aop实例中我们通过配置xml文件来实现AOP,这里学习使用annotation来实现,使用annotation其实就是指明具体的aspect,pointcut和advice。1.申明一个切面(用一个类来实现)在这个切面里,包括了advice和pointcut
AdviceMethods.jav
- [Velocity一]Velocity语法基础入门
bit1129
velocity
用户和开发人员参考文档
http://velocity.apache.org/engine/releases/velocity-1.7/developer-guide.html
注释
1.行级注释##
2.多行注释#* *#
变量定义
使用$开头的字符串是变量定义,例如$var1, $var2,
赋值
使用#set为变量赋值,例
- 【Kafka十一】关于Kafka的副本管理
bit1129
kafka
1. 关于request.required.acks
request.required.acks控制者Producer写请求的什么时候可以确认写成功,默认是0,
0表示即不进行确认即返回。
1表示Leader写成功即返回,此时还没有进行写数据同步到其它Follower Partition中
-1表示根据指定的最少Partition确认后才返回,这个在
Th
- lua统计nginx内部变量数据
ronin47
lua nginx 统计
server {
listen 80;
server_name photo.domain.com;
location /{set $str $uri;
content_by_lua '
local url = ngx.var.uri
local res = ngx.location.capture(
- java-11.二叉树中节点的最大距离
bylijinnan
java
import java.util.ArrayList;
import java.util.List;
public class MaxLenInBinTree {
/*
a. 1
/ \
2 3
/ \ / \
4 5 6 7
max=4 pass "root"
- Netty源码学习-ReadTimeoutHandler
bylijinnan
javanetty
ReadTimeoutHandler的实现思路:
开启一个定时任务,如果在指定时间内没有接收到消息,则抛出ReadTimeoutException
这个异常的捕获,在开发中,交给跟在ReadTimeoutHandler后面的ChannelHandler,例如
private final ChannelHandler timeoutHandler =
new ReadTim
- jquery验证上传文件样式及大小(好用)
cngolon
文件上传jquery验证
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="jquery1.8/jquery-1.8.0.
- 浏览器兼容【转】
cuishikuan
css浏览器IE
浏览器兼容问题一:不同浏览器的标签默认的外补丁和内补丁不同
问题症状:随便写几个标签,不加样式控制的情况下,各自的margin 和padding差异较大。
碰到频率:100%
解决方案:CSS里 *{margin:0;padding:0;}
备注:这个是最常见的也是最易解决的一个浏览器兼容性问题,几乎所有的CSS文件开头都会用通配符*来设
- Shell特殊变量:Shell $0, $#, $*, $@, $?, $$和命令行参数
daizj
shell$#$?特殊变量
前面已经讲到,变量名只能包含数字、字母和下划线,因为某些包含其他字符的变量有特殊含义,这样的变量被称为特殊变量。例如,$ 表示当前Shell进程的ID,即pid,看下面的代码:
$echo $$
运行结果
29949
特殊变量列表 变量 含义 $0 当前脚本的文件名 $n 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个
- 程序设计KISS 原则-------KEEP IT SIMPLE, STUPID!
dcj3sjt126com
unix
翻到一本书,讲到编程一般原则是kiss:Keep It Simple, Stupid.对这个原则深有体会,其实不仅编程如此,而且系统架构也是如此。
KEEP IT SIMPLE, STUPID! 编写只做一件事情,并且要做好的程序;编写可以在一起工作的程序,编写处理文本流的程序,因为这是通用的接口。这就是UNIX哲学.所有的哲学真 正的浓缩为一个铁一样的定律,高明的工程师的神圣的“KISS 原
- android Activity间List传值
dcj3sjt126com
Activity
第一个Activity:
import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import a
- tomcat 设置java虚拟机内存
eksliang
tomcat 内存设置
转载请出自出处:http://eksliang.iteye.com/blog/2117772
http://eksliang.iteye.com/
常见的内存溢出有以下两种:
java.lang.OutOfMemoryError: PermGen space
java.lang.OutOfMemoryError: Java heap space
------------
- Android 数据库事务处理
gqdy365
android
使用SQLiteDatabase的beginTransaction()方法可以开启一个事务,程序执行到endTransaction() 方法时会检查事务的标志是否为成功,如果程序执行到endTransaction()之前调用了setTransactionSuccessful() 方法设置事务的标志为成功则提交事务,如果没有调用setTransactionSuccessful() 方法则回滚事务。事
- Java 打开浏览器
hw1287789687
打开网址open浏览器open browser打开url打开浏览器
使用java 语言如何打开浏览器呢?
我们先研究下在cmd窗口中,如何打开网址
使用IE 打开
D:\software\bin>cmd /c start iexplore http://hw1287789687.iteye.com/blog/2153709
使用火狐打开
D:\software\bin>cmd /c start firefox http://hw1287789
- ReplaceGoogleCDN:将 Google CDN 替换为国内的 Chrome 插件
justjavac
chromeGooglegoogle apichrome插件
Chrome Web Store 安装地址: https://chrome.google.com/webstore/detail/replace-google-cdn/kpampjmfiopfpkkepbllemkibefkiice
由于众所周知的原因,只需替换一个域名就可以继续使用Google提供的前端公共库了。 同样,通过script标记引用这些资源,让网站访问速度瞬间提速吧
- 进程VS.线程
m635674608
线程
资料来源:
http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001397567993007df355a3394da48f0bf14960f0c78753f000 1、Apache最早就是采用多进程模式 2、IIS服务器默认采用多线程模式 3、多进程优缺点 优点:
多进程模式最大
- Linux下安装MemCached
字符串
memcached
前提准备:1. MemCached目前最新版本为:1.4.22,可以从官网下载到。2. MemCached依赖libevent,因此在安装MemCached之前需要先安装libevent。2.1 运行下面命令,查看系统是否已安装libevent。[root@SecurityCheck ~]# rpm -qa|grep libevent libevent-headers-1.4.13-4.el6.n
- java设计模式之--jdk动态代理(实现aop编程)
Supanccy2013
javaDAO设计模式AOP
与静态代理类对照的是动态代理类,动态代理类的字节码在程序运行时由Java反射机制动态生成,无需程序员手工编写它的源代码。动态代理类不仅简化了编程工作,而且提高了软件系统的可扩展性,因为Java 反射机制可以生成任意类型的动态代理类。java.lang.reflect 包中的Proxy类和InvocationHandler 接口提供了生成动态代理类的能力。
&
- Spring 4.2新特性-对java8默认方法(default method)定义Bean的支持
wiselyman
spring 4
2.1 默认方法(default method)
java8引入了一个default medthod;
用来扩展已有的接口,在对已有接口的使用不产生任何影响的情况下,添加扩展
使用default关键字
Spring 4.2支持加载在默认方法里声明的bean
2.2
将要被声明成bean的类
public class DemoService {