- 基于STM32的智能农业灌溉系统设计与实现
STM32发烧友
stm32嵌入式硬件单片机
目录引言环境准备2.1硬件准备2.2软件准备系统架构与基础3.1控制系统架构3.2功能描述代码实现:实现智能农业灌溉系统4.1环境监测模块4.2灌溉控制模块4.3通信与远程监控实现4.4用户界面与数据可视化应用场景:农业灌溉与节水控制问题解决方案与优化收尾与总结1.引言随着农业现代化进程的推进,传统的灌溉方式逐渐无法满足节水、高效的需求。智能农业灌溉系统通过集成传感器、嵌入式控制技术和无线通信模块
- 基于STM32开发的智能花园灌溉系统
STM32发烧友
stm32嵌入式硬件单片机
目录引言环境准备工作硬件准备软件安装与配置系统设计系统架构硬件连接代码实现系统初始化土壤湿度监测与处理灌溉控制与状态指示Wi-Fi通信与远程监控应用场景家庭花园智能灌溉农业田地的智能灌溉管理常见问题及解决方案常见问题解决方案结论1.引言随着智能家居技术的发展,智能花园灌溉系统逐渐成为家庭园艺和农业生产中提高水资源利用效率的重要工具。该系统通过集成土壤湿度传感器、雨滴传感器、Wi-Fi模块等硬件,实
- STM32 驱动矩阵键盘详解与完整示例
深入黑暗
单片机开发stm32矩阵嵌入式硬件单片机驱动开发
STM32驱动矩阵键盘详解与完整示例矩阵键盘在嵌入式开发中是一种常见的输入设备,广泛应用于工业控制、人机界面、消费电子等领域。本文将详细介绍如何在STM32平台上驱动一个4x4矩阵键盘,涵盖原理分析、硬件连接、软件编程、防抖处理、问题排查与优化技巧等,适合初学者和进阶用户参考。一、矩阵键盘基本原理1.1什么是矩阵键盘?矩阵键盘是将按键按行列排布形成网格状结构的键盘,通过行线(Row)和列线(Col
- 可编程电子安全相关系统_编程中的安全生态系统概述
danpu0978
编程语言pythonjava人工智能linux
可编程电子安全相关系统就像近年来的情况一样,安全漏洞已越来越被接受。仅以最近的Equifax违规为例。无论我们在哪里看,似乎总有人会遭受某种形式的恶意攻击或其他形式的攻击。尽管我们最近想到了最近的漏洞,但我还是想花一点时间来概述有关软件开发的安全生态系统。我将从建设性和积极的角度介绍您可以做的一些关键事情,以提高您的应用程序的安全性,以应对安全漏洞。为此,我将研究四个关键领域。他们将主要讨论具体的
- python协程与异步并发,同步与阻塞,异步与非阻塞,Python异步IO、协程与同步原语介绍,协程的优势和劣势
网小鱼的学习笔记
Pythonpython服务器开发语言
协程与异步软件系统的并发使用异步IO,无非是我们提的软件系统的并发,这个软件系统,可以是网络爬虫,也可以是web服务等并发的方式有多种,多线程,多进程,异步IO等多线程和多进程更多应用于CPU密集型的场景,比如科学计算的事件都消耗在CPU上面,利用多核CPU来分担计算任务多线程和多进程之间的场景切换和通讯代价很高,不适合IO密集型的场景,而异步IO就是非常适合IO密集型的场景,例如网络爬虫和web
- 大数据项目-Django基于大数据技术实现的农产品销售系统
IT实战课堂-玲琳娜
计算机毕业设计大数据javaspark爬虫
《[含文档+PPT+源码等]Django基于大数据技术实现的农产品销售系统》该项目含有源码、文档、PPT、配套开发软件、软件安装教程、包运行成功以及课程答疑与微信售后交流群、送查重系统不限次数免费查重等福利!数据库管理工具:phpstudy/Navicat或者phpstudy/sqlyog后台管理系统涉及技术:后台使用框架:Django前端使用技术:Vue,HTML5,CSS3、JavaScrip
- 产品背景知识——API、SDK、Library、Framework、Protocol
爱吃芝麻汤圆
#产品背景知识apisdk产品背景知识
产品背景知识——API、SDK、Library、Framework、ProtocolAPI和SDKAPI(ApplicationProgrammingInterface,应用程序编程接口)和SDK(SoftwareDevelopmentKit,软件开发工具包)是软件开发中的两个核心概念,它们既有区别又有紧密联系。以下是详细解释:1.API与SDK的区别特性APISDK定义一组预定义的规则和协议,用
- 【go从入门到精通】rpc和grpc的使用
前网易架构师-高司机
golang从入门到精通golangrpc开发语言golang从入门到精通go从入门到精通grpc
RPC简介远程过程调用(RemoteProcedureCall,RPC)是一个计算机通信协议该协议允许运行于一台计算机的程序调用另一台计算机的子程序,而程序员无需额外地为这个交互作用编程如果涉及的软件采用面向对象编程,那么远程过程调用亦可称作远程调用或远程方法调用RPC应用场景RPC的应用场景通常是在复杂的系统中,当单一应用无法承受高流量和复杂业务时,系统会被拆分成多个服务,这些服务可能需要部署在
- 安全左移(Shift Left Security):软件安全的演进之路
秋说
Security安全建设软件安全
文章目录一、背景:传统安全的尴尬处境二、安全左移:让安全成为开发的“第一等公民”三、安全左移的关键实施阶段1.需求阶段:嵌入安全需求建模2.设计阶段:威胁建模与架构审计3.编码阶段:安全编码规范与静态分析4.构建与测试阶段:自动化安全检测5.发布阶段:容器与CI/CD安全审计6.运营阶段:安全监控与持续响应四、实现路径:从理念到落地的三步走Step1:安全理念转型Step2:工具链集成与自动化保障
- 云原生 CAD 让制造业设计协同更便捷
大腾智能
工业软件CAD数字化
随着互联网、云计算技术的突飞猛进,CAD向着网络化、协同化的方向快速发展,云CAD软件逐渐映入人们的眼帘。云原生CAD不仅打破了传统CAD软件对硬件配置的依赖,更以数据驱动的协同创新模式,重塑了制造业的产品研发流程与组织协作形态。云CAD的特征快速灵活部署云CAD的一大优势就是软件部署的灵活性。基于Web浏览器的SaaS化架构,使设计师无需经历冗长的软件安装与版本适配过程。云端统一维护机制确保所有
- ES 和 lucene 的区别是什么?
晚夜微雨问海棠呀
elasticsearchlucene大数据
Elasticsearch(ES)和Lucene都是用于全文搜索和分析的工具,但它们在功能和使用场景上有一些重要的区别:基础与角色:Lucene是一个开源的信息检索软件库,提供了一个高性能、全功能的文本搜索引擎。它是许多搜索应用的核心,包括Elasticsearch。Elasticsearch是一个分布式搜索和分析引擎,构建在Lucene之上。它不仅提供了Lucene的所有功能,还增加了分布式计算
- 欧标TH-307EV3.41对讲机写频软件详解
侯昂
本文还有配套的精品资源,点击获取简介:对讲机在多个领域中有着广泛应用,欧标TH-307EV3.41是一款针对特定型号对讲机进行频率配置和功能设置的软件工具。它允许用户自定义工作频率、频道管理、功能配置,并执行数据备份与恢复、固件更新等功能。本软件是无线电爱好者和专业用户的实用工具,需在遵守无线电法规的前提下使用。1.欧标TH-307EV3.41对讲机概述1.1对讲机的技术演进对讲机自问世以来,经历
- Windows 7上IIS7.0的全面应用
侯昂
本文还有配套的精品资源,点击获取简介:IIS7.0是微软为Windows7操作系统推出的Web服务器软件,具备模块化设计、高效管理和丰富的开发环境。它支持多种网络协议,包括HTTP、HTTPS和FTP,并通过集成安全机制和优化的性能特性,如应用程序池、FTP服务、URL重写等,为用户提供了强大的Web服务管理能力。IIS7.0的设计旨在提高资源利用率、管理便捷性,并确保服务器的安全稳定运行。1.I
- Java web开发常见中间件多版本下载备用
却诚Salong
安装问题和解决方法java中间件开发语言
备注:每次换电脑都要重新构建一下环境,下载找资源很麻烦,官网英文网页找个历史版本看不懂,还要慢慢去搜,所以直接整理一波,需要的自行收藏。1.nodejs自选版本下载:地址:https://nodejs.org/download/release/网速快,自选任何版本下载。2.maven自选版本下载:地址:https://archive.apache.org/dist/maven/maven-3/网速
- X86和ARM架构的优缺点?
心对元&鑫鑫
arm开发架构
x86和ARM是当前主流的两种处理器架构,分别主导不同领域(如PC/服务器和移动/嵌入式设备)。它们的优缺点对比如下:1.x86架构(Intel/AMD)优点:高性能:复杂指令集(CISC)设计,单条指令功能强大,适合高吞吐量计算。强大的单线程性能,尤其在浮点运算和多媒体处理(如视频编辑、游戏)。软件生态成熟:主导PC和服务器市场,兼容Windows、Linux等主流操作系统。支持大量专业软件(如
- 设计模式精讲 Day 20:状态模式(State Pattern)
在未来等你
23种设计模式精讲设计模式状态模式Java开发面向对象设计软件架构设计模式实战Java应用开发
【设计模式精讲Day20】状态模式(StatePattern)文章标签设计模式,状态模式,Java开发,面向对象设计,软件架构,设计模式实战,Java应用开发文章简述状态模式是行为型设计模式中的重要一员,用于管理对象在不同状态下的行为变化。在实际项目中,状态模式能够有效解耦状态逻辑,提升系统的可维护性和扩展性。本文作为“设计模式精讲”系列的第20天,深入讲解了状态模式的核心思想、实现方式和实际应用
- 重构未来开发范式:如何引领 AIGS 时代的技术革命
小爱想睡懒觉
重构
一、AIGS革命:AI重塑企业软件系统的三大趋势行业灵魂拷问:当所有企业系统都需要实时调用大模型能力时,您的开发框架能否支撑百万级并发?在数据安全成为刚需的时代,如何实现AI功能的合规化、私有化部署?JBoltAI的未来宣言:技术演进路径:从AIGC到AIGS的跃迁图谱技术代际核心特征JBoltAI实践成果行业价值AIGC1.0单点内容生成支持文本/代码/图像生成,提供智能客服对话模板效率提升30
- SDK 说明:从基础概念到实践应用的全面解析
Mr_-G
Linux底层软件开发编程入门SDK
一、SDK的核心定义与本质内涵SDK(SoftwareDevelopmentKit,软件开发工具包)是一组为特定软件平台、编程语言或软件框架提供的开发工具集合。它本质上是技术提供商将复杂的底层技术封装后,向开发者开放的“技术接口包”,其核心目的是降低开发门槛、提升开发效率,让开发者无需从零构建基础功能,直接基于封装好的工具和接口实现业务逻辑。从技术架构看,SDK包含三大核心要素:API(应用程序接
- 探秘Swift高级开发:深度解析与实践指南
强妲佳Darlene
探秘Swift高级开发:深度解析与实践指南Advanced-SwiftNotesofAdvancedSwift.《swift进阶》学习笔记swift5.3项目地址:https://gitcode.com/gh_mirrors/ad/Advanced-Swift在软件开发的世界里,掌握一门编程语言的精髓,意味着你可以创造出无限可能的应用。而Swift,这款由Apple推出的高性能编程语言,以其易学易
- 跨平台+高颜值+免费,一款牛逼的开源阅读神器!
梦玄狸
开源
在当今数字阅读时代,许多阅读软件要么功能单一,要么界面复杂,难以满足用户的需求。例如,多设备同步阅读进度时,功能常常不稳定;做笔记和标注时,操作又显得繁琐。此外,平台兼容性差、数据同步困难等问题,也严重影响了阅读体验。今天,我要为大家介绍一款革命性的开源阅读工具——Readest,它不仅提供完整的跨平台支持,还具备强大的功能特性,能够帮助用户轻松实现优质的阅读体验。核心优势全平台覆盖,无缝同步Re
- 数据恢复软件:Recuva使用全攻略
丹力
本文还有配套的精品资源,点击获取简介:在IT领域,误删除重要软件或文件是常见问题。为解决这一难题,Recuva数据恢复软件应运而生,它由Piriform公司开发,支持多种文件类型和文件系统的恢复。其工作原理是利用Windows文件系统的特性,寻找尚未被覆盖的已删除文件。用户可以使用Recuva的标准模式或深度扫描模式进行高效恢复,并将其保存至指定位置。尽管Recuva能有效恢复大部分文件,但定期备
- 高精度相机:工业自动化的“慧眼”,驱动智能制造新未来
lingling009
数码相机
在当今工业4.0时代,自动化技术的飞速发展正重塑制造业格局。作为工业视觉系统的核心组件,高精度相机扮演着“智慧之眼”的角色,帮助企业在复杂环境中实现精准识别与高效操作。迁移科技,自2017年成立以来,已成长为行业领先的3D工业相机和3D视觉系统供应商。凭借在硬件、算法及软件领域的技术积累,我们打造了稳定、易用、高回报的AI+3D视觉解决方案,服务于新能源、汽车、化工、家电、金属制造等行业。本文将聚
- 结构光相机:重塑工业自动化的“智慧之眼”,驱动智能制造新未来
lingling009
数码相机
一、迁移科技——3D视觉领域的创新引擎迁移科技成立于2017年,凭借结构光相机核心技术,已成为全球领先的3D工业视觉系统供应商。累计融资数亿元,深耕硬件、算法与软件三位一体技术,打造“稳定、易用、高回报”的AI+3D视觉解决方案,服务新能源、汽车、化工等10+行业,赋能工业自动化转型升级。二、结构光相机如何破解工业四大痛点1:高精度定位——汽车装配的“毫米级守护者”痛点:传统2D视觉无法捕捉曲面零
- 从开源小白到 Apache Member,我的成长之路
开源小秘书
云栖社区Apache高并发
我们走过的每一步路,都会留下印记,越坚实,越清晰。近日,Apache软件基金会(ASF)官方Blog宣布全球新增40位ApacheMember,张乎兴有幸成为其中一位。目前,全球共有771位ASFMember,中国仅13位。本文将分享作者从0基础的开源小白,一路走来的感触,希望把期间的经历分享出来,让更多的人看到,世界开源舞台的中国力量。只要有持续的付出,总会有所收获。初次参与开源2014年,我加
- Java开发的智能新时代——如何利用AI工具提升编程效率
inscode_055
最新接入DeepSeek-V3模型,点击下载最新版本InsCodeAIIDE标题:Java开发的智能新时代——如何利用AI工具提升编程效率引言在当今快速发展的科技时代,Java作为一门广泛应用的编程语言,在企业级应用、Web开发、移动应用等领域占据着重要地位。然而,随着项目复杂度的增加和开发周期的缩短,传统的开发方式已难以满足现代开发的需求。幸运的是,智能化的工具软件如InsCodeAIIDE正逐
- WPF 之 exe 单文件打包工具:LibZ
外来物种
桌面软件WPFC#
▪前言在VS开发过程中我们需要不断的编译软件并进行测试,同时VS会自动在项目跟目录的\bin\Debug文件夹里生成一系列文件(包括程序执行的主exe文件)。对于简单WPF程序,我们通常可以直接拷贝[ProjectSub]\bin\Debug下程序主exe文件就可以到其他机子使用了,当然前提是机子要已经装了对应的.NetFormework版本库但是有时候我们会在项目引入其他第三方库(非.Net框架
- Paper Reading《SoK: Prudent Evaluation Practices for Fuzzing》
小苑同学
安全性测试网络安全
论文链接:https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=10646824IEEESSP20241Introduction(背景意义)模糊测试是发现软件漏洞的高效方法,被Meta、Google等企业广泛应用,且大量学术研究持续改进其技术(如覆盖反馈、领域扩展)。过去六年(2018-2023)中,顶级安全与软件工程会议上发表了超280
- 2021 SoK: The Progress, Challenges, and Perspectives of Directed Greybox Fuzzing
席八
论文阅读综述安全
摘要灰盒模糊已经成为最具可扩展性和实用性的软件测试方法。大多数灰盒模糊工具都是基于覆盖率的,因为代码覆盖率与bug覆盖率是紧密相关的。然而,由于大多数覆盖的代码可能不包含错误,盲目扩展代码覆盖的效率较低,特别是在角落的情况下。不像基于覆盖的fuzzer以一种无方向的方式扩展代码覆盖,有方向的fuzzer将大部分的时间预算花在到达特定的目标位置(例如,bug倾向区)而不会浪费资源去强调不相关的部分。
- 论文学习_SoK: An Essential Guide For Using Malware Sandboxes In Security Applications: Challenges, Pitfa
kitsch0x97
学习
0.文章概述恶意软件沙箱尽管在安全应用程序中带来许多优势,但其复杂的选择、配置和使用过程常让新用户不知所措,甚至可能导致错误的部署,进而对安全分析结果产生负面影响。目前,缺乏系统化的指导来帮助用户正确选择和应用沙箱工具,这种知识空白阻碍了沙箱在不同研究领域中的有效应用。为了填补这一知识空白,研究团队系统分析了84篇关于x86/64恶意软件沙箱的学术论文,并提出了一种新颖的框架,以简化沙箱组件和操作
- 电子词典开源项目源代码完全解析
本文还有配套的精品资源,点击获取简介:电子词典作为数字化学习工具,已由传统硬件发展为可定制的开源软件应用。本源代码提供深入理解其工作机制的机会,包括用户界面设计、词典数据库、查询引擎、翻译算法等。源代码通常由主流编程语言编写,涉及到数据结构与算法、UI设计、数据库管理、自然语言处理、本地化与多语言支持、版本控制、软件工程、API接口以及开源社区的协作和交流。1.电子词典工作原理和定制功能电子词典工
- 深入浅出Java Annotation(元注解和自定义注解)
Josh_Persistence
Java Annotation元注解自定义注解
一、基本概述
Annontation是Java5开始引入的新特征。中文名称一般叫注解。它提供了一种安全的类似注释的机制,用来将任何的信息或元数据(metadata)与程序元素(类、方法、成员变量等)进行关联。
更通俗的意思是为程序的元素(类、方法、成员变量)加上更直观更明了的说明,这些说明信息是与程序的业务逻辑无关,并且是供指定的工具或
- mysql优化特定类型的查询
annan211
java工作mysql
本节所介绍的查询优化的技巧都是和特定版本相关的,所以对于未来mysql的版本未必适用。
1 优化count查询
对于count这个函数的网上的大部分资料都是错误的或者是理解的都是一知半解的。在做优化之前我们先来看看
真正的count()函数的作用到底是什么。
count()是一个特殊的函数,有两种非常不同的作用,他可以统计某个列值的数量,也可以统计行数。
在统
- MAC下安装多版本JDK和切换几种方式
棋子chessman
jdk
环境:
MAC AIR,OS X 10.10,64位
历史:
过去 Mac 上的 Java 都是由 Apple 自己提供,只支持到 Java 6,并且OS X 10.7 开始系统并不自带(而是可选安装)(原自带的是1.6)。
后来 Apple 加入 OpenJDK 继续支持 Java 6,而 Java 7 将由 Oracle 负责提供。
在终端中输入jav
- javaScript (1)
Array_06
JavaScriptjava浏览器
JavaScript
1、运算符
运算符就是完成操作的一系列符号,它有七类: 赋值运算符(=,+=,-=,*=,/=,%=,<<=,>>=,|=,&=)、算术运算符(+,-,*,/,++,--,%)、比较运算符(>,<,<=,>=,==,===,!=,!==)、逻辑运算符(||,&&,!)、条件运算(?:)、位
- 国内顶级代码分享网站
袁潇含
javajdkoracle.netPHP
现在国内很多开源网站感觉都是为了利益而做的
当然利益是肯定的,否则谁也不会免费的去做网站
&
- Elasticsearch、MongoDB和Hadoop比较
随意而生
mongodbhadoop搜索引擎
IT界在过去几年中出现了一个有趣的现象。很多新的技术出现并立即拥抱了“大数据”。稍微老一点的技术也会将大数据添进自己的特性,避免落大部队太远,我们看到了不同技术之间的边际的模糊化。假如你有诸如Elasticsearch或者Solr这样的搜索引擎,它们存储着JSON文档,MongoDB存着JSON文档,或者一堆JSON文档存放在一个Hadoop集群的HDFS中。你可以使用这三种配
- mac os 系统科研软件总结
张亚雄
mac os
1.1 Microsoft Office for Mac 2011
大客户版,自行搜索。
1.2 Latex (MacTex):
系统环境:https://tug.org/mactex/
&nb
- Maven实战(四)生命周期
AdyZhang
maven
1. 三套生命周期 Maven拥有三套相互独立的生命周期,它们分别为clean,default和site。 每个生命周期包含一些阶段,这些阶段是有顺序的,并且后面的阶段依赖于前面的阶段,用户和Maven最直接的交互方式就是调用这些生命周期阶段。 以clean生命周期为例,它包含的阶段有pre-clean, clean 和 post
- Linux下Jenkins迁移
aijuans
Jenkins
1. 将Jenkins程序目录copy过去 源程序在/export/data/tomcatRoot/ofctest-jenkins.jd.com下面 tar -cvzf jenkins.tar.gz ofctest-jenkins.jd.com &
- request.getInputStream()只能获取一次的问题
ayaoxinchao
requestInputstream
问题:在使用HTTP协议实现应用间接口通信时,服务端读取客户端请求过来的数据,会用到request.getInputStream(),第一次读取的时候可以读取到数据,但是接下来的读取操作都读取不到数据
原因: 1. 一个InputStream对象在被读取完成后,将无法被再次读取,始终返回-1; 2. InputStream并没有实现reset方法(可以重
- 数据库SQL优化大总结之 百万级数据库优化方案
BigBird2012
SQL优化
网上关于SQL优化的教程很多,但是比较杂乱。近日有空整理了一下,写出来跟大家分享一下,其中有错误和不足的地方,还请大家纠正补充。
这篇文章我花费了大量的时间查找资料、修改、排版,希望大家阅读之后,感觉好的话推荐给更多的人,让更多的人看到、纠正以及补充。
1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。
2.应尽量避免在 where
- jsonObject的使用
bijian1013
javajson
在项目中难免会用java处理json格式的数据,因此封装了一个JSONUtil工具类。
JSONUtil.java
package com.bijian.json.study;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
- [Zookeeper学习笔记之六]Zookeeper源代码分析之Zookeeper.WatchRegistration
bit1129
zookeeper
Zookeeper类是Zookeeper提供给用户访问Zookeeper service的主要API,它包含了如下几个内部类
首先分析它的内部类,从WatchRegistration开始,为指定的znode path注册一个Watcher,
/**
* Register a watcher for a particular p
- 【Scala十三】Scala核心七:部分应用函数
bit1129
scala
何为部分应用函数?
Partially applied function: A function that’s used in an expression and that misses some of its arguments.For instance, if function f has type Int => Int => Int, then f and f(1) are p
- Tomcat Error listenerStart 终极大法
ronin47
tomcat
Tomcat报的错太含糊了,什么错都没报出来,只提示了Error listenerStart。为了调试,我们要获得更详细的日志。可以在WEB-INF/classes目录下新建一个文件叫logging.properties,内容如下
Java代码
handlers = org.apache.juli.FileHandler, java.util.logging.ConsoleHa
- 不用加减符号实现加减法
BrokenDreams
实现
今天有群友发了一个问题,要求不用加减符号(包括负号)来实现加减法。
分析一下,先看最简单的情况,假设1+1,按二进制算的话结果是10,可以看到从右往左的第一位变为0,第二位由于进位变为1。
 
- 读《研磨设计模式》-代码笔记-状态模式-State
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
/*
当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类
状态模式主要解决的是当控制一个对象状态的条件表达式过于复杂时的情况
把状态的判断逻辑转移到表示不同状态的一系列类中,可以把复杂的判断逻辑简化
如果在
- CUDA程序block和thread超出硬件允许值时的异常
cherishLC
CUDA
调用CUDA的核函数时指定block 和 thread大小,该大小可以是dim3类型的(三维数组),只用一维时可以是usigned int型的。
以下程序验证了当block或thread大小超出硬件允许值时会产生异常!!!GPU根本不会执行运算!!!
所以验证结果的正确性很重要!!!
在VS中创建CUDA项目会有一个模板,里面有更详细的状态验证。
以下程序在K5000GPU上跑的。
- 诡异的超长时间GC问题定位
chenchao051
jvmcmsGChbaseswap
HBase的GC策略采用PawNew+CMS, 这是大众化的配置,ParNew经常会出现停顿时间特别长的情况,有时候甚至长到令人发指的地步,例如请看如下日志:
2012-10-17T05:54:54.293+0800: 739594.224: [GC 739606.508: [ParNew: 996800K->110720K(996800K), 178.8826900 secs] 3700
- maven环境快速搭建
daizj
安装mavne环境配置
一 下载maven
安装maven之前,要先安装jdk及配置JAVA_HOME环境变量。这个安装和配置java环境不用多说。
maven下载地址:http://maven.apache.org/download.html,目前最新的是这个apache-maven-3.2.5-bin.zip,然后解压在任意位置,最好地址中不要带中文字符,这个做java 的都知道,地址中出现中文会出现很多
- PHP网站安全,避免PHP网站受到攻击的方法
dcj3sjt126com
PHP
对于PHP网站安全主要存在这样几种攻击方式:1、命令注入(Command Injection)2、eval注入(Eval Injection)3、客户端脚本攻击(Script Insertion)4、跨网站脚本攻击(Cross Site Scripting, XSS)5、SQL注入攻击(SQL injection)6、跨网站请求伪造攻击(Cross Site Request Forgerie
- yii中给CGridView设置默认的排序根据时间倒序的方法
dcj3sjt126com
GridView
public function searchWithRelated() {
$criteria = new CDbCriteria;
$criteria->together = true; //without th
- Java集合对象和数组对象的转换
dyy_gusi
java集合
在开发中,我们经常需要将集合对象(List,Set)转换为数组对象,或者将数组对象转换为集合对象。Java提供了相互转换的工具,但是我们使用的时候需要注意,不能乱用滥用。
1、数组对象转换为集合对象
最暴力的方式是new一个集合对象,然后遍历数组,依次将数组中的元素放入到新的集合中,但是这样做显然过
- nginx同一主机部署多个应用
geeksun
nginx
近日有一需求,需要在一台主机上用nginx部署2个php应用,分别是wordpress和wiki,探索了半天,终于部署好了,下面把过程记录下来。
1. 在nginx下创建vhosts目录,用以放置vhost文件。
mkdir vhosts
2. 修改nginx.conf的配置, 在http节点增加下面内容设置,用来包含vhosts里的配置文件
#
- ubuntu添加admin权限的用户账号
hongtoushizi
ubuntuuseradd
ubuntu创建账号的方式通常用到两种:useradd 和adduser . 本人尝试了useradd方法,步骤如下:
1:useradd
使用useradd时,如果后面不加任何参数的话,如:sudo useradd sysadm 创建出来的用户将是默认的三无用户:无home directory ,无密码,无系统shell。
顾应该如下操作:
- 第五章 常用Lua开发库2-JSON库、编码转换、字符串处理
jinnianshilongnian
nginxlua
JSON库
在进行数据传输时JSON格式目前应用广泛,因此从Lua对象与JSON字符串之间相互转换是一个非常常见的功能;目前Lua也有几个JSON库,本人用过cjson、dkjson。其中cjson的语法严格(比如unicode \u0020\u7eaf),要求符合规范否则会解析失败(如\u002),而dkjson相对宽松,当然也可以通过修改cjson的源码来完成
- Spring定时器配置的两种实现方式OpenSymphony Quartz和java Timer详解
yaerfeng1989
timerquartz定时器
原创整理不易,转载请注明出处:Spring定时器配置的两种实现方式OpenSymphony Quartz和java Timer详解
代码下载地址:http://www.zuidaima.com/share/1772648445103104.htm
有两种流行Spring定时器配置:Java的Timer类和OpenSymphony的Quartz。
1.Java Timer定时
首先继承jav
- Linux下df与du两个命令的差别?
pda158
linux
一、df显示文件系统的使用情况,与du比較,就是更全盘化。 最经常使用的就是 df -T,显示文件系统的使用情况并显示文件系统的类型。 举比例如以下: [root@localhost ~]# df -T Filesystem Type &n
- [转]SQLite的工具类 ---- 通过反射把Cursor封装到VO对象
ctfzh
VOandroidsqlite反射Cursor
在写DAO层时,觉得从Cursor里一个一个的取出字段值再装到VO(值对象)里太麻烦了,就写了一个工具类,用到了反射,可以把查询记录的值装到对应的VO里,也可以生成该VO的List。
使用时需要注意:
考虑到Android的性能问题,VO没有使用Setter和Getter,而是直接用public的属性。
表中的字段名需要和VO的属性名一样,要是不一样就得在查询的SQL中
- 该学习笔记用到的Employee表
vipbooks
oraclesql工作
这是我在学习Oracle是用到的Employee表,在该笔记中用到的就是这张表,大家可以用它来学习和练习。
drop table Employee;
-- 员工信息表
create table Employee(
-- 员工编号
EmpNo number(3) primary key,
-- 姓