- 博客(520)
- 资源 (120)
- 收藏
- 关注
原创 GNU许可证常见问题
最新在学习开源软件,开源软件的组成最重要的一个就是license,及许可证。开源License在法律上赋予用户相关权利和义务,任何开源应用行为都必须围绕此“游戏规则”进行。其中重点学习了GUN GPL的许可证,本地记录下一个重要的网站,方便以后继续学习,和参考。标题是:GNU许可证常见问题。GNU许可证常见问题:https://www.gnu.org/licenses/gpl-faq.ht...
2019-10-16 15:13:48
868
原创 Google & Oracle
一个很著名的例子,Java的语法是有专利的,但是Java是开源的,Android系统正是因为使用了一个修改版本的Java(而且没有说这个是Java),被Oracle认定为侵犯了自己关于Java的专利,然后遭遇诉讼。专利只是防止别人模仿你的东西,并用在别的地方。像上面Java的例子,你可以自己随意的实现Java,这个是正常使用别人专利的途径。而将别人的专利,用到自己的其他项目里面,一个修改特性的J...
2019-10-16 11:12:05
570
原创 JavaWEB_文件的上传下载
5. 文件下载的需求:1). 在文件上传成功后的 success.jsp 页面上提供一个 "下载资源" 的超链接2). 点击 "下载资源" 的超链接, 会把请求发送到 Servlet, 读取数据库, 在页面上显示可以下载的资源信息FileName: 11.尚硅谷_JavaWEB_监听器.pptxDesc: AA下载 FileName: 12.尚硅谷_JavaWEB_文件的上传和下载.pptxDes...
2018-04-29 23:37:15
295
原创 javaWeb 八个监听器
Servlet 规范中定义了很多监听器,用于监听Servlet三个数据域对象创建销毁和 内部数据状态改变Servlet三种存储范围:ServletContext、HttpSession、ServletRequestServlet监听器分为三大类1、数据域对象创建和销毁 监听器2、数据域对象 属性变更监听器 3、绑定到Session中数据对象 本身状态监听器7. HttpSessionActivat...
2018-04-29 21:50:44
1033
原创 javaWeb自定义标签(1)
2. 自定义标签1). HelloWorld①. 创建一个标签处理器类: 实现 SimpleTag 接口. ②. 在 WEB-INF 文件夹下新建一个 .tld(标签库描述文件) 为扩展名的 xml 文件. 并拷入固定的部分: 并对 description, display-name, tlib-version, short-name, uri 做出修改<taglib xmlns="http...
2018-04-25 22:48:32
339
原创 javaWeb自定义标签
3. JSTL:1)*. c:out 主要用于对特殊字符进行转换. 真正进行输出时, 建议使用 c:out, 而不是使用 EL2)*. c:set: 可以为域赋属性值。 而对域对象中的 JavaBean 的属性赋值用的并不多. 3). c:remove: 移除指定域对象的指定属性值(较少使用, 即便移除也是在 Servlet 中完成)4)*. c:if: 在页面上对现实的内容进行过滤, 把结果存储...
2018-04-25 22:19:26
256
原创 java web 表单的重复提交
表单的重复提交1). 重复提交的情况: ①. 在表单提交到一个 Servlet, 而 Servlet 又通过请求转发的方式响应一个 JSP(HTML) 页面, 此时地址栏还保留着 Serlvet 的那个路径, 在响应页面点击 "刷新" ②. 在响应页面没有到达时重复点击 "提交按钮". ③. 点击 "返回", 再点击 "提交"2). 不是重复提交的情况: 点击 "返回", "刷新" 原表单
2018-04-22 09:14:03
425
原创 Java Web HttpSession 的生命周期
1. HttpSession 的生命周期:1). 什么时候创建 HttpSession 对象①. 对于 JSP: 是否浏览器访问服务端的任何一个 JSP, 服务器都会立即创建一个 HttpSession 对象呢?不一定。 > 若当前的 JSP 是客户端访问的当前 WEB 应用的第一个资源,且 JSP 的 page 指定的 session 属性值为 false, 则服务器就不会为 JSP 创建...
2018-04-22 08:17:25
1309
原创 java web 应用中的绝对路径问题
应用中使用绝对路径:使用相对路径可能会有问题, 但使用绝对路径肯定没有问题. 1). 绝对路径: 即相对于当前 WEB 应用的路径.怎么使用绝对路径呢? 在当前 WEB 应用的所有的路径前都添加 contextPath 即可. 2). / 什么时候代表站点的根目录, 什么时候代表当前 WEB 应用的根目录呢?WEB应用的根路径是:http://localhost:8080/app(contexPa...
2018-04-22 08:14:50
505
转载 java反射:获取Class类的四种方式
我们创建了一个类,通过 编译(javac.exe),生成对应的.class文件,之后使用java.exe(JVM的类加载器来完成)加载此.class文件,此.class文件加载到内存以后,就是一个运行时类,存放在缓存区,这个运行时类就是一个Class的实例。java.lang.class是反射的源头。它有如下几个特点:1.每一个运行时类只加载一次2.有了Class的实例之后,我们才可以进行如下的操...
2018-04-11 23:43:22
1801
原创 ClassLoader.getResourceAsStream() 与 Class.getResourceAsStream()的区别
Class.getResourceAsStream() 会指定要加载的资源路径与当前类所在包的路径一致。 例如你写了一个MyTest类在包com.test.mycode 下,那么MyTest.class.getResourceAsStream("name") 会在com.test.mycode包下查找相应的资源。 如果这个name是以 '/' 开头的,那么就会从classpat...
2018-04-10 23:27:35
600
1
原创 redis学习总结
我们都知道Redis是单线程的,基于事件驱动的,Redis中有个EventLoop,EventLoop负责对两类事件进行处理: 1. 一类是IO事件,这类事件是从底层的多路复用器分离出来的。 2. 一类是定时事件,这类事件主要用来事件对某个任务的定时执行1.Redis 用过哪些数据结构,以及Redis底层是怎么实现的? list hash string set sortedSet 有底层八种数据结...
2018-03-30 17:29:32
307
转载 缓存穿透、雪崩、热点与Redis
首发于轻境界: https://www.qingjingjie.com/b...向大家推荐这篇文章——Redis架构之防雪崩设计:网站不宕机背后的兵法(另外推荐我去年的短文作为餐前点心——略谈服务端缓存设计)《Redis架构之防雪崩设计》这篇文章(下文称之为“原文”)写得非常好,全面概括了大规模系统可能面对的缓存穿透和缓存雪崩等问题,可以看出是一线实战经验的精华总结,非常适合大家学习。而我想再补充...
2018-03-28 15:24:17
361
原创 golang 并发之后同步
// Synchronization 一个并发执行器, 并发的执行N个任务// 等待所有任务返回结果,然后在做统一的处理func Synchronization(args ...func()) { // 创建N个管道,管道用来接收各个并发的任务的完成 n := len(args) chs := make([]chan int, n) defer func() { for _, c ...
2018-03-22 20:36:11
946
转载 数据持久化
1.什么是持久化?找了好多文章都没有找到满意的答案,最后是从孙卫琴写的《精通Hibernate:Java对象持久化技术详解》中,看到如下的解释,感觉还是比较完整的。摘抄如下:狭义的理解: “持久化”仅仅指把域对象永久保存到数据库中;广义的理解,“持久化”包括和数据库相关的各种操作。● 保存:把域对象永久保存到数据库。● 更新:更新数据库中域对象的状态。● 删除:从数据库中删...
2018-03-21 22:39:24
598
转载 电商系统框架的演进
Dubbo开始于电商系统,因此在这里先从电商系统的演变讲起。单一应用框架(ORM) 当网站流量很小时,只需一个应用,将所有功能如下单支付等都部署在一起,以减少部署节点和成本。 缺点:单一的系统架构,使得在开发过程中,占用的资源越来越多,而且随着流量的增加越来越难以维护 垂直应用框架(MVC) 垂直应用架构解决了单一应用架构所面临的扩容问题,流量能够分散到各个子系统当中,且系统的体积可控,一定程度上...
2018-03-21 21:38:48
1247
转载 大型网站架构技术一览
对于大型网站技术的理解,可以从架构技术原理的组织方式以架构要素作为维度,从系统性能、可用性、伸缩性、扩展性、安全性几个角度阐述网站架构的技术要点。还有另一种较为直观的组织方式,是从不同架构层次所使用的网站架构技术这个维度进行描述的。 网站系统架构层次如下图所示: 这个网站架构层次,共分为8个层次,其中数据库中心机房架构是上面所有架构的物理基础;安全架构和数据库采集监控架...
2018-03-21 20:15:07
489
原创 2018年学习计划
1.书单:javascript高级程序设计、java基础学习、lua脚本、golang系统学习2.框架学习:后端框架SpringMVC,对于技术Hibernate、MyBatis技术要熟悉 前端框架angular。3.数据库:熟悉主流NoSQL数据库应用,了解各种数据库的使用场景(Radis,mongodb、mysql等)4.熟悉:常用webServer部署以及优化比如...
2018-03-21 19:38:18
737
转载 RPC&REST&HAL
1、容器技术,是一种利用容器实现虚拟化的方式,无法归属到全虚拟化、部分虚拟化和半虚拟化中的任意一个,它是一个操作系统级的虚拟化方法。2、微服务架构本质上是分布式系统。3、RPC远程过程调用,是一种典型的分布式节点间同步通信的实现方式。1)客户端通过客户代理存根,传递函数参数,向服务器端发起函数调用。服务器端通过服务器代理存根,接收到客户端的请求后,对请求进行处理,并在结束后向客户端返回响应,从而完...
2018-03-20 19:02:31
478
转载 区块链~Merkle Tree(默克尔树)算法解析~转载
/*最近在看Ethereum,其中一个重要的概念是Merkle Tree,以前从来没有听说过,所以查了些资料,学习了Merkle Tree的知识,因为接触时间不长,对Merkle Tree的理解也不是很深入,如果有不对的地方,希望各位大神指正*/Merkle Tree概念 Merkle Tree,通常也被称作Hash Tree,顾名思义,就是存储hash值的一棵树。Merkle树的叶子是数据块(例...
2018-03-20 15:22:44
1829
原创 非递归求两点之间的路径(无向图)
// dfs.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include <iostream> #include <stack> #include <map>#include <vector>using namesp...
2018-03-12 11:50:05
916
原创 深搜(非递归)实现获取两点之间的路径
用栈实现求两点之间的所有路径:// dfs.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include <iostream> #include <stack> #include <map>#include <vector&g...
2018-03-12 11:26:53
1110
原创 深搜(非递归)实现获取两点之间的路径(起点和终点不重合)
// dfs.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include <iostream> #include <stack> #include <map>#include <vector>using namesp...
2018-03-12 10:25:07
698
转载 深搜非递归
#include <iostream>#include <stack>using namespace std;#define MaxNode 20#define MAX 2000#define StartNode 1int map[MaxNode+1][MaxNode+1];void dfs_stack(int start, int n){ in...
2018-03-06 11:26:15
785
转载 数据结构 — 二叉树的基本操作实现(递归算法)
我们直接切入主题相信大家都应该知道什么叫二叉树吧。二叉树里面有几个常见的操作,他们分别是构造二叉树,前序遍历,中序遍历,后序遍历,还有 求树的叶子结点,树的深度,树中第K层的节点个数,树中结点的个数,以及在树中查找一个结点。注意这里大部分都是用递归实现的!! (也就是这篇文章是入门的,非递归我还会写一个博客)好了现在开始,我们一个一个的解决他们吧。
2017-07-09 22:30:26
2425
转载 并查集
这个文章是几年前水acm的时候转的, 当时也不知道作者是谁, 要是有人知道的话说一下吧并查集是我暑假从高手那里学到的一招,觉得真是太精妙的设计了。以前我无法解决的一类问题竟然可以用如此简单高效的方法搞定。不分享出来真是对不起party了。(party:我靠,关我嘛事啊?我跟你很熟么?)来看一个实例,杭电1232畅通工程首先在地图上给你若干个城镇,这些城镇都可
2017-07-09 09:37:34
979
原创 玩转Nodejs日志管理log4js
从零开始nodejs系列文章从零开始nodejs系列文章,将介绍如何利Javascript做为服务端脚本,通过Nodejs框架web开发。Nodejs框架是基于V8的引擎,是目前速度最快的Javascript引擎。chrome浏览器就基于V8,同时打开20-30个网页都很流畅。Nodejs标准的web开发框架Express,可以帮助我们迅速建立web站点,比起PHP的开发效率更高,而且学习
2017-01-09 21:46:17
649
原创 总计的命令
# free -m #查看内存使用量和交换区使用量 # mount #查看挂在情况 # df -h #查看各分区使用情况 sfdisk -l 查看硬盘数目 # du -sh #查看指定目录的大小 # grep MemTotal /proc/meminfo #查看内存总量 # grep MemFree /proc/meminfo #查看空闲内存量 #
2016-10-31 09:35:13
457
原创 C语言编码注意的点
编码规范:1.谁申请的内存谁来释放2.注意内存泄露,特别是fopen和malloc的时候3.使用strcpy的时候,注意参数不能为空,被拷贝的要初始化。4.重点注意的函数:strcpy,strcmp,strncmp,在执行之前,一定要保证参数不能为空。为空的执行前直接返回。
2016-10-31 09:32:32
530
原创 【日语】动词的九种变形
1、动词ます形变化规则 ①五段动词(1类动词):将结尾假名变成它同行的前一个假名后+ます 例:行く~行きます 買う~買います ②一段动词(2类动词):去る+ます 例:食べる~食べます 起きる~起きます ③カ变动词(3类动词):来(く)る~来(き)ます ④サ变动词(3类动词):する~します 例:勉強
2016-10-27 09:35:13
4643
转载 GitHub系列学习
推荐阅读从0开始学习 GitHub 系列之「初识 GitHub」从0开始学习 GitHub 系列之「加入 GitHub」从0开始学习 GitHub 系列之「Git 速成」从0开始学习 GitHub 系列之「向GitHub 提交代码」从0开始学习 GitHub 系列之「Git 进阶」从0开始学习 GitHub 系列之「团队合作利器 BRANCH」
2016-10-25 09:29:54
442
转载 Python常见数据结构整理
Python中常见的数据结构可以统称为容器(container)。序列(如列表和元组)、映射(如字典)以及集合(set)是三类主要的容器。在Python中,数字、字符串和元组都被设计成不可变类型,而常见的列表以及集合(set)都是可变的.一、序列(列表、元组和字符串)序列中的每个元素都有自己的编号。Python中有6种内建的序列。其中列表和元组是最常见的类型。其他包
2016-10-24 14:44:01
467
原创 创建虚拟网卡
cat /etc/rc.local 开机就会执行。里面创建虚拟网桥,配置IP后启动。cat /root/create*Tap.sh 创建虚拟网卡,绑定到虚拟网桥后启动。网桥是一种在链路层实现中继,对帧进行转发的技术,根据MAC分区块,可隔离碰撞,将网络的多个网段在数据链路层连接起来的网络设备。Linux 网桥配置命令:brctl# brctl addbr br0
2016-09-28 09:57:51
1776
转载 前辈整理的笔记
修订:2013/10/19 :推荐一位前辈整理的学习笔记:https://github.com/qyuhen/bookC学习笔记和Python学习笔记都可以看一下。
2016-09-22 09:18:20
415
[Ruby完全自学手册].邓蔚.扫描版.pdf
2014-05-22
XP-日文输入法恢复补丁
2013-09-18
QT资料汇总
2013-08-13
PNGGauntlet-专用 PNG优化软件,无损压缩PNG图片
2013-05-10
html+js+css架构设计
2013-05-08
驾照理论考试速成2013(汽车驾驶员模拟考试及练习软件)最新版
2013-01-26
cocoa基本原理指南和object c第二版
2012-11-06
Learn Objective-C(zh)(v2)
2012-11-06
视频转换器
2012-10-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人