首页 文章 精选 留言 我的

精选列表

搜索[构建目录],共10029篇文章
优秀的个人博客,低调大师

Flutter误删除android/ios目录怎么办?

最近有朋友遇到了这样的一个问题:在Flutter开发中误删android/ios该如何挽救?。很多朋友会尝试从回收站中恢复,但如果无法从回收站中恢复怎么办?还有办法拯救一下自己吗。答案是肯定的。我们可以通过flutter create命令拯救自己。看一下flutter create: flutter help create Create a new Flutter project. If run on a project that already exists, this will repair the project, recreating any files that are missing. Usage: flutter create <output directory> -h, --help Print this usage information. --[no-]pub Whether to run "flutter packages get" after the project has been created. (defaults to on) --[no-]offline When "flutter packages get" is run by the create command, this indicates whether to run it in offline mode or not. In offline mode, it will need to have all dependencies already available in the pub cache to succeed. --[no-]with-driver-test Also add a flutter_driver dependency and generate a sample 'flutter drive' test. -t, --template=<type> Specify the type of project to create. [app] (default) (default) Generate a Flutter application. [package] Generate a shareable Flutter project containing modular Dart code. [plugin] Generate a shareable Flutter project containing an API in Dart code with a platform-specific implementation for Android, for iOS code, or for both. --description The description to use for your new Flutter project. This string ends up in the pubspec.yaml file. (defaults to "A new Flutter project.") --org The organization responsible for your new Flutter project, in reverse domain name notation. This string is used in Java package names and as prefix in the iOS bundle identifier. (defaults to "com.example") -i, --ios-language [objc (default), swift] -a, --android-language [java (default), kotlin] 帮助说的很清楚,如果在一个既存项目中运行这个命令,那么这将会修复当前项目,重新创建丢失的文件。简单示例代码: flutter create -i objc . 参数解释: -i 是表示iOS项目开发语言,objc和swift两个选项,其中objc是默认的。 -a 是表示Android项目开发语言,java和kotlin两个选项,其中java是默认的。 当然了create命令还给我们提供了一些其他选项: -t , --template=<type> 模板。共三个可选项:app,package,plugin。其中app是默认的。 --org 组织名称。这个参数将作为java包名以及iOS的BundleID前缀。默认是“com.example"。 --description 描述。这将用于描述当前的工程,也会在pubspec.yaml中有所体现。默认是”A new Flutter project.“。 到此为止,create命令就算介绍完了。有的同学可能会有疑问,这个修复到底有什么用?没有版本管理工具吗?实际上,这个命令非常有用。很多时候,写一个demo是没版本管理工具的,或者原来的项目是oc写的,突然又改变了主意,想改用swift了,这时候就该用create了。 希望本文对你有所帮助。欢迎加入 OpenFlutter交流群:892398530。 版本所有,转载请注明出处。

优秀的个人博客,低调大师

Python pyclamad病毒扫描与目录病毒扫描脚本(转载)

Clam AntiVirus(Clam AV)是一个免费而且开放源码的防毒软件,软件与病毒库的更新由开源社区免费发布,目前ClamdAV主要为Linux、Uinux系统提供病毒扫描查杀pyClamad是一个python的第三方模块,可让python直接使用ClamAV病毒扫描守护进程clamd来实现一个高效的病毒检测功能。 一、实现集中式的病毒扫描 1、客户端(病毒扫描源)安装clamavp clamd 服务的相关程序包 yum install clamav clamd clamav-update -y chkconfig clamd on 更新病毒库 /usr/bin/freshclam 更改配置文件修改监听地址到所有网络,启动服务 sed -i -e '/^TCPAddr/{ s/127.0.0.1/0.0.0.0/;}' /etc/clamd.conf /etc/init.d/clamd start 2、主控端安装pyClamd模块 参考:http://xael.org/pages/pyclamd-en.html pip install pyclamd 验证安装结果: <pre style="margin-top: 0px; margin-bottom: 0px; white-space: pre-wrap; word-wrap: break-word; color: rgb(0, 0, 0); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(238, 238, 221); text-decoration-style: initial; text-decoration-color: initial;">>>> import pyclamd cd = pyclamd.ClamdAgnostic() cd.ping() True</pre> 工作原理:管理服务器通过python发出多线程指令连接业务服务器的3310端口,执行病毒扫描,然后返回结果给管理服务器。 业务服务器必须安装clamd相关程序包,并启动服务监听在3310端口才能正常收到指令;可以针对不同业务环境定制相应的扫描策略,比如扫描对象、描述模式、扫描路径、调试频率等。 实现代码:simplel.py [ 复制代码 ](javascript:void(0); "复制代码") <pre style="margin-top: 0px; margin-bottom: 0px; white-space: pre-wrap; word-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;"> 1 #!/usr/bin/env python 2 # -- coding: utf-8 -- 3 import time 4 import pyclamd 5 from threading import Thread 6 class Scan(Thread): #继承多线程Thread类 7 def init (self,IP,scan_type,file): 8 """构造方法""" 9 Thread.init(self) 10 self.IP = IP 11 self.scan_type=scan_type 12 self.file = file 13 self.connstr="" 14 self.scanresult="" 15 def run(self): 16 """多进程run方法""" 17 try: 18 cd = pyclamd.ClamdNetworkSocket(self.IP,3310) 19 """探测连通性""" 20 if cd.ping(): 21 self.connstr=self.IP+" connection [OK]" 22 """重载clamd病毒特征库""" 23 cd.reload() 24 """判断扫描模式""" 25 if self.scan_type=="contscan_file": 26 self.scanresult="{0}\n".format(cd.contscan_file(self.file)) 27 elif self.scan_type=="multiscan_file": 28 self.scanresult="{0}\n".format(cd.multiscan_file(self.file)) 29 elif self.scan_type=="scan_file": 30 self.scanresult="{0}\n".format(cd.scan_file(self.file)) 31 time.sleep(1) 32 else: 33 self.connstr=self.IP+" ping error,exit" 34 return 35 except Exception,e: 36 self.connstr=self.IP+" "+str(e) 37 IPs=['172.16.65.201','172.16.65.202'] #扫描主机的列表 38 scantype="multiscan_file" #指定扫描模式,支持 multiscan_file、contscan_file、scan_file 39 scanfile="/usr/local/bin" #指定扫描路径 40 i=1 41 threadnum=2 #指定启动的线程数 42 scanlist = [] #存储Scan类线程对象列表 43 for ip in IPs: 44 """将数据值带入类中,实例化对象""" 45 currp = Scan(ip,scantype,scanfile) 46 scanlist.append(currp) #追加对象到列表 47 """当达到指定的线程数或IP列表数后启动线程""" 48 if i%threadnum==0 or i==len(IPs): 49 for task in scanlist: 50 task.start() #启动线程 51 for task in scanlist: 52 task.join() #等待所有子线程退出,并输出扫描结果 53 print task.connstr #打印服务器连接信息 54 print task.scanresult #打印结果信息 55 scanlist = [] 56 i+=1</pre> [ 复制代码 ](javascript:void(0); "复制代码")

优秀的个人博客,低调大师

《Pro ASP.NET MVC 3 Framework》学习笔记目录

《Pro ASP.NET MVC 3 Framework》简介: 作者:Adam Freeman 和 Steven Sanderson 出版社:Apress; New 平装:820页 语种:英语 ISBN:1430234040 声明:笔记里面按我自己的理解翻译了大部分内容,写这个笔记的目的:为了方便自己查阅,也为园友提供学习的方便。 我无意侵犯作者的任何权利,仅仅为了自己学习。也希望路过的朋友不要用于任何商业目的。 第一部分 ASP.NET MVC3介绍 《Pro ASP.NET MVC 3 Framework》学习笔记之一【MVC的历程,优点,HelloWorld】 《Pro ASP.NET MVC 3 Framework》学习笔记之二【领域模型的概念介绍及MVC模型绑定】 《Pro ASP.NET MVC 3 Framework》学习笔记之三【MVC模式介绍】 《Pro ASP.NET MVC 3 Framework》学习笔记之四【领域模型介绍】 《Pro ASP.NET MVC 3 Framework》学习笔记之五【依赖注入及ninject工具使用】 《Pro ASP.NET MVC 3 Framework》学习笔记之六【C#部分特性】 《Pro ASP.NET MVC 3 Framework》学习笔记之七【MVC3 Razor视图引擎的@句法】 《Pro ASP.NET MVC 3 Framework》学习笔记之八【Ninject的使用-上】 《Pro ASP.NET MVC 3 Framework》学习笔记之九【Ninject的使用-下】 《Pro ASP.NET MVC 3 Framework》学习笔记之十【Unit Testing的使用】 《Pro ASP.NET MVC 3 Framework》学习笔记之十一【Moq的使用】 《Pro ASP.NET MVC 3 Framework》学习笔记之十二【示例项目SportsStore及MyBatis.NET的使用】 《Pro ASP.NET MVC 3 Framework》学习笔记之十三【示例项目SportsStore】 《Pro ASP.NET MVC 3 Framework》学习笔记之十四【示例项目SportsStore】 《Pro ASP.NET MVC 3 Framework》学习笔记之十五【示例项目SportsStore】 《Pro ASP.NET MVC 3 Framework》学习笔记之十六【示例项目SportsStore】 《Pro ASP.NET MVC 3 Framework》学习笔记之十七【示例项目SportsStore】 第二部分 ASP.NET MVC3详解 《Pro ASP.NET MVC 3 Framework》学习笔记之十八【URL和Routing】 《Pro ASP.NET MVC 3 Framework》学习笔记之十九【URL和Routing】 《Pro ASP.NET MVC 3 Framework》学习笔记之二十【URL和Routing】 《Pro ASP.NET MVC 3 Framework》学习笔记之二十一【Area及URL架构的最佳实践】 《Pro ASP.NET MVC 3 Framework》学习笔记之二十二【Controllers和Actions】 《Pro ASP.NET MVC 3 Framework》学习笔记之二十三【Controllers和Actions】 《Pro ASP.NET MVC 3 Framework》学习笔记之二十四【Controllers和Actions】 《Pro ASP.NET MVC 3 Framework》学习笔记之二十五【Filters】 《Pro ASP.NET MVC 3 Framework》学习笔记之二十六【Controller扩展】 《Pro ASP.NET MVC 3 Framework》学习笔记之二十七【视图1】 《Pro ASP.NET MVC 3 Framework》学习笔记之二十八【视图2】 《Pro ASP.NET MVC 3 Framework》学习笔记之二十九【模型模版】 《Pro ASP.NET MVC 3 Framework》学习笔记之三十【模型绑定】 《Pro ASP.NET MVC 3 Framework》学习笔记之三十一【模型验证】 《Pro ASP.NET MVC 3 Framework》学习笔记之三十二【无入侵的Ajax】 《Pro ASP.NET MVC 3 Framework》之jQuery【主要是jQuery的用法,所以笔记省去这章,大家可以自行学习】 第三部分 交付成功的ASP.NET MVC 3项目 《Pro ASP.NET MVC 3 Framework》学习笔记之三十三【安全性】 《Pro ASP.NET MVC 3 Framework》学习笔记之三十四【验证与授权】 《Pro ASP.NET MVC 3 Framework》学习笔记之三十五【部署】 附件下载全部demo源码 本文转自Rt-张雪飞博客园博客,原文链接http://www.cnblogs.com/mszhangxuefei/archive/2012/02/07/mvcnotes-index.html如需转载请自行联系原作者 张雪飞

优秀的个人博客,低调大师

《 Java并发编程从入门到精通》目录和序言

目 录 第一部分:线程并发基础 第1章 概念部分 1 1.1 CPU核心数、线程数 (主流cpu,线程数的大体情况说一下) 1 1.2 CPU时间片轮转机制 2 1.3 什么是进程和什么是线程 4 1.4 进程和线程的比较 5 1.5 什么是并行运行 7 1.6 什么是多并发运行8 1.7 什么是吞吐量 9 1.8 多并发编程的意义及其好处和注意事项10 1.9 分布式与并发运算关系 11 1.10 Linux和Window多并发可以采取不的一样机制(apache和tomcat??) 6 第2章 认识Java里面的Thread 12 2.1 线程的实现三种方法 (先感受一下创建几个多线程方法实例演练)12 2.2 Thread里面的属性和方法 (通过工具看看能不能监控到thread里面的一些属性值)16 2.3 线程的生命周期 19 2.4 什么是守护线程 31 2.5 线程组 33 2.6 当前线程副本ThreadLocal(用意和实际应用场景) 35 2.7 线程异常的处理(单个和组)38 第3章 Thread安全 39 3.0 线程的内存模型 3.1 什么是不安全(写个代码例子多并发带来的一些问题,变量互串,相互影响) 39 3.2 什么是安全(写个代码例子,安全的三种(多实例,加锁,线程安全的集合类)情况,引出锁) 43 3.3 第一种锁:隐式锁,又称线程同步synchronized(举几个例子实际演示一下,及其写法注意,带来的额外开销) 45 3.4 第二种锁:显示锁,Lock;及其与synchronized的区别(ReentrantReadWriteLock) 49 3.5 什么是死锁 53 3.6 看如下代码的锁有用吗 55 3.7 关键字:volatile 57 3.8 原子操作:atomic(atomic包FutureTask, AtomicLong等) 59 3.9 线程同步和锁的原理(有待弄清楚锁的运行机制和原理) 61 3.10 单利模式的写法 63 第4章 线程安全的集合类 64 4.1 java.util.concurrent. ConcurrentMap 64 4.2 java.util.concurrent.ConcurrentHashMap 66 4.3 java.util.concurrent. CopyOnWriteArrayList 68 4.4 java.util.concurrent. CopyOnWriteArraySet 70 4.5 非concurrent下面的线程安全集合类(Hashtable 和 Vector 和StringBuffer) 72 4.6 集合类安全的实现原理剖析 75 第二部分:线程并发晋级之高级部分 75 第5章 多线程之间交互:线程阀 5.1 线程安全的阻塞队列BlockingQueue (详解一翻java.util.concurrent.ConcurrentLinkedDeque 和java.util.concurrent. ConcurrentLinkedQueue) 76 5.2 同步计数器CountDownLatch 81 5.3 循环障碍CyclicBarrier 84 5.4 信号装置Semaphore 87 5.5 任务机制FutureTask 90 第6章 线程池 115 6.1 什么是线程池 90 6.2 newFixedThreadPool的使用 92 6.3 newCachedThreadPool 的使用 94 6.4 newSingleThreadExecutor的使用(插图,原理) 96 6.5 线程池的好处(未使用的时候的情况,使用后的情况) 98 6.4 认识ExecutorService(ThreadFactory先创建一个线程及其参数的详细讲解,如何自定义线程池) 100 6.5 线程池的原理 106 6.6 线程池在工作中的错误使用 112 第7章 JDK7新增的Fork/Join 115 7.1 什么是Fork/Join 架构 115 7.2 创建实际使用Fork/Join 线程池118 7.3 合并任务的结果 123 7.4 工作原理 126 7.5 异步运行任务 130 7.6 在任务中抛出异常 135 7.7 结束任务 140 7.8 实际应用场景 143 第三部分:实际的使用与监控与拓展 第8章 线程,线程池在实际互联网项目开发中的应用 8.1 Servlet线程的设计 8.2 线程池如何合理设计与设置 8.3 Tomcat中线程池如何合理设置 8.4 Nginx线程池 8.5 数据库连接池 8.6 工作中如何实现在分布式系统中实现高并发 第9章 线程的监控及其日常工作中如何分析 9.1Java线程池的监控 9.2 ForkJoin的监控 9.3 Java内存模型 9.4 可视化监控工具的使用 9.5 Linux线程分析监控使用方法 9.6 Linux分析监控的运行脚本 9.7 Eclipse里面如何调试并发程序 9.8 如何通过压力测试,测试服务器的抗压能力 9.9MultithreadedTC测试并发简单介绍 第10章 线程在Android开发中的体现 10.1Android进程的基本知识 10.2Android进程的生命周期 10.3Android中Activity的生命周期 10.4Android线程的运行机制 10.5Android异步线程的处理方法 10.6Android异步线程的原理与实现 附录一:JVM的参数 附录二:Jstat的语法 附录三:Jstat中的一些术语的中文解释 附录四:Tomcat里面的server.xml中Executor的参数 附录五:Thread的API 结束语 序言 古时候,有一个自认为佛学造诣很深的人,听说某个寺庙里有位德高望重的老禅师,便去拜访。老禅师十分恭敬地接待了他,他讲了自己的很多心得,希望老禅师给予指点。 老禅师听后,没有说话,只是为他沏茶。可是在倒水时,明明水已经满了,老禅师还在倒,而不顾茶水都已经溢了出来。最后,这个人终于忍不住说:“大师,杯子已经满了。”老禅师这才住手。这个人问老禅师:“大师,请你指点。”老禅师说:“我已经教你了。”这个人不明所以,只好回去了。冥思苦想,终于有一天他想明白了:如果自己不把旧茶倒掉,又哪有空间来添续新茶? 空杯心态不仅是一种心境,更是一种做人的境界。其实我们学习,和看任何一本书的时候相信如果以空杯的心态去看的话,相信收获会更多。功夫巨星李小龙就非常推崇空杯心态,他说:“清空你的杯子,方能再行注满,空无以求全。” 最近发现市面上有些书籍要不就是直译过来的,很多不实用,要不就是讲的太玄乎其神了,而此书换一种方式,换一种思路来理解多并发和多线程,让多线,多并发没有那么玄乎;这本书读完让你菜鸟变大牛。作者以10年的开发经验做总结,希望能帮助读者少走一些弯路。本书有浅入深再到实际。作者建议大家,不要动不动就Hadoop,动不动就分布式,其实将Java里面的多并发编程学习好了,其实就可以解决很多的问题的。 建议大家看此书的时候,结合JDK的源码,一起看,每个实例都要运行看看,还有看看咱们工作中,相关的设计是否合理。纸上得来终觉浅,绝知此事要躬行。一定要多加练习才行。 精彩书评: 对于一个初学者,或者是工作了几年的java工程师来说,通过详细的读此书,相信都一定会有或多或少的收获,看到Jack(即作者)几个月来的辛勤的劳动成功,表示感到钦佩。本书几乎涵盖了所有Java多并发,多线程开发相关的学习资料。相信此书一定会成为一个很好的多并发方面的,书不离手的开发手册。 –Steve.Xiu [10年Java工作经验,现就职于alibaba高级开发] 韩愈有言“师者,传道受业解惑也”,读完此书,对作者肃然起敬,他不正是秉承了这样的师道在作此书嘛!十多年的开发经验倾囊相授,言之谆谆,例之凿凿,实为难得。对Java多线程的知识讲解得如此详尽,如此深入,给人一种一览众山小的感觉。期待更多力作面世! –XiaoShuang.Li(李小双) [10年Java工作经验,知名互联网公司项目经理] 我在IT软件行业从业已12年。作为“前辈”,衡量一名“程序猿”的技术实力,一般会看你是否具备深度的系统性能调优的能力。云计算的时代,对系统的高性能、高并发要求更高。所以,深入了解和掌握Java的多线程机制原理,非常有用,非常必要。 这本书的所有知识均来自于作者多年的项目实践,倾注了作者多年的心血。讲解的深入浅出,让你掌握起来毫不费力。如果你想成为一名架构师,如果你想成为一名资深的技术大牛,强烈推荐你读一读,你值得拥有! –Justin.Han(韩剑锋) [12年Java工作经验,曾在多家IT公司担任研发总监、技术总监] 在进行并发编程开发之前,深入的学习并发理论知识非常有必要,比如阅读并发容器的源码,本书通过大量代码实例,讲解并发知识,非常细致。而在实战中并发程序的问题定位也是非常麻烦,相信本书的第九章能给初学者一些参考。 –Kiral(方腾飞) [ 方腾飞,阿里巴巴资深开发工程师, ifeve.com创始人] 感谢: 书上有一部分内容都是有网友精彩提供,在此表示感谢!也谢谢那些精彩书评的朋友,谢谢大家的支持。 转载自并发编程网 - ifeve.com

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册