- 组合优于继承,为什么不推荐使用继承?
骆驼整理说
Java基础java开发语言
继承是面向对象的四大特性之一,用来表示类之间的is-a关系,可以解决代码复用的问题。虽然继承有诸多作用,但继承层次过深、过复杂,也会影响到代码的可维护性。假设我们要设计一个关于鸟的类。将“鸟”这样一个抽象的事物概念,定义为一个抽象类AbstractBird。所有更细分的鸟,比如麻雀、鸽子、乌鸦等,都继承这个抽象类。大部分鸟都会飞,那可不可以在AbstractBird抽象类中,定义一个fly()方法
- 制作自己的Linux系统与启动光盘(3)
若水心境
原创linuxmenuunderscorevideo图形border
丰富的isolinux应用本小节讲述如何完美的应用isolinux进行启动光盘的优化。上节我们已经成功的制作好了一个可启动的光盘,但是那仅是一个功能简单的启动盘,如何制作像系统安装盘一样的,功能丰富,画面优美的linux系统盘就是本节的主要内容。3.1添加背景图片首先来看一下带背景图片的启动菜单示例,如下:上图是一个简单的示例,如果您有兴趣可以做得更加精致,当然,这不是本节的重点。下面笔者将详细的
- 代码丛中窥人世——C语言杂感
十年之趣
c语言
一、条件判断这世间本没有绝对的真假,直到人发明了if语句。那些个花括号里的判决,竟比衙门里的惊堂木还威严三分。你看那else子句,像极了市井里耍把式的艺人,总要在if老爷表演罢后,才敢怯生生地溜出来讨口饭吃。三目运算符倒是伶俐得紧,活脱脱茶馆里见风使舵的茶博士,把个条件式写得比"茴字四样写法"还要花哨。只是须当心,嵌套过深便成了九曲回廊,教后来者找不着北,倒不如学那鲁镇的短工,直来直往方是正道。二
- 可以免费无限次下载PPT的网站
小白闲聊室
PPT模板网站分享
前言最近发现了一个超实用的网站,想分享给大家。在学习和工作的过程中,想必做PPT是一件让大家都很头疼的一件事。想下载一些PPT模板减少做PPT的工作量,但网上大多精美的PPT都是需要付费才能下载使用。即使免费也有次数限制,次数用完后就不能再下载那些精美的PPT了。那到底有没有免费的PPT模板可用呢?答案是肯定的。今天分享的这个网站就可以免费无限次的下载各种精美的PPT模板。网站介绍在这个网站上,你
- 硬件工程师设计电路就是“抄”
麦克斯的电子星球
硬件工程嵌入式硬件材料工程硬件架构
曾经我还是学生的时候特别反感抄袭这件事,感觉为什么老外就能做出优秀的设计,中国的产品总是抄人家的,如果我以后成为工程师我一定做出自己的优秀设计,再也不抄人家的;随着我工作阅历的增加我发现那时的我确实只能做一个学生,抄别人的真香首先我想回答大家一个疑问,为什么要抄人家的,难道是自己不会做吗?有的人确实不会做,但是大部分的研发人员是会做的,那既然会做为什么还抄人家的?因为单从设计上来讲我们要实现一个功
- 设计模式之单例
风清扬不会武功
设计模式设计模式java
单例模式是一种简单且最常用的设计模式,有人可能会说我也没有用过单例模式,那如果你是一枚可爱的Java程序猿/媛,那你肯定用过Spring吧,而SpringBean默认的构建模式都是单例的,而Spring为什么会这么做呢,显然这和单例的优势有关。什么是单例模式?属于创建类型的一种常用的软件设计模式。通过单例模式的方法创建的类在当前进程中只有一个实例(根据需要,也有可能一个线程中属于单例,如:仅线程上
- 深度学习:从神经网络到智能应用
Jason_Orton
深度学习神经网络人工智能机器学习
目录引言一.什么是深度学习?二.深度学习的基本原理1.神经网络的组成2.激活函数3.反向传播(Backpropagation)三.深度学习的常见模型四.深度学习的应用场景五.深度学习的挑战与未来结语引言深度学习(DeepLearning)作为机器学习的一个分支,近年来在人工智能领域取得了革命性的进展。无论是语音识别、图像识别,还是自动驾驶、自然语言处理,深度学习都在推动着技术的发展和行业的变革。那
- Deepseek的缺陷
windwind2000
游戏业思考创业创新游戏玩游戏游戏策划
Deepseek什么都略懂,但答案很难让人满意。内容蜻蜓点水,什么都有点,但浅薄的很。让玩家很无语。一些软件类的答案貌似比较详细,但距离能用还差很远。-----------------一些问题的答案如下:《b4》是一款经典的生存恐怖游戏,以下是一些通用的攻略建议,帮助玩家顺利通关:1.资源管理节约弹药:尽量使用手枪等低威力武器对付普通敌人,保留高威力武器应对Boss战。合理使用草药:将绿色草药与红
- 千米之外的景色 之 远距离无线图传
沈杰727
射频无线图传Wi-Fi射频工程网络实时音视频经验分享
无线图传,一个老生常谈的技术,但是门心自问我们真的了解图传么?那我们今天就来仔细得聊聊这个无线图传技术。当下无线图传技术主要分为四个类别即OFDM技术,COFDM技术,WIFI技术和2015年大疆推出的Lightbridge技术。那这些技术有哪些优缺点,哪种技术的运用最多最广泛呢,那接下来我们就好好分析分析以上的几种技术。OFDM技术OFDM技术是多载波调制的一种,该技术
- 解决Android SDK / Android Studio(IntelliJ IDEA)更新不了(被墙)的问题
coder_jo
脚本linuxandroidsdk
昨天更新androidsdk时,发现developer.android.com被墙了,手上也没有代理,再者androidsdkmanager更新有个不太好的地方是,只有一台机更新还好,但如果有多台机要更新,每台机都要重新下载一遍,那效率.....1)先说AndroidSDK单独更新的问题观察了一下日志发现Fetchinghttp://dl-ssl.google.com/android/reposi
- 理解CPU与GPU频繁数据传输
_DCG_
计算机视觉深度学习神经网络CPUGPU数据传输
基础理解在学习深度学习神经网络过程中,有时候会遇到一些描述“尽量避免CPU与GPU频繁数据传输”。那这句话应该如何理解呢?我们知道CPU可以访问内存,而GPU也有自己的显存。要完成功能一般都是CPU从硬盘或者其他数据源读取数据到内存中,然后将内存中的传输到GPU的显存中,GPU从显存中获取数据并进行计算,并最终将计算的结果返回给CPU的内存中。整体的计算就像上面描述,但是不可忽略的是:从CPU内存
- 用AI写游戏3——python实现坦克大战1
AnalogElectronic
python数据人工智能python游戏pygame
用python实现一个坦克大战小游戏,屏幕大小宽高1000x800px敌人有10个坦克,会发射子弹,会随机自由移动,碰撞到屏幕边界会反弹,我方是一个黄颜色坦克,能发子弹,能移动,子弹集中敌人坦克就爆炸消失,并得到10分,所有坦克消灭后游戏胜利,我方被敌人坦克子弹击中则爆炸消失,游戏结束。1、KIMI实现实现效果:实现一个完整的坦克大战小游戏需要使用Python的图形库,比如pygame。以下是一个
- 用AI写游戏3——用java实现坦克大战游戏1
AnalogElectronic
Java游戏程序设计教程游戏javapython
用javaswing,jdk8实现一个坦克大战小游戏,屏幕大小宽高1000x800px敌人有10个坦克,会发射子弹,会随机自由移动,碰撞到屏幕边界会反弹,我方是一个黄颜色坦克,能发子弹,能移动,移动方向子弹方向也要跟着改变,子弹击中敌人坦克就爆炸消失,并得到10分,所有坦克消灭后游戏胜利,我方被敌人坦克子弹击中则爆炸消失,游戏结束。好的,我现在需要帮用户用JavaSwing和JDK8实现一个坦克大
- Java中的Collections.synchronizedList()和CopyOnWriteArrayList
RollingCode_999
java开发语言
我们知道ArrayList在多线程的环境下并不是线程安全的,那如果我们需要在多线程的场景下使用连续存储并且数据具有有序性,可直接快速访问元素的集合时,可以使用Collections.synchronizedList()或者CopyOnWriteArrayList替代Collections.synchronizedList()Collections.synchronizedList()用于将普通的L
- 股票技术面——盘口
disgare
非it金融
股票技术面——盘口盘口基本要素分析1分钟高低点分析5分钟高低点盘口分析三要素结构位置速度之前说到,关注资金入场意愿是否强烈,以找到合适的时机入场。那这里的入场意愿是否强烈该如何判断呢技术面分析可以作为买卖时机判定的工具,但是投资还是需要基本面的分析作为支撑。也就是基本面选股,技术面判断买点卖点盘口用于判断一天内的高点与低点盘口基本要素1,昨日收盘价2,黄白线走势:白线是加权后计算出来的走势,是我们
- Selenium入门,最近看到的都师一些小白想学测试,今天就分享入门吧~
程序员-小枫
selenium自动化测试Pythonseleniumpython软件测试
Selenium入门(自动右键保存图片到本机上)前言入职测开一段时间,基本就是熟悉需求,熟悉业务,熟悉这熟悉那,再跟着需求做各种各样的测试和联调,趁着业余时间,也是学习了一下Selenium,在之前Selenium是我作为爬虫的工具,不过之后就用来做写一些自动化测试脚本啦~~(这里使用Python中的Selenium库进行Coding~~1、什么是SeleniumSelenium是一个用于Web应
- 一文教你给电脑 C 盘扩容!
予安灵
数据库
还在为C盘爆红焦虑?一文教你给电脑C盘扩容!各位电脑使用者们,是不是常常遇到C盘空间不足的困扰?软件装多了,系统更新几次,C盘那红色的容量条就开始刺眼地警示,电脑也跟着变得卡顿不堪。别慌,今天继续给大家分享超实用的电脑C盘扩容方法,这次用到电脑自带的磁盘管理功能,通过删除卷等操作来实现,还有详细步骤图文展示,包你一看就懂!(一)进入磁盘管理界面按下Win+X组合键,在弹出的菜单中选择“磁盘管理”选
- 刷力扣的技巧:4 个步骤 7 个关键点,事半功倍,冲进大厂!
后端go数据库算法力扣
最近好多人问我咋刷力扣呀,今天我就来给大家好好唠唠。我总结了7个要点和4个步骤,尤其是最后那提效4步骤,可太有用啦。大家一定要看到最后哦,记得点赞、收藏呀。要点一:别光追求刷题量,题解也得看咱好多同学呀,解开一道题就着急忙慌地去刷下一道,还把刷题数量当成衡量水平的唯一标准。就像有的同学跟我说:“阳哥,我在Leetcode刷了500题,去面腾讯有戏不?”结果咋样,还不是挂了。其实呀,咱不能光闷头刷,
- React 中的受控组件与非受控组件:深度剖析与实战应用
银之夏雪丶
react.jsjavascript前端
一、引言在如今的前端开发里,React可是响当当的角色,是咱搭建用户界面的得力帮手。一碰到表单处理和用户输入交互这些事儿,受控组件和非受控组件就派上大用场了,它们就像是两种不一样的工具,各有各的厉害之处。要是咱能把它们摸透了,知道啥时候用啥,那开发出来的React应用肯定既好用又靠谱,用户体验也差不了。二、受控组件(一)定义咋来的受控组件,简单讲,就是让表单元素的值跟React组件的state绑得
- 《震撼!“懂哥” 独特形象,世间难寻第二人!》
故障抖机灵大师
科普与知识分享深度剖析电脑windows运维生活
懂哥系列文章深度揭秘:公司“懂哥”的独特外貌形象在我们公司,“懂哥”的名号那可是无人不知、无人不晓,早已如雷贯耳。此前,大家没少听闻他那些令人忍俊不禁、啼笑皆非的趣事,想必不少人都对这位堪称“传奇”的人物的外貌形象充满了好奇。今天,就带大家全方位领略一下“懂哥”那别具一格、独树一帜的造型风采。一、独特的身姿体态“懂哥”身高刚过170cm,但他习惯性地微微驼背,这个姿势实在是太独特了,就好像他真真切
- 洛谷P1030(求先序遍历)题解
1≈∞
算法题解
题目大意:输入树的中序和后序遍历(节点为大写字母),输出先序遍历二叉树的各种遍历方式的特点。先序遍历是根左右,中序是左根右,后序是左右根。所以,已知中序和后序的话,怎么找出根节点呢?比如,后序排列的最后一个字符就是整个二叉树的根节点。然后在中序排列中找到这个根节点,就可以把中序分成左子树和右子树两部分。例如,假设中序是BADC,后序是BDCA,那后序的最后一个字符是A,所以根是A。在中序里,A的位
- 【YashanDB 知识库】单机部署报错:prohibited operation
数据库
现象部署第1步install成功,在第2步deploy时报错。报错信息:prohibitedoperation,pleasecheckiftheIPandusernamearecorrect。原因主机配置文件(hosts.toml)里的ssh登录IP地址不是本机地址导致,为了安全考虑,崖山数据库部署时不允许远程机器操作本地部署。解决办法ssh登录IP地址换成本地IP地址和端口。
- React之从0开始(2)
️○-
杂谈react.js前端前端框架
书接上回。我们介绍了index.html的基本结构。那么我就在想了,为啥必须得是index.html呢?我能不能换个名字?谁规定的运行React项目就要从index.html开始?好吧,应该是Facebook规定的。。。。。那没事了。反正结论就是不能改。如果硬要改,也不是不行,但是你得同时修改Vite或者其他构建工具的配置。然后我们还会发现,新建的一个项目里面有一个文件package.json。这
- 12. 三昧真火焚环劫 - 环形链表检测(快慢指针)
轻口味
链表java数据结构算法cppc++
哪吒在数据修仙界中继续他的修炼之旅。这一次,他来到了一片神秘的环形山脉,山脉中有一条蜿蜒的火龙,它象征着环形链表。山脉的入口处有一块巨大的石碑,上面刻着一行文字:“欲破此山,需以三昧真火之力,焚环劫之链,快慢指针定环踪。”哪吒定睛一看,石碑上还有一行小字:“链表1->2->3->4->2中存在环,需要检测并找到环的入口。”哪吒心中一动,他知道这是一道关于环形链表检测的难题,需要判断链表中是否存在环
- python求2数之和
yangguanglukou1
算法python算法
1.题目给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值target的那两个整数,并返回它们的数组下标。2.示例输入:nums=[2,7,11,15],target=9输出:[0,1]解释:因为nums[0]+nums[1]==9,返回[0,1]。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/two-sum著
- 力扣刷题 1. 两数之和
weixin_43103920
力扣leetcodepython
力扣1.两数之和题目第一次回答结果优化后代码结果分析总结题目给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值target的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。示例1:输入:nums=[2,7,11,15],target=9输出:[0,1]解释:因为nums[0]
- 用Python实现两数之和(python)
南有芙蕖
数据结构
用Python实现两数之和给定一个整数数组nums和一个目标值target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例:给定nums=[2,7,11,15],target=9因为nums[0]+nums[1]=2+7=9所以返回[0,1]方法一、暴力解法:暴力法很简单,遍历每个元素x,并查找是否
- python-两数之和
张喵喵是小仙女
每日一道算法题
'''给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。'''deftwosum(nums,tatget):hashmap={}forind,numinenumerate(nums):hashmap[num]=indfori,numinenumerate(nu
- Spring Boot集成Redisson实现延迟队列
涛哥是个大帅比
Springspringbootredisredisson延迟队列延迟消息
项目场景:在电商、支付等领域,往往会有这样的场景,用户下单后放弃支付了,那这笔订单会在指定的时间段后进行关闭操作,细心的你一定发现了像某宝、某东都有这样的逻辑,而且时间很准确,误差在1s内;那他们是怎么实现的呢?一般实现的方法有几种:使用redisson、rocketmq、rabbitmq等消息队列的延时投递功能。解决方案:一般项目集成redis的比较多,所以我这篇文章就说下redisson延迟队
- 蓝桥杯练习代码
月吟荧静
蓝桥杯训练题目蓝桥杯笔记学习
一、盛最多水的容器给定一个长度为n的整数数组height。有n条垂线,第i条线的两个端点是(i,0)和(i,height[i])。找出其中的两条线,使得它们与x轴共同构成的容器可以容纳最多的水。返回容器可以储存的最大水量。说明:你不能倾斜容器。示例1:输入:[1,8,6,2,5,4,8,3,7]输出:49解释:图中垂直线代表输入数组[1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水
- 深入浅出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,
-- 姓