摘要: 上传标签: <input type="file" class="add" multiple onchange="upLoadChange(this)"/> js代码: 注意点:这里必须用 【"file"+i】,如果直接【"file"】,会认为同一个文件并且覆盖,导致上传了多个一样的文件 阅读全文
posted @ 2019-07-10 14:52 Victor.lu 阅读(2678) 评论(0) 推荐(0) 编辑
摘要: 下载地址: http://www.mongodb.org/downloads 根据不同系统下载对应版本 引用NuGet包:(ps:其实不需要这么多,自己测试时,安装了这么多~~) 构造Helper类: 调用:这里用的是WebApi,做了个增、改、删、查的操作 新增:初始化100w条数据 修改: 删除 阅读全文
posted @ 2018-08-30 16:58 Victor.lu 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 定义:是一个自动提取网页的程序 1,Url开始 分析获取数据,找到Url-- 递归下去 结果 2,下载html 解析获取数据 保存数据 爬虫攻防:robots协议 君子协定,允许或不允许抓取的内容 1,请求检测header 攻击 2,用户登录--请求的时候带上cookie 攻击 3,爬虫的频率高,限 阅读全文
posted @ 2018-07-05 22:29 Victor.lu 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 设计模式的六大原则:(叫建议) 1)单一职责 2)里氏替换 3)依赖倒置 4)最小接口 5)迪米特 6)开闭 设计模式:面向对象语言开发过程中,遇到的种种问题和场景,提出的解决方案和思路,沉淀总结(叫套路) 1,创建型设计模式:关注对象的创建 1)单例模式(结构最简单的):保证进程中,某个类只有一个 阅读全文
posted @ 2018-06-26 22:15 Victor.lu 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 1,值类型继承自 ValueType,分配在线程栈上(除非值类型包裹在堆中,这个时候值类型就在堆上),用完自己会结束 2,引用类型分布在堆上(始终分配在堆上),一个进程只有一个堆,所有的数据都是往里面放,所以需要垃圾回收。 1)new 时,在堆中开辟内存,分配一个内存地址 2)调用构造函数(因为在构 阅读全文
posted @ 2018-06-21 22:27 Victor.lu 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 1,Array ,ArrayList,List<类型> 数组, 连续分配的,查询速度快,但增删不方便 #region 链表 2,LinkedList<类型>,LinkedListNode<类型> 链表 ,非连续分配,每个元素都有前后节点,找元素只能遍历,查找不方便,增删容易 3,Queue<T> 队 阅读全文
posted @ 2018-06-13 22:22 Victor.lu 阅读(375) 评论(0) 推荐(0) 编辑
摘要: 1,async 和await 一般成对出现 如: await 必须出现在Task前面 2,同步的方式去写异步 3,如果用 async 和await 则一直用到底 阅读全文
posted @ 2018-06-12 21:56 Victor.lu 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 1,也是MVC6 2,config文件由.json文件代替 3,多了个Program.cs ,出现了Startup.cs 4,dotnet core 都是依赖注入 5,MVC三种传值:viewData,Viewbag,TempData(基于Session) 5,中间件,Run后,那么后面的中间件,则 阅读全文
posted @ 2018-06-10 15:02 Victor.lu 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 1,BeginInvoke是一个异步 2,异步多线程:启动无序,执行时间不确定,结束也无序 阅读全文
posted @ 2018-05-29 22:20 Victor.lu 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 1,特点: 不可逆加密,字符串相同,加密后结果也相同 2,应用: 1)防篡改:对文件加密,再对比 2)急速秒传:百度云,上传文件时先生成MD5码,当其他人再次传该文件时,先比对MD5, 如果存在,则不真实上传,取别人已经上传的文件路径。 3)Git/svn:也是生成MD5,再比对。 4)防抵赖: 阅读全文
posted @ 2018-05-23 22:08 Victor.lu 阅读(962) 评论(0) 推荐(0) 编辑