需要做一个项目管理工具,其中使用到了甘特图。发现全网甘特图解决方案比较少,于是自动动手丰衣足食。前面我用Python和Node.js前端都做过,这次仅仅是移植到Android上面。其实甘特图非常简单,开发也不难,如果我专职去做,能做出一个非常棒产品。我写这个只是消遣,玩玩,闲的蛋痛,所以不怎么上心,就搞成下面这德行吧。仅仅供大家学习,参考。那天心情好了,完善一下。屏幕布局文件
HarmonyOS实战:List拖拽位置交换的多种实现方式
IT小码哥丶
HarmonyOSlist数据结构harmonyosandroid华为
背景在最近日常工作中,遇到需要实现拖拽列表中的元素进行位置交换的需求。第一时间翻看了鸿蒙官方文档,发现官方只给Grid提供了Item交换位置的实现方式,然而List并没有提供,于是需要自己动手去实现。本篇文章详细介绍了两种不同的方式去实现List的位置交换。技术实现方式一使用列表的手势事件实现位置交换。先实现List的onItemDragStart方法。该方法表示拖拽列表元素时触发。.onItem
分类树/装袋法/随机森林算法的R语言实现
廖致君
R
原文首发于简书于[2018.06.12]本文是我自己动手用R语言写的实现分类树的代码,以及在此基础上写的袋装法(bagging)和随机森林(randomforest)的算法实现。全文的结构是:分类树基本知识predginisplitrulesplitrule_bestsplitrule_randomsplittingbuildTreepredict装袋法与随机森林基本知识baggingpredic
数据库系统概论(二十)数据库恢复技术
珹洺
#数据库系统概论数据库oracle
数据库系统概论(二十)数据库恢复技术前言一、事务的基本概念1.什么是事务?2.事务的两种"打开方式"2.1隐式事务2.2显式事务:自己动手打包操作3.事务的四大"铁律3.1原子性3.2一致性3.3隔离性3.4持久性4.为什么需要事务?二、数据库恢复概述1.为什么说数据库故障“不可避免”?1.1计算机系统自身的故障1.2人为导致的故障2.故障会对数据库造成什么影响?2.1数据库处于“不一致状态”2.
好看的文章html页面,一篇文章教你学会HTML
黄一孟
好看的文章html页面
如果你不致力于成为美工的话,那么作为开发人员,可以读懂HTML、必要时能进行简单修改即可。下面跟着我的思路,保证一篇文让你看懂HTML,当然,再看的过程中,最好自己动手试试,这样理解就更深了。Ok,下面开始:(下面的符号均为英文状态下输入)1、html基本规则我的网页………………………..………………….几乎所有的网页都是按照这个格式来的,这是一个网页必须具备的标记,每个标记都放在结束,只不过在省
自己动手开发编译器(七)递归下降的语法分析器
xfxf996
分析递归编译器编译语法开发
原文地址为:自己动手开发编译器(七)递归下降的语法分析器上回我们说到语法分析使用的上下文无关语言,以及描述上下文无关文法的产生式、产生式推导和语法分析树等概念。今天我们就来讨论实际编写语法分析器的方法。今天介绍的这种方法叫做递归下降(recursivedescent)法,这是一种适合手写语法编译器的方法,且非常简单。递归下降法对语言所用的文法有一些限制,但递归下降是现阶段主流的语法分析方法,因为它
HarmonyOS实战:List拖拽位置交换的多种实现方式
背景在最近日常工作中,遇到需要实现拖拽列表中的元素进行位置交换的需求。第一时间翻看了鸿蒙官方文档,发现官方只给Grid提供了Item交换位置的实现方式,然而List并没有提供,于是需要自己动手去实现。本篇文章详细介绍了两种不同的方式去实现List的位置交换。技术实现方式一使用列表的手势事件实现位置交换。先实现List的onItemDragStart方法。该方法表示拖拽列表元素时触发。.onItem
我自己动手写了一个MySQL自动化备份脚本,基于docker
FJSAY
mysql自动化docker
MySQL自动化备份Docker方案该方案仅需通过DockerCompose就能轻松完成部署。你可以自由配置数据库连接信息,无论是远程数据库,还是本地数据库,都能实现无缝对接。在备份频率设置上,支持按固定秒数间隔执行备份任务,比如设置INTERVAL_SECONDS=3600,即可实现每小时自动备份;若设为INTERVAL_SECONDS=86400,则能达成每日备份。备份文件管理方面,它同样表现
Vue3+TypeScript+Django Rest Framework 搭建个人博客(二):用户登录功能
zgj0607
Python博客vuedjangotypescriptpython
用户登录功能是一个信息系统必不可少的一部分,作为博客网站,同样需要管理员登录管理后台,游客注册后登录评论等大家好,我是落霞孤鹜,上一篇我们已经搭建好了前后端的框架的代码,并调通了前后端接口。从这一篇开始,进入到业务功能开发进程中。首先我们需要实现的功能是用户登录,用户登录功能虽然在系统开发中已经很成熟,但是当我们自己动手做的时候,会发现这个功能是那种典型的说起来容易,做起来复杂的功能,需要考虑和处
从0到1做一个“任务管理系统”:Spring Boot + Vue 实战教程(含源码)
jdyzzy
springbootvue.js后端
这篇来搞个实战项目——做一个「个人任务管理系统」。其实就是个“带进度条的待办事项清单”,你可以用来管理自己每天的工作任务、学习计划啥的。重点是:这个项目从前端到后端,通通自己动手,不光能练手SpringBoot、Vue3,还能学会前后端分离开发、接口对接、部署上线,技能点拉满!适合后端转全栈、前端想了解后端,或者就是想做个完整项目的你。一、系统功能简单说一下我们要做的系统,功能主要就这几块:添加任
linux递归删除空文件夹,Shell脚本实现递归删除空文件夹
槿翊
linux递归删除空文件夹
有时我们需要递归删除空文件夹,网上找了一下,没有发现比较好的Shell脚本,于是自己动手写了一个脚本#!/bin/bash#author:十年后的卢哥哥#des:deleteemptydirectoriesrecursivedeleteempty(){find${1:-.}-mindepth1-maxdepth1-typed|whileread-rdirdoif[[-z"$(find"$dir"-
Python Cookbook-7.14 利用 dtuple 实现对查询结果的灵活访问
我不会编程555
#Python学习python开发语言
任务想通过列名或列号,以一种灵活的方式来访问序列,比如访问数据库查询获得的行序列。解决方案使用已有的好代码总是比自己动手去实现要聪明。对于本节的任务,GregStein的dtuple模块提供了一个很好的解决方法:importdtupleimportmx.ODBC.Windowsasodbcflist=["Name","Num","LinkText"
关于easyexcel动态下拉选问题处理
DougLiang
excel开发语言java
前些日子突然碰到一个问题,说是客户的导入文件模版想支持部分导入内容的下拉选,于是我就找了easyexcel官网寻找解决方案,并没有找到合适的方案,没办法只能自己动手并分享出来,针对Java生成Excel下拉菜单时因选项过多导致的问题,也通过将下拉数据存入隐藏Sheet再引用的方式解决。直接上代码:packagecom.tlit.platform.excel.annotations;importja
LNMP、LAMP、lighttpd、spawn-fcgi、php-fpm总结
weixin_34377919
php运维前端ViewUI
2019独角兽企业重金招聘Python工程师标准>>>花了3天的时间配置了nginx+mysql+php(php-fpm)+phpmyadmin因为开始根本就没有自己动手去配置过文件,所以自己研究一天时间,在这段时间遇到很多问题,有些时候还搞不清楚fastcgi和php-fpm和lighttpd和spawn-fcgi的关系,走了不少的弯路,以下总结一下。原来很多人都用Lighttpd的Spawn-
邀请开发者共建MyBatis-Plus-Kit:一个基于MyBatis-Plus的小工具库
我是一个普通的Java后端开发者。在日常项目中使用MyBatis-Plus的过程中,总觉得可以再封装一些更通用的能力,省去一遍遍写样板代码的麻烦。于是,就自己动手尝试写了这个组件项目——MyBatis-Plus-Kit,并发布到了maven中心仓库。这个项目目前仍在持续开发中,功能还比较基础,但希望它可以慢慢变得更实用、更易用。如果你刚好也在用MyBatis-Plus,或者对开源项目感兴趣,非常欢
来摸鱼!关于我用 Cursor 写了一个电子木鱼小程序这件事
极客密码
小程序
一个周末时间,我用Cursor开发了一款电子木鱼微信小程序前言一直想用Cursor做点什么,却苦于没有灵感。笔记应用?记账工具?倒数日?这些同质化严重的应用早已泛滥成灾,做了也不过是为互联网增加一份数字垃圾。直到某个深夜,灵光一闪,欸,不如做个电子木鱼?翻遍微信小程序,搜索排名靠前的几款电子木鱼应用,发现它们如出一辙:相似的界面设计,平庸的视觉审美,还有那些无处不在的广告。既然如此,何不自己动手,
《Java SPI:像“插拔U盘”一样扩展你的程序》
山沐与山
JAVA技术小册java开发语言
博客大纲1.开场故事:从“USB接口”到SPI2.什么是SPI?一句话秒懂3.手撕JDBC:SPI的经典应用4.自己动手:实现一个“可插拔”的支付系统5.陷阱与进阶:SPI在SpringBoot中的魔改6.总结:什么时候该用SPI?1.开场故事:从“USB接口”到SPI❝想象你买了一个多功能扩展坞,插上U盘能读文件,插上键盘能打字,插上显卡还能外接显示器——而Java的SPI机制,就是代码世界的“
写一个菜鸟裹裹小程序吧
weixin_34357267
数据库后端开发工具
新手写小程序并不简单,这是我的第一次尝试学习到了很多。最近双十一过后,每天不是拿快递就是去拿快递的路上,翻开手机应用里的菜鸟裹裹查看快递是很方便的,当我在微信端搜索菜鸟裹裹小程序时,却没有发现,于是便想自己动手仿app版写一个菜鸟裹裹的小程序,对其中的快递查询物流跟踪很有兴趣。项目预览图项目效果预览项目目录结构使用的开发工具VScode和微信开发者工具平台提供:微信公众品台|小程序,在该品台注册账
excel文件合并小工具
Destiny,635
excelpython小工具渗透测试
文章目录前言一、基本思路二、编码实现三、使用测试界面如图所示功能测试前言写这个小工具的原因是因为在工作中需要将两个excel里面的数据合并一个新的文件,起初尝试通过WPS进行合并,但是奈何WPS需要收费,所以就自己动手写一个,说干就干,于是乎就有了这个用python写的小工具一、基本思路通过excel文件的路径,读取每个文件当前活跃表格的标题,创建一个新的文件“合并内容.xlsx”文件,将要合并的
自己动手写CPU
记录个人成长
linux
说明:本文根据《自动动手写CPU》一书,整理输出,对自己是一个学习记录,也分享给大家一同进步。1,理论篇1.计算机组成:处理器,输入输出,存储器2.高级编程语言->汇编指令->计算机可识别的0.1编码3.计算机架构分为复杂指令集(CISC)和精简指令集(RISC)区别是CISC每条指定对应的0,1编码串长度不一,而RISC每条指令对应的0,1编码串长度是固定的。4.架构分类4.1x86:Intel
Python小白也能玩转!手把手教你开发并部署自己的MCP Server(附完整代码+避坑指南)
AI新视界
智能体MCP人工智能python开发语言
Python小白也能玩转!手把手教你开发并部署自己的MCPServer(附完整代码+避坑指南)还在为找不到合适的协议服务器而烦恼?想自己动手开发却怕代码复杂到头秃?今天用Python+Flask实现一个MCP(MinimalCommunicationProtocol)Server,从零搭建到部署全流程拆解,代码仅50行,连注释都给你标得明明白白!一、MCPServer是什么?能干啥?MCP(自定义
golang的并发模型
u010927317
golang
1.C/C++与Go语言的“价值观”对照C的价值观摘录相信程序员:提供指针和指针运算,让C程序员天马行空的发挥自己动手,丰衣足食:提供一个很小的标准库,其余的让程序员自造保持语言的短小和简单性能优先C++价值观摘录支持多范式,不强迫程序员使用某个特定的范式不求完美,但求实用(并且立即可用)Go价值观OverallSimplicity全面的简单OrthogonalComposition正交组合Pre
HarmonyOS实战:3秒实现一个自定义轮播图
harmonyos
前言轮播图作为应用程序中最普通使用的控件被广泛应用,相信对于来发者来说并不陌生。在Android中实现一个轮播图很多选择使用第三方的插件,毕竟在有限的开发排期中自己动手去实现一个轮播图并不那么简单,需要考虑的细节很多。不过在HarmonyOS中实现一个轮播图却是十分的简单,本篇文章教你在最短的时间内快速实现一个自定义的轮播图,建议点赞收藏!实现效果需求分析支持自定义循环播放,自动播放。支持自定义播
戴尔笔记本win8系统改装win7系统
sophia天雪
win7戴尔改装系统win8
戴尔win8 系统改装win7 系统详述
第一步:使用U盘制作虚拟光驱:
1)下载安装UltraISO:注册码可以在网上搜索。
2)启动UltraISO,点击“文件”—》“打开”按钮,打开已经准备好的ISO镜像文
BeanUtils.copyProperties使用笔记
bylijinnan
java
BeanUtils.copyProperties VS PropertyUtils.copyProperties
两者最大的区别是:
BeanUtils.copyProperties会进行类型转换,而PropertyUtils.copyProperties不会。
既然进行了类型转换,那BeanUtils.copyProperties的速度比不上PropertyUtils.copyProp
MyEclipse中文乱码问题
0624chenhong
MyEclipse
一、设置新建常见文件的默认编码格式,也就是文件保存的格式。
在不对MyEclipse进行设置的时候,默认保存文件的编码,一般跟简体中文操作系统(如windows2000,windowsXP)的编码一致,即GBK。
在简体中文系统下,ANSI 编码代表 GBK编码;在日文操作系统下,ANSI 编码代表 JIS 编码。
Window-->Preferences-->General -
发送邮件
不懂事的小屁孩
send email
import org.apache.commons.mail.EmailAttachment;
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.HtmlEmail;
import org.apache.commons.mail.MultiPartEmail;
动画合集
换个号韩国红果果
htmlcss
动画 指一种样式变为另一种样式 keyframes应当始终定义0 100 过程
1 transition 制作鼠标滑过图片时的放大效果
css
.wrap{
width: 340px;height: 340px;
position: absolute;
top: 30%;
left: 20%;
overflow: hidden;
bor
网络最常见的攻击方式竟然是SQL注入
蓝儿唯美
sql注入
NTT研究表明,尽管SQL注入(SQLi)型攻击记录详尽且为人熟知,但目前网络应用程序仍然是SQLi攻击的重灾区。
信息安全和风险管理公司NTTCom Security发布的《2015全球智能威胁风险报告》表明,目前黑客攻击网络应用程序方式中最流行的,要数SQLi攻击。报告对去年发生的60亿攻击 行为进行分析,指出SQLi攻击是最常见的网络应用程序攻击方式。全球网络应用程序攻击中,SQLi攻击占
java笔记2
a-john
java
类的封装:
1,java中,对象就是一个封装体。封装是把对象的属性和服务结合成一个独立的的单位。并尽可能隐藏对象的内部细节(尤其是私有数据)
2,目的:使对象以外的部分不能随意存取对象的内部数据(如属性),从而使软件错误能够局部化,减少差错和排错的难度。
3,简单来说,“隐藏属性、方法或实现细节的过程”称为——封装。
4,封装的特性:
4.1设置
[Andengine]Error:can't creat bitmap form path “gfx/xxx.xxx”
aijuans
学习Android遇到的错误
最开始遇到这个错误是很早以前了,以前也没注意,只当是一个不理解的bug,因为所有的texture,textureregion都没有问题,但是就是提示错误。
昨天和美工要图片,本来是要背景透明的png格式,可是她却给了我一个jpg的。说明了之后她说没法改,因为没有png这个保存选项。
我就看了一下,和她要了psd的文件,还好我有一点
自己写的一个繁体到简体的转换程序
asialee
java转换繁体filter简体
今天调研一个任务,基于java的filter实现繁体到简体的转换,于是写了一个demo,给各位博友奉上,欢迎批评指正。
实现的思路是重载request的调取参数的几个方法,然后做下转换。
android意图和意图监听器技术
百合不是茶
android显示意图隐式意图意图监听器
Intent是在activity之间传递数据;Intent的传递分为显示传递和隐式传递
显式意图:调用Intent.setComponent() 或 Intent.setClassName() 或 Intent.setClass()方法明确指定了组件名的Intent为显式意图,显式意图明确指定了Intent应该传递给哪个组件。
隐式意图;不指明调用的名称,根据设
spring3中新增的@value注解
bijian1013
javaspring@Value
在spring 3.0中,可以通过使用@value,对一些如xxx.properties文件中的文件,进行键值对的注入,例子如下:
1.首先在applicationContext.xml中加入:
<beans xmlns="http://www.springframework.
Jboss启用CXF日志
sunjing
logjbossCXF
1. 在standalone.xml配置文件中添加system-properties:
<system-properties> <property name="org.apache.cxf.logging.enabled" value=&
【Hadoop三】Centos7_x86_64部署Hadoop集群之编译Hadoop源代码
bit1129
centos
编译必需的软件
Firebugs3.0.0
Maven3.2.3
Ant
JDK1.7.0_67
protobuf-2.5.0
Hadoop 2.5.2源码包
Firebugs3.0.0
http://sourceforge.jp/projects/sfnet_findbug
struts2验证框架的使用和扩展
白糖_
框架xmlbeanstruts正则表达式
struts2能够对前台提交的表单数据进行输入有效性校验,通常有两种方式:
1、在Action类中通过validatexx方法验证,这种方式很简单,在此不再赘述;
2、通过编写xx-validation.xml文件执行表单验证,当用户提交表单请求后,struts会优先执行xml文件,如果校验不通过是不会让请求访问指定action的。
本文介绍一下struts2通过xml文件进行校验的方法并说
记录-感悟
braveCS
感悟
再翻翻以前写的感悟,有时会发现自己很幼稚,也会让自己找回初心。
2015-1-11 1. 能在工作之余学习感兴趣的东西已经很幸福了;
2. 要改变自己,不能这样一直在原来区域,要突破安全区舒适区,才能提高自己,往好的方面发展;
3. 多反省多思考;要会用工具,而不是变成工具的奴隶;
4. 一天内集中一个定长时间段看最新资讯和偏流式博
编程之美-数组中最长递增子序列
bylijinnan
编程之美
import java.util.Arrays;
import java.util.Random;
public class LongestAccendingSubSequence {
/**
* 编程之美 数组中最长递增子序列
* 书上的解法容易理解
* 另一方法书上没有提到的是,可以将数组排序(由小到大)得到新的数组,
* 然后求排序后的数组与原数
读书笔记5
chengxuyuancsdn
重复提交struts2的token验证
1、重复提交
2、struts2的token验证
3、用response返回xml时的注意
1、重复提交
(1)应用场景
(1-1)点击提交按钮两次。
(1-2)使用浏览器后退按钮重复之前的操作,导致重复提交表单。
(1-3)刷新页面
(1-4)使用浏览器历史记录重复提交表单。
(1-5)浏览器重复的 HTTP 请求。
(2)解决方法
(2-1)禁掉提交按钮
(2-2)
[时空与探索]全球联合进行第二次费城实验的可能性
comsci
二次世界大战前后,由爱因斯坦参加的一次在海军舰艇上进行的物理学实验 -费城实验
至今给我们大家留下很多迷团.....
关于费城实验的详细过程,大家可以在网络上搜索一下,我这里就不详细描述了
在这里,我的意思是,现在
easy connect 之 ORA-12154: TNS: 无法解析指定的连接标识符
daizj
oracleORA-12154
用easy connect连接出现“tns无法解析指定的连接标示符”的错误,如下:
C:\Users\Administrator>sqlplus username/
[email protected]:1521/orcl
SQL*Plus: Release 10.2.0.1.0 – Production on 星期一 5月 21 18:16:20 2012
Copyright (c) 198
简单排序:归并排序
dieslrae
归并排序
public void mergeSort(int[] array){
int temp = array.length/2;
if(temp == 0){
return;
}
int[] a = new int[temp];
int
C语言中字符串的\0和空格
dcj3sjt126com
c
\0 为字符串结束符,比如说:
abcd (空格)cdefg;
存入数组时,空格作为一个字符占有一个字节的空间,我们
解决Composer国内速度慢的办法
dcj3sjt126com
Composer
用法:
有两种方式启用本镜像服务:
1 将以下配置信息添加到 Composer 的配置文件 config.json 中(系统全局配置)。见“例1”
2 将以下配置信息添加到你的项目的 composer.json 文件中(针对单个项目配置)。见“例2”
为了避免安装包的时候都要执行两次查询,切记要添加禁用 packagist 的设置,如下 1 2 3 4 5
高效可伸缩的结果缓存
shuizhaosi888
高效可伸缩的结果缓存
/**
* 要执行的算法,返回结果v
*/
public interface Computable<A, V> {
public V comput(final A arg);
}
/**
* 用于缓存数据
*/
public class Memoizer<A, V> implements Computable<A,
三点定位的算法
haoningabc
c算法
三点定位,
已知a,b,c三个顶点的x,y坐标
和三个点都z坐标的距离,la,lb,lc
求z点的坐标
原理就是围绕a,b,c 三个点画圆,三个圆焦点的部分就是所求
但是,由于三个点的距离可能不准,不一定会有结果,
所以是三个圆环的焦点,环的宽度开始为0,没有取到则加1
运行
gcc -lm test.c
test.c代码如下
#include "stdi
epoll使用详解
jimmee
clinux服务端编程epoll
epoll - I/O event notification facility在linux的网络编程中,很长的时间都在使用select来做事件触发。在linux新的内核中,有了一种替换它的机制,就是epoll。相比于select,epoll最大的好处在于它不会随着监听fd数目的增长而降低效率。因为在内核中的select实现中,它是采用轮询来处理的,轮询的fd数目越多,自然耗时越多。并且,在linu
Hibernate对Enum的映射的基本使用方法
linzx0212
enumHibernate
枚举
/**
* 性别枚举
*/
public enum Gender {
MALE(0), FEMALE(1), OTHER(2);
private Gender(int i) {
this.i = i;
}
private int i;
public int getI
第10章 高级事件(下)
onestopweb
事件
index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/
孙子兵法
roadrunners
孙子兵法
始计第一
孙子曰:
兵者,国之大事,死生之地,存亡之道,不可不察也。
故经之以五事,校之以计,而索其情:一曰道,二曰天,三曰地,四曰将,五
曰法。道者,令民于上同意,可与之死,可与之生,而不危也;天者,阴阳、寒暑
、时制也;地者,远近、险易、广狭、死生也;将者,智、信、仁、勇、严也;法
者,曲制、官道、主用也。凡此五者,将莫不闻,知之者胜,不知之者不胜。故校
之以计,而索其情,曰
MySQL双向复制
tomcat_oracle
mysql
本文包括:
主机配置
从机配置
建立主-从复制
建立双向复制
背景
按照以下简单的步骤:
参考一下:
在机器A配置主机(192.168.1.30)
在机器B配置从机(192.168.1.29)
我们可以使用下面的步骤来实现这一点
步骤1:机器A设置主机
在主机中打开配置文件 ,
zoj 3822 Domination(dp)
阿尔萨斯
Mina
题目链接:zoj 3822 Domination
题目大意:给定一个N∗M的棋盘,每次任选一个位置放置一枚棋子,直到每行每列上都至少有一枚棋子,问放置棋子个数的期望。
解题思路:大白书上概率那一张有一道类似的题目,但是因为时间比较久了,还是稍微想了一下。dp[i][j][k]表示i行j列上均有至少一枚棋子,并且消耗k步的概率(k≤i∗j),因为放置在i+1~n上等价与放在i+1行上,同理