红烧土豆泥 红烧土豆泥
4年前
软件设计模式-创建型模式之工厂进阶版
简介:所谓工厂模式,创建一个对象的接口,让子类决定实例化哪一个工厂类,使其创建过程延迟到了子类。所谓的万能工厂类,通过反射调用的方式,获取到子类对象,并实例化返回,此外本案例还通过重载的方式,允许了有参和无参两种获取到实例的方式。language/@author:demo@date:2021/8/7@describe:/public
Stella981 Stella981
4年前
Django csrf,xss,sql注入
一、csrf跨站请求伪造(Crosssiterequestforgery)CSRF的攻击原理:简单说就是利用了高权限帐号(如管理员)的登录状态或者授权状态去做一些后台操作,但实际这些状态并没有被我们直接获取到(获取那是XSS干的事)。CSRF能够攻击的根本原因是:服务器无法识别你的来源是否可靠。防御CSRF攻击:服务端验证请求的token一
Stella981 Stella981
4年前
SharedPreferences的调教
本文编写于202天前,最后修改于165天前,其中某些信息可能已经过时。最近在做“桌面”项目(奶糖桌面),在做到“隐藏APP”的时候,是把要隐藏的APP(arraylist)包名拿出来,在获取全部APP(allapplist)的时候,把获取到的包名和所有APP包名做一个比较,如果存在的话就从allapplist中移除这一项。详情可参考以下代码:
Wesley13 Wesley13
4年前
Java并发编程:Lock
一.synchronized的缺陷synchronized是java中的一个关键字,也就是说是Java语言内置的特性。那么为什么会出现Lock呢?  在上面一篇文章中,我们了解到如果一个代码块被synchronized修饰了,当一个线程获取了对应的锁,并执行该代码块时,其他线程便只能一直等待,等待获取锁的线程释放锁
Wesley13 Wesley13
4年前
Java多线程之Callable、Future和FutureTask
我们学习java基础的时候,知道创建线程的2种方式,一种是直接继承Thread,另外一种就是实现Runnable接口。这2种方式都有一个缺陷就是:在执行完任务之后无法获取执行结果。如果需要获取执行结果,就必须通过共享变量或者使用线程通信的方式来达到效果,这样使用起来就比较麻烦。而自从Java1.5开始,就提供了Callable和Future,通
Wesley13 Wesley13
4年前
Java并发编程:Callable、Future和FutureTask
在前面的文章中我们讲述了创建线程的2种方式,一种是直接继承Thread,另外一种就是实现Runnable接口。  这2种方式都有一个缺陷就是:在执行完任务之后无法获取执行结果。  如果需要获取执行结果,就必须通过共享变量或者使用线程通信的方式来达到效果,这样使用起来就比较麻烦。  而自从Java1.5开始,就提供了Callable和Future
公孙晃 公孙晃
2年前
CHM文件读取器:GM CHM Reader Pro for Mac中文版
是一款功能强大的CHM文件阅读器,专为Mac用户设计。它可以帮助用户轻松打开和阅读CHM文件,同时支持搜索和书签功能。GMCHMReaderPro具有直观的用户界面和快速的加载速度,让用户可以轻松地阅读CHM文件。此外,它还支持在CHM文件中添加和编辑注释
赵融 赵融
1年前
Bridge 2024/2022 for Mac 中英文激活版【附下载】支持m1/m2/m3 支持最新系统
Br2024现在具有增强的用户界面,可提供与其他应用程序类似的体验。用户可以根据自己的喜好,通过“编辑”“首选项”“界面”对话框,对“用户界面”首选项进行设置,更改用户界面外观、文本大小和缩放比例。增强的CreativeCloud库:在Br2024中,库工
linbojue linbojue
1年前
选择前端还是.NET开发Web应用?如何做出明智的选择
前端开发前端开发主要涉及构建用户界面、实现交互和用户体验。以下是前端开发的特点和优势:响应式用户界面:前端技术(如HTML、CSS和JavaScript)可以创建跨平台、响应式的用户界面,适应不同设备和屏幕尺寸。丰富的库和框架:前端生态系统拥有众多成熟的库