- 本地GIT服务器搭建 Gitea安装教程
雪峰同学
服务器linuxcentosnginx
简介Gitea是一个极易安装,运行非常快速,安装和使用体验良好的自建Git服务。采用Go作为后端语言,这使得只要生成一个可执行程序即可。并且他还支持跨平台,支持Linux、macOS和Windows以及各种架构,除了x86,amd64,还包括ARM和PowerPC。Github地址:https://github.com/go-gitea/gitea功能支持活动时间线支持SSH以及HTTP/HTTP
- react + redux 状态管理操作
诚诚程程成
前端react.jsjavascript前端
目录1概念2Redux安装3创建子模块并导入4中间件为react注入store5在组件中使用store数据6修改store数据7提交action传参8异步状态操作9redux调试工具1概念Redux是一个全局状态管理的JS库2Redux安装在react中使用redux,官方要求安装两个其他插件:ReduxToolkit和react-reduxReduxToolkit:官方推荐编写redux逻辑的方
- linux 中建立国内IP白名单避免国外ip攻击
来自于狂人
linuxtcp/ip网络服务器运维
在Linux系统中,可以使用防火墙工具来建立国内IP白名单,以允许特定国内IP地址访问您的系统或服务。以下是使用iptables防火墙工具建立国内IP白名单的一般步骤:首先,确定您要允许的国内IP地址范围。您可以从各个IP地址查询网站或服务提供商获取国内IP地址段。使用以下命令创建一个名为whitelist.txt的文本文件,并将要允许的国内IP地址写入该文件,每行一个IP地址:viwhiteli
- mybatis的mapper动态代理开发,mapper引入的2种方式
打豆豆。
mybatismapper代理mybatis动态代理开发
mybatis-config.xml主配置文件中,mapper引入的两种方式:①通过xml路径②通过mapper接口的class路径-->使用mapper代理开发,注意namespace:和dao中UserDao对象一致;1,session获取userdao.class对象2,加载mapper.xml3,获取sql的statement4,statement把sql执行结果映射到结果集(User类,
- 群晖web文件服务器docker,群晖docker搭建数据库服务器
Kuchiki Touko
群晖docker搭建数据库服务器内容精选换一换本手册基于华为云关系型数据库实践所编写,用于指导您完成相关设置,购买更符合业务的数据库实例。创建一个外部服务器。外部服务器是存储OBS服务器信息或其他同构集群信息的载体。默认只有系统管理员才可以创建外部服务器,否则需要对所使用的FOREIGNDATAWRAPPER授权才可以创建,授权语法为:其中fdw_name为FOREIGNDATAWRAPPER的名
- C中如何在C语言中使用结构体和联合体?
计算机学长大白
Cc语言算法
C语言中如何使用结构体和联合体?在C语言编程中,结构体(Structures)和联合体(Unions)是构建复杂数据类型的关键工具,它们允许将不同类型的变量组合为单一数据类型,便于数据组织、管理和访问。下面将详细介绍结构体和联合体的基本概念、使用方法及其在实际编程中的应用,并给出示例代码。结构体(Structures)「定义」:结构体允许用户自定义数据类型,将多个不同类型的数据项组合成一个整体,每
- 【游戏开发】Unity手游使用XLua热更新增UI界面方法
归暮亭
游戏开发游戏开发c#lua游戏unity
**准备(前置条件):Xlua相关文件已导入工程,已经能够进行patchfile热更修改一、C#写一个LuaWindow基类包含3个步骤:1.读入lua文件:publicstaticboolLoadLuaScript(stringwindowName){if(!mLuaWindowFileDic.ContainsKey(windowName)){if(!LoadXLuaFile("..."+".b
- Python数据处理(一):处理 JSON、XML、CSV 三种格式数据
solocoder222
Pythonpython数据处理CodeRiver
Python数据处理系列博客来啦!本系列将以《Python数据处理》这本书为基础,以书中每章一篇博客的形式带大家一起学习Python数据处理。书中有些地方讲的不太详细,我会查阅其他资料来补充,力争每篇博客都把知识点涵盖全且通俗易懂。这本书主要讲了如何用Python处理各种类型的文件,如JSON、XML、CSV、Excel、PDF等。后面几章还会讲数据清洗、网页抓取、自动化和规模化等使用技能。我也是
- char和varchar的区别、varchar(?)中问号部分的含义、索引的作用
因特麦克斯
数据库
char和varchar的区别char是固定长度类型,当输入字符不满设定的固定长度时依旧占用固定长度的空间,补充空字节。最大长度为255个字符优点:效率高,在涉及索引和排序时缺点:占用空间使用场景:存储密码的md5值容易想到,存储固定长度的值时适合用charvarchar可变长度,只占用实际存储粗的字符串长度加上一个到两个字节(用于记录字符串长度),不会填充空格,存储的字符串长度可变优点:节约空间
- 使用redis-cli shutdown redis时出现(error) ERR Errors trying to SHUTDOWN. Check logs.报错的解决办法
因特麦克斯
redis数据库缓存
解决方法:找到你使用的redis.conf文件ctrl+f(vscode远程连接)查找logfile找到后设置自己的log文件路径使用chmod777给log文件授予权限
- 最长公共前缀&C++函数的返回值在内存中的传递过程&什么是虚拟内存,为什么要使用虚拟内存,虚拟内存可能比物理内存大吗
因特麦克斯
算法
每日一题14.最长公共前缀classSolution{public:stringlongestCommonPrefix(vector&strs){//因为要找最长公共前缀所以一定是序列一定是连续的不会存在跳跃//所以我的思路是从头到尾比较数组中相邻的两个字符串的最长公共前缀长度//同时寻找最短的相邻公共前缀长度此为全部的字符串的最长公共前缀长度//由于此时的ans为全部字符串的最长公共前缀长度//
- React【React+Redux应用_Thunk、React+Redux应用_组件、React+Redux应用_DevTools、 为 React 项目添加 Redux、使用数据】(十一)
童小纯
前端系列---从入门到深化前端javascriptreact.jsReact
文章目录React+Redux应用_ThunkReact+Redux应用_组件React+Redux应用_DevTools为React项目添加Redux使用数据多个ReduxSliceReact+Redux应用_Thunkthunk是一种特定类型的Redux函数,可以包含异步逻辑。1、一个内部thunk函数,它以dispatch和getState作为参数2、外部创建者函数,它创建并返回thunk函
- CentOS7编译安装MySQL5.7之后安装mysql-devel出错解决方案
荆州克莱
面试题汇总与解析springcloudspringbootspring技术css3
参考:https://my.oschina.net/liuyuantao/blog/746537由于我的MySQL是自己编译安装,但是安装之后/etc/yum.repos.d/目录下并没有MySQL的源,导致我在安装mysql-devel出错。缺少MySQL的源:[root@localhostliuyuantao]#cd/etc/yum.repos.d/[
[email protected]
- python难学吗?python的就业前景到底怎么样?
荆州克莱
面试题汇总与解析springcloudspringbootspring技术css3
明确的说,python不难,入门很快,对于几乎是零基础的人是完全可以学会的。个人主要总结一下3点。第一,Python最大的功劳就是直接拉低了编程门槛和使用难度相比于C,C#,JAVA这些早轮子语言学习Python完全就是直接开车的节奏稍微努力一下,一周就能写出像样的东西第二,Python学习越来越普及目前Python课程已发展到儿童编程领域很多中小学开设Python教学,统一考试很多国外学校,比如
- 高级SQL特性
Lang_xi_
SQL必知必会sql数据库
目录1、约束(1)主键(2)外键(3)唯一约束(4)检查约束2、索引(1)什么是索引,为什么使用索引(2)创建索引3、触发器4、数据库安全1、约束关系数据库存储分解为多个表的数据,每个表存储相应的数据。利用键来建立从一个表到另一个表的引用(由此产生了术语引用完整性(referentialintegrity))。正确地进行关系数据库设计,需要一种方法保证只在表中插入合法数据。例如,如果Orders表
- MySQL管理事务处理
Lang_xi_
SQL必知必会mysql数据库
目录1、事务处理是什么2、控制事务处理(1)事务的开始和结束(2)回滚事务(3)使用COMMIT(4)使用保留点(5)结合存储过程的完整事务例子3、小结博主用的是mysql8DBMS,附上示例资料:百度网盘链接:https://pan.baidu.com/s/1XaWi3Y7hpXbs_uHq2cPI6Q提取码:fpnx1、事务处理是什么使用事务处理(transactionprocessing),
- OVN – OVN OpenStack(二)
cuibin1991
OpenStack网络
OpenStacknetworking-ovn项目为Neutron提供了一个基于ML2的OVN插件,它使用OVN组件代替了各种Neutron的Pythonagent,也不再使用RabbitMQ,而是基于OVN数据库进行通信:使用OVSDB协议来把用户的配置写在NorthboundDB里面,ovn-northd监听到NorthboundDB配置发生改变,然后把配置翻译到SouthboundDB里面,
- 为AI聊天工具添加一个知识系统 之82 详细设计之23 符号逻辑 &正则表达式规则 之1
一水鉴天
人工语言智能制造软件智能人工智能
本文要点在继续“逻辑符号”的设计中,我们先回顾一个本项目--作为备忘也作为设计中的时刻牢记:回顾项目介绍项目名:为使用AI聊天工具的聊天者开挂一个知识系统项目口号:通过不断完善一个概念整体运营的大局观思想来持续维护一个动态组织社区的公共形象为使用AI聊天工具的聊天者精心打造一个专属知识系统的私密外挂。项目构成:一系(AI操作系统),三台(前台/中台/后台),和三体(整体/集体/个体)--以Dict
- Highcharts 堆叠条形图
JsonRal
javascript
以下实例演示了堆叠条形图。我们在前面的章节已经了解了Highcharts基本配置语法。接下来让我们来看下其他的配置。配置plotOptions配置图表堆叠使用plotOptions.series.stacking,并设置为"normal"。如果禁用堆叠可设置为null,"normal"通过值设置堆叠,"percent"堆叠则按百分比。varplotOptions={series:{stacking
- 002 mapper代理开发方式-xml方式
简 洁 冬冬
mybatismybatis
文章目录代理xml方式UserMapper.javaUser.javadb.propertiesSqlMapConfig.xmlUserMapper.xmlUserMapperTest.javapom.xml代理此处使用的是JDK的动态代理方式,延迟加载使用的cglib动态代理方式代理分为静态代理和动态代理。此处先不说静态代理,因为Mybatis中使用的代理方式是动态代理。动态代理分为两种方式:基
- priority_queue的创建_结构体类型(重载小于运算符)c++
h^hh
算法开发语言c++数据结构
当优先级队列里面存的是一个自定义(结构体)类型,我们有两种方式,一个是用内置类型的方式,在priority_queue,less,把int改成结构体的名字就可以了,但此时就不能用less了,因为less默认是对内置类型使用的,如果less#includeusingnamespacestd;structnode{inta,b,c;//重载就可以了booloperatorx.b;}};voidtest
- pyproject.toml文件相关
第六五签
pythonlinuxpython
pyproject.toml文件使用pyproject.toml文件来管理和配置你的Python项目可以让你更方便地处理项目的依赖项和构建。下面是一个具体的使用指南,涵盖了如何创建和配置pyproject.toml文件,以及如何使用常见的构建工具如Poetry和Setuptools。使用PoetryPoetry是一个现代的包管理和项目构建工具,推荐用于新的Python项目。以下是如何使用Poetr
- pyqt5多线程优化_PyQt5多线程防卡死和多窗口用法的实现
Barrrrrry
pyqt5多线程优化
心得:写着写着找到了自己的感觉,还是需要大量的代码和项目来加深对代码的理解一、PyQt5多线程防卡死在界面中,通常用会有一些按钮,点击后触发事件,比如去下载一个文件或者做一些操作,这些操作会耗时,如果不能及时结束,主线程将会阻塞,这样界面就会出现未响应的状态,因此必须使用多线程来解决这个问题。#-*-coding:UTF-8-*-""""==============================
- pyqt5 多线程遇到的问题总结
来一打雪碧
pythonpyqt5多线程thread
前言 在使用pyqt5时,程序运行时间过长可能会造成界面假死的情况,为了解决这个问题,可以采用多线程。将程序放到子线程中运行。 这里pyqt5多线程用的方法是继承QThread类,然后重写run()函数实现。#多线程的实现classMyThread(QThread):_signal=pyqtSignal(object)#自定义信号,用于传递数据等def__init__(self):su
- 向量语义(Vector Semantics)与表征学习(Representation Learning)详解
苏西月
学习人工智能
1.向量语义(VectorSemantics)与词嵌入(WordEmbeddings)向量语义的核心思想是用数学向量来表示单词的意义。传统的NLP方法(如基于规则的语言模型)需要人为定义单词的语义规则,而向量语义方法则通过分析单词在大量文本中的使用模式来学习其语义。关键词:词向量(WordRepresentations):单词被表示为一个多维向量,每个维度对应于该单词的某种语义特征。分布式表示(D
- Python中的列表
leiteastudio
Python学习python开发语言
列表是python中数据类型其中的一种,关键字是list。列表(list)是一种可变序列类型,我们可以追加、插入、删除和替换列表中的元素。创建列表:1.创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可list1=['Python','男',166,45]list2=[1,2,3,4,5]list3=["a","b","c","d","e"]print(list1)print(list
- 《深入浅出HTTPS》读书笔记(7):安全的密码学Hash算法
earthzhang2021
httpshttp网络协议网络1024程序员节
密码学Hash算法除了常规Hash算法的特性,还应该具备下面三个特性。1)强抗碰撞性(CollisionResistance)如果两个不相同的值能够得到同样的摘要值,表示产生了Hash碰撞。密码学中,Hash算法必须具备强抗碰撞性,否则不应该使用。2)弱抗碰撞性(Secondpre-imageResistance)给定一个消息和这个消息对应的摘要值,很难找到一条不同的消息也具有相同的摘要值。如果某
- 【GO实战课】第三讲:电子商务网站(3)——架构和路由
earthzhang2021
GO语言编程入门golang架构开发语言
1.简介本课程将探讨电子商务网站的架构和路由,以及使用GO语言实现。在本课程中,我们将介绍如何设计一个可扩展、可靠和高性能的电子商务网站架构,并演示如何使用GO语言编写路由代码。本课程的目标是帮助学生理解电子商务网站的架构,并提供一个实际的项目,以便他们可以在实践中应用所学知识。通过完成本课程,学员将能够:理解电子商务网站的架构设计原则;掌握使用RESTfulAPI构建电子商务网站的基本知识;学习
- 《深入浅出HTTPS》读书笔记(5):随机数
earthzhang2021
https网络协议http
密码学中随机数的用途非常大,其他密码学算法内部都会用到随机数。1)效率在软件或者密码学应用中需要大量的随机数,必须在很短的时间内生成随机数。2)随机性生成的随机数只要不存在统计学偏差,那么这个随机数就具备随机性(randomness)。3)不可预测性密码学中的随机数必须具备不可预测性,否则就会存在安全问题,当然非密码学应用使用具备随机性的随机数就足够了。4)不可重现性所谓不可重现性(unrepea
- 切换node版本
test猿
前端javascript
一、在Linux上切换Node.js版本有多种实现方法:1.使用nvm(NodeVersionManager):安装nvm:可以通过curl或wget来安装nvm,具体请参考nvm的官方文档。安装不同版本的Node.js:使用nvm可以轻松地安装、管理和切换不同版本的Node.js。例如,要安装Node.js的最新版本,可以使用命令nvminstallnode。要安装特定版本的Node.js,可以
- jQuery 键盘事件keydown ,keypress ,keyup介绍
107x
jsjquerykeydownkeypresskeyup
本文章总结了下些关于jQuery 键盘事件keydown ,keypress ,keyup介绍,有需要了解的朋友可参考。
一、首先需要知道的是: 1、keydown() keydown事件会在键盘按下时触发. 2、keyup() 代码如下 复制代码
$('input').keyup(funciton(){  
- AngularJS中的Promise
bijian1013
JavaScriptAngularJSPromise
一.Promise
Promise是一个接口,它用来处理的对象具有这样的特点:在未来某一时刻(主要是异步调用)会从服务端返回或者被填充属性。其核心是,promise是一个带有then()函数的对象。
为了展示它的优点,下面来看一个例子,其中需要获取用户当前的配置文件:
var cu
- c++ 用数组实现栈类
CrazyMizzz
数据结构C++
#include<iostream>
#include<cassert>
using namespace std;
template<class T, int SIZE = 50>
class Stack{
private:
T list[SIZE];//数组存放栈的元素
int top;//栈顶位置
public:
Stack(
- java和c语言的雷同
麦田的设计者
java递归scaner
软件启动时的初始化代码,加载用户信息2015年5月27号
从头学java二
1、语言的三种基本结构:顺序、选择、循环。废话不多说,需要指出一下几点:
a、return语句的功能除了作为函数返回值以外,还起到结束本函数的功能,return后的语句
不会再继续执行。
b、for循环相比于whi
- LINUX环境并发服务器的三种实现模型
被触发
linux
服务器设计技术有很多,按使用的协议来分有TCP服务器和UDP服务器。按处理方式来分有循环服务器和并发服务器。
1 循环服务器与并发服务器模型
在网络程序里面,一般来说都是许多客户对应一个服务器,为了处理客户的请求,对服务端的程序就提出了特殊的要求。
目前最常用的服务器模型有:
·循环服务器:服务器在同一时刻只能响应一个客户端的请求
·并发服务器:服
- Oracle数据库查询指令
肆无忌惮_
oracle数据库
20140920
单表查询
-- 查询************************************************************************************************************
-- 使用scott用户登录
-- 查看emp表
desc emp
- ext右下角浮动窗口
知了ing
JavaScriptext
第一种
<!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/1999/
- 浅谈REDIS数据库的键值设计
矮蛋蛋
redis
http://www.cnblogs.com/aidandan/
原文地址:http://www.hoterran.info/redis_kv_design
丰富的数据结构使得redis的设计非常的有趣。不像关系型数据库那样,DEV和DBA需要深度沟通,review每行sql语句,也不像memcached那样,不需要DBA的参与。redis的DBA需要熟悉数据结构,并能了解使用场景。
- maven编译可执行jar包
alleni123
maven
http://stackoverflow.com/questions/574594/how-can-i-create-an-executable-jar-with-dependencies-using-maven
<build>
<plugins>
<plugin>
<artifactId>maven-asse
- 人力资源在现代企业中的作用
百合不是茶
HR 企业管理
//人力资源在在企业中的作用人力资源为什么会存在,人力资源究竟是干什么的 人力资源管理是对管理模式一次大的创新,人力资源兴起的原因有以下点: 工业时代的国际化竞争,现代市场的风险管控等等。所以人力资源 在现代经济竞争中的优势明显的存在,人力资源在集团类公司中存在着 明显的优势(鸿海集团),有一次笔者亲自去体验过红海集团的招聘,只 知道人力资源是管理企业招聘的 当时我被招聘上了,当时给我们培训 的人
- Linux自启动设置详解
bijian1013
linux
linux有自己一套完整的启动体系,抓住了linux启动的脉络,linux的启动过程将不再神秘。
阅读之前建议先看一下附图。
本文中假设inittab中设置的init tree为:
/etc/rc.d/rc0.d
/etc/rc.d/rc1.d
/etc/rc.d/rc2.d
/etc/rc.d/rc3.d
/etc/rc.d/rc4.d
/etc/rc.d/rc5.d
/etc
- Spring Aop Schema实现
bijian1013
javaspringAOP
本例使用的是Spring2.5
1.Aop配置文件spring-aop.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmln
- 【Gson七】Gson预定义类型适配器
bit1129
gson
Gson提供了丰富的预定义类型适配器,在对象和JSON串之间进行序列化和反序列化时,指定对象和字符串之间的转换方式,
DateTypeAdapter
public final class DateTypeAdapter extends TypeAdapter<Date> {
public static final TypeAdapterFacto
- 【Spark八十八】Spark Streaming累加器操作(updateStateByKey)
bit1129
update
在实时计算的实际应用中,有时除了需要关心一个时间间隔内的数据,有时还可能会对整个实时计算的所有时间间隔内产生的相关数据进行统计。
比如: 对Nginx的access.log实时监控请求404时,有时除了需要统计某个时间间隔内出现的次数,有时还需要统计一整天出现了多少次404,也就是说404监控横跨多个时间间隔。
Spark Streaming的解决方案是累加器,工作原理是,定义
- linux系统下通过shell脚本快速找到哪个进程在写文件
ronin47
一个文件正在被进程写 我想查看这个进程 文件一直在增大 找不到谁在写 使用lsof也没找到
这个问题挺有普遍性的,解决方法应该很多,这里我给大家提个比较直观的方法。
linux下每个文件都会在某个块设备上存放,当然也都有相应的inode, 那么透过vfs.write我们就可以知道谁在不停的写入特定的设备上的inode。
幸运的是systemtap的安装包里带了inodewatch.stp,位
- java-两种方法求第一个最长的可重复子串
bylijinnan
java算法
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
public class MaxPrefix {
public static void main(String[] args) {
String str="abbdabcdabcx";
- Netty源码学习-ServerBootstrap启动及事件处理过程
bylijinnan
javanetty
Netty是采用了Reactor模式的多线程版本,建议先看下面这篇文章了解一下Reactor模式:
http://bylijinnan.iteye.com/blog/1992325
Netty的启动及事件处理的流程,基本上是按照上面这篇文章来走的
文章里面提到的操作,每一步都能在Netty里面找到对应的代码
其中Reactor里面的Acceptor就对应Netty的ServerBo
- servelt filter listener 的生命周期
cngolon
filterlistenerservelt生命周期
1. servlet 当第一次请求一个servlet资源时,servlet容器创建这个servlet实例,并调用他的 init(ServletConfig config)做一些初始化的工作,然后调用它的service方法处理请求。当第二次请求这个servlet资源时,servlet容器就不在创建实例,而是直接调用它的service方法处理请求,也就是说
- jmpopups获取input元素值
ctrain
JavaScript
jmpopups 获取弹出层form表单
首先,我有一个div,里面包含了一个表单,默认是隐藏的,使用jmpopups时,会弹出这个隐藏的div,其实jmpopups是将我们的代码生成一份拷贝。
当我直接获取这个form表单中的文本框时,使用方法:$('#form input[name=test1]').val();这样是获取不到的。
我们必须到jmpopups生成的代码中去查找这个值,$(
- vi查找替换命令详解
daizj
linux正则表达式替换查找vim
一、查找
查找命令
/pattern<Enter> :向下查找pattern匹配字符串
?pattern<Enter>:向上查找pattern匹配字符串
使用了查找命令之后,使用如下两个键快速查找:
n:按照同一方向继续查找
N:按照反方向查找
字符串匹配
pattern是需要匹配的字符串,例如:
1: /abc<En
- 对网站中的js,css文件进行打包
dcj3sjt126com
PHP打包
一,为什么要用smarty进行打包
apache中也有给js,css这样的静态文件进行打包压缩的模块,但是本文所说的不是以这种方式进行的打包,而是和smarty结合的方式来把网站中的js,css文件进行打包。
为什么要进行打包呢,主要目的是为了合理的管理自己的代码 。现在有好多网站,你查看一下网站的源码的话,你会发现网站的头部有大量的JS文件和CSS文件,网站的尾部也有可能有大量的J
- php Yii: 出现undefined offset 或者 undefined index解决方案
dcj3sjt126com
undefined
在开发Yii 时,在程序中定义了如下方式:
if($this->menuoption[2] === 'test'),那么在运行程序时会报:undefined offset:2,这样的错误主要是由于php.ini 里的错误等级太高了,在windows下错误等级
- linux 文件格式(1) sed工具
eksliang
linuxlinux sed工具sed工具linux sed详解
转载请出自出处:
http://eksliang.iteye.com/blog/2106082
简介
sed 是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾
- Android应用程序获取系统权限
gqdy365
android
引用
如何使Android应用程序获取系统权限
第一个方法简单点,不过需要在Android系统源码的环境下用make来编译:
1. 在应用程序的AndroidManifest.xml中的manifest节点
- HoverTree开发日志之验证码
hvt
.netC#asp.nethovertreewebform
HoverTree是一个ASP.NET的开源CMS,目前包含文章系统,图库和留言板功能。代码完全开放,文章内容页生成了静态的HTM页面,留言板提供留言审核功能,文章可以发布HTML源代码,图片上传同时生成高品质缩略图。推出之后得到许多网友的支持,再此表示感谢!留言板不断收到许多有益留言,但同时也有不少广告,因此决定在提交留言页面增加验证码功能。ASP.NET验证码在网上找,如果不是很多,就是特别多
- JSON API:用 JSON 构建 API 的标准指南中文版
justjavac
json
译文地址:https://github.com/justjavac/json-api-zh_CN
如果你和你的团队曾经争论过使用什么方式构建合理 JSON 响应格式, 那么 JSON API 就是你的 anti-bikeshedding 武器。
通过遵循共同的约定,可以提高开发效率,利用更普遍的工具,可以是你更加专注于开发重点:你的程序。
基于 JSON API 的客户端还能够充分利用缓存,
- 数据结构随记_2
lx.asymmetric
数据结构笔记
第三章 栈与队列
一.简答题
1. 在一个循环队列中,队首指针指向队首元素的 前一个 位置。
2.在具有n个单元的循环队列中,队满时共有 n-1 个元素。
3. 向栈中压入元素的操作是先 移动栈顶指针&n
- Linux下的监控工具dstat
网络接口
linux
1) 工具说明dstat是一个用来替换 vmstat,iostat netstat,nfsstat和ifstat这些命令的工具, 是一个全能系统信息统计工具. 与sysstat相比, dstat拥有一个彩色的界面, 在手动观察性能状况时, 数据比较显眼容易观察; 而且dstat支持即时刷新, 譬如输入dstat 3, 即每三秒收集一次, 但最新的数据都会每秒刷新显示. 和sysstat相同的是,
- C 语言初级入门--二维数组和指针
1140566087
二维数组c/c++指针
/*
二维数组的定义和二维数组元素的引用
二维数组的定义:
当数组中的每个元素带有两个下标时,称这样的数组为二维数组;
(逻辑上把数组看成一个具有行和列的表格或一个矩阵);
语法:
类型名 数组名[常量表达式1][常量表达式2]
二维数组的引用:
引用二维数组元素时必须带有两个下标,引用形式如下:
例如:
int a[3][4]; 引用:
- 10点睛Spring4.1-Application Event
wiselyman
application
10.1 Application Event
Spring使用Application Event给bean之间的消息通讯提供了手段
应按照如下部分实现bean之间的消息通讯
继承ApplicationEvent类实现自己的事件
实现继承ApplicationListener接口实现监听事件
使用ApplicationContext发布消息