「Java开源系统」Hutool工具集合开源项目

介绍语

本号主要是Java常用关键技术点,通用工具类的分享;以及springboot+springcloud+Mybatisplus+druid+mysql+redis+swagger+maven+docker等集成框架的技术分享;datax、kafka、flink等大数据处理框架的技术分享。文章会不断更新,欢迎码友关注点赞收藏转发!

望各位码友点击关注,冲1000粉。后面会录制一些视频教程,图文和视频结合,比如:图书介绍网站系统、抢购系统、大数据中台系统等。技术才是程序猿的最爱,码友们冲啊

如果码友觉得代码太长,可以从头到尾快速扫射一遍,了解大概即可。觉得有用后再转发收藏,以备不时之需。

正文:

Hutool工具类集合,又大又全,之前写工具类的时候有粉丝就提到过,引用也很方便,有两种方式,一种是直接引用maven依赖,一种是下载源码,推荐下载源码的方式,不要问为什么,哪有那么多为什么( ̄▽ ̄)"

官网:http://hutool.cn/

仓库:http://gitee.com/dromara/hutool

开源协议是木兰宽松许可证MulanPSL-2.0, 第2版。大家看开源项目,一定先看开源协议。

包含组件

一个Java基础工具类,对文件、流、加密解密、转码、正则、线程、XML等JDK方法进行封装,组成各种Util工具类,同时提供以下组件:

hutool-aop

JDK动态代理封装,提供非IOC下的切面支持

hutool-bloomFilter

布隆过滤,提供一些Hash算法的布隆过滤

hutool-cache

简单缓存实现

hutool-core

核心,包括Bean操作、日期、各种Util等

hutool-cron

定时任务模块,提供类Crontab表达式的定时任务

hutool-crypto

加密解密模块,提供对称、非对称和摘要算法封装

hutool-db

JDBC封装后的数据操作,基于ActiveRecord思想

hutool-dfa

基于DFA模型的多关键字查找

hutool-extra

扩展模块,对第三方封装(模板引擎、邮件、Servlet、二维码、Emoji、FTP、分词等)

hutool-http

基于HttpUrlConnection的Http客户端封装

hutool-log

自动识别日志实现的日志门面

hutool-script

脚本执行封装,例如Javascript

hutool-setting

功能更强大的Setting配置文件和Properties封装

hutool-system

系统参数调用封装(JVM信息等)

hutool-json

JSON实现

hutool-captcha

图片验证码实现

hutool-poi

针对POI中Excel和Word的封装

hutool-socket

基于Java的NIO和AIO的Socket封装

hutool-jwt

JSON Web Token (JWT)封装实现

可以根据需求对每个模块单独引入,也可以通过引入hutool-all方式引入所有模块。

工具类源码:

maven依赖方式

 
<dependency>
     <groupId>cn.hutool</groupId>
     <artifactId>hutool-all</artifactId>
     <version>5.8.5</version>
 </dependency>

鄙人编码十年多,在项目中也积累了一些工具类,很多工具类在每个项目都有在用,很实用。大部分是鄙人封装的,有些工具类是同事封装的,有些工具类已经不记得是ctrl+c的还是自己封装的了,现在有空就会总结项目中大部分的工具类,分享给各位码友。如果文章中涉及的代码有侵权行为请通知鄙人处理。

计划是先把工具类整理出来,正所谓工欲善其事,必先利其器。项目中不管是普通单体项目还是多模块maven项目或是分布式微服务,一部分功能模块都是可以重用的,工具类模块就是其中之一。

本文转载于网络 如有侵权请联系删除

相关文章

  • 测距神器——无影无踪的超声波!

    大家好,我是工程师看海1880年居里兄弟发现,在石英晶体的特定方向上施加压力或拉力会使晶体表面出现电荷,并且电荷的密度与施加外力的大小成比例,这就是以前介绍压电材料的正压电效应。二战时候被广泛应用,声呐,是一种利用声波在水中的传播和反射来进行导航和测距的技术或设备。 军舰、潜艇、反潜飞机上安装声呐后,就可以确定敌方舰艇、鱼雷和水雷的方位,声呐分为主动神呐和被动声呐两种。 比如潜艇中的被动声呐是接收环境中的音源,有助于隐藏自身位置,但感应精度低,而主动声呐是主动发声来感应环境信息,虽然精度高,但是会暴露出自身的位置。二战期间,德军损失的近900艘潜艇中,大多数是被声呐发现的,声呐在现代海战中的地位可见一斑。 下图是电影《灰猎犬号》的截图,里面有很多声呐相关的镜头,感兴趣的同学可以看看。下面是日常的消费电子中超声的典型应用,距离传感器是智能手机的标配,打电话时当手机听筒被遮挡时屏幕就黑屏,手机没有遮挡时屏幕就亮屏,手机中的距离传感器通常有红外和超声两种方案,红外方案对结构和屏幕要求很高,要非常注意漏光的影响,实现起来成本很高。 而超声的方案就稍微便宜一点,现在的全面屏手机,听筒采用了隐藏式

  • python测试开发django-122.bootstrap模态框(modal)学习

    前言模态框(Modal)是覆盖在父窗体上的子窗体,使用场景比如:在页面上编辑内容的时候经常需要弹出一个框框,可以编辑字段提交。 点删除按钮的时候,需要弹出二次确认框,这种现页面上的框框就是模态框模态框(modal)调用模态框有2种方法: 第一种方法: 通过data属性:在控制器元素(比如按钮或者链接)上设置属性data-toggle="modal", 同时设置data-target="#identifier"或href="#identifier"来指定要切换的特定的模态框(带有id="identifier")第二种方法: 通过JavaScript:使用这种技术,您可以通过简单的一行JavaScript来调用带有id="identifier"的模态框:$('#identifier').modal(options)#作者-上海悠悠QQ交流群:717225969 #blog地址https://www.cnblogs.com/yoyoketang/ <!--按钮触发模态

  • 高并发编程-使用wait和notifyAll进行线程间的通信3_多线程下的生产者消费者模型和notifyAll

    概述高并发编程-线程通信_使用wait和notify进行线程间的通信2_多生产者多消费者导致程序假死原因分析中分析了假死的原因,这里我们来看下改如何解决在多线程下出现的这个问题呢?解决办法多线程情况用while而不是if来判断条件是否满足notify—>notifyAllpackagecom.artisan.test; importjava.util.stream.Stream; publicclassMultiProduceConsumerDemo2{ //对象监视器-锁 privatefinalObjectLOCK=newObject(); //是否生产出数据的标识 privatebooleanisProduced=false; //volatile确保可见性,假设i就是生产者生产的数据 privatevolatileinti=0; publicvoidproduce(){ synchronized(LOCK){ Stringmsg=isProduced?"已生产货物":"没有货物可搬运"; //while每次被唤醒时都会

  • Apache Ozone和密集型数据节点

    该帖子也是由两名思科员工共同撰写的:KarthikKrishna,SileshBijjahalli当今的企业数据分析团队不断寻求从平台中获得最大收益。存储在数据平台策略中扮演着最重要的角色,存储为在其之上构建所有计算引擎和应用程序提供了基础。企业还希望转向可提供密集存储以及可靠性、可扩展性和性能的横向扩展存储模型。Cloudera和Cisco已在密集型存储节点上一起进行了测试,以实现这一目标。Cloudera已与Cisco合作,帮助构建适用于ApacheOzone的Cisco验证设计(CVD)。此CVD使用CiscoUCSS3260M5机架服务器上的ClouderaDataPlatformPrivateCloudBase7.1.5构建,ApacheOzone作为CDP的分布式文件系统。ApacheOzone密集型的部署配置ApacheOzone是CDP中引入的主要创新之一,该CDP为大数据应用程序提供了下一代存储体系结构,在该体系结构中,数据块在存储容器中进行组织以实现更大的规模并处理小对象。这是ApacheOzone如何在数据湖中大规模管理数据的主要体系结构增强。 ApacheOzo

  • 奇葩说之RTC的那些事

    正文字数:4475阅读时长:6分钟RTC本质上是一个时延、流畅、质量、成本等几个点的平衡,我们不能在某些单点上用力过猛,导致最终的效果大打折扣。拍乐云CEO赵加雨在LiveVideoStackCon2020北京站的演讲中抛出关于RTC的六个问题,同时站在辩论的正反方与大家拆解如何能够让RTC产品给用户带来更好的体验。文/赵加雨 整理/LiveVideoStack大家好,我是来自拍乐云的赵加雨。首先做个简单的自我介绍,我2003年加入WebEx,在WebEx工作了14年,前面几年是在国内工作,后面几年在美国。在美国工作几年之后,发觉中国的环境也不错,于是在2017年回国加入了网易,任网易云信CTO,直到去年创立了拍乐云。大家可以看到,虽然我现在的头衔是CEO,但我过去的经历一直都是在做技术,现在在公司里和小伙伴们也会经常讨论技术,对技术也一直保留着很多热情。本次分享是和我一直以来的工作经历和背景有关的视频会议,即RTC(Realtimecommunication)相关的一个主题。今天这个题目还是挺特殊的,不知道大家有没有人喜欢看奇葩说,其实奇葩说里很多时候都是观点的碰撞,没有绝对的对或是

  • [PHP框架] ThinkPHP6 介绍、安装及配置

    (一)概述ThinkPHP是一个免费开源的,快速、简单的面向对象的轻量级PHP开发框架,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简代码的同时,更注重易用性。 ThinkPHP是国人开发的国产开源PHP框架!(二)ThinkPHPV6所需要的环境1. PHP>=7.1.0的完整WebServer环境 2.Composer(三)安装ThinkPHP这里我主要介绍使用Composer快速部署ThinkPHP,当然你也可以采用其他方法,比如从Github上下载最新的release版本。composercreate-projecttopthink/thinktp输入以上命令后,将在当前目录生成tp项目,源码便部署完成(四)配置ThinkPHP与其他版本不同的是,最新的ThinkPHP6版本仅内置了PHP原生模板引擎(主要用于内置的异常页面输出),如果需要使用其它的模板引擎需要单独安装相应的模板引擎扩展,当然安装也是十分的方便的。如果你需要使用think-template模板引擎,只需要安装think-vi

  • OpenPose 基于OpenCV DNN 的手部关键点检测

    原文:OpenPose基于OpenCVDNN的手部关键点检测-AIUAI手部关键点检测,旨在找出给定图片中手指上的关节点及指尖关节点.其类似于面部关键点检测(FacialLandmarkDetection)和人体关键点检测(HumanBodyPoseEstimation);不同之处是,整个手部是作为一个目标物体的.OpenPose基于OpenCVDNN的单人姿态估计-AIUAI OpenPose基于OpenCVDNN的多人姿态估计-AIUAI 手部关键点检测的应用场景包括:[1]-手势识别[2]-手语识别与理解[3]-手部的行为识别等.1.Background主要是基于CMUPerceptualComputingLab开源的手部关键点检测模型.Github-OpenPose 手部关键点检测器的实现主要是基于论文:HandKeypointDetectioninSingleImagesusingMultiviewBootstrapping-CVPR2017.其中,如下:论文中,首先采用少量标注的人手部关键点图像数据集,训练类似于人体姿态关键点所使用的CPM-ConvolutionalPos

  • cassandra简单介绍与基本操作

      项目中用到了cassandra,用来存储海量数据,且要有高效的查询;本博客就进行简单的介绍和进行一些基本的操作一、使用场景:  是一款分布式的结构化数据存储方案(NoSql数据库),存储结构比Key-Value数据库(像Redis)更丰富,但是比Document数据库(如Mongodb)支持度有限;适合做数据分析或数据仓库这类需要迅速查找且数据量大的应用  相关概念:     keyspace->table–>column,对应关系型数据库database->table->column        存储结构:CREATETABLEmykeyspace.mytable(        key1text,        key2text,        key3text,        column1bigint,        column2int,        column3timestamp,        PRIMARYKEY(key1,key2,key3);)    key1:partitionKey,分区主键    key2,key3 clust

  • Lucene、solr以及elasticsearch之间的区别和联系

    全球数据库排行:DB-EnginesRanking首先分别说明三者的概念:Lucene是一套信息检索工具包,并不包含搜索引擎系统,它包含了索引结构、读写索引工具、相关性工具、排序等功能,因此在使用Lucene时仍需要关注搜索引擎系统,例如数据获取、解析、分词等方面的东西。而solr和elasticsearch都是基于该工具包做的一些封装。Solr是一个有HTTP接口的基于Lucene的查询服务器,封装了很多Lucene细节,自己的应用可以直接利用诸如.../solr?q=abc这样的HTTPGET/POST请求去查询,维护修改索引。Elasticsearch也是一个建立在全文搜索引擎ApacheLucene基础上的搜索引擎。采用的策略是分布式实时文件存储,并将每一个字段都编入索引,使其可以被搜索。Lucene使用上更加灵活,但是你需要自己处理搜素引擎系统架构,以及其他附加附加功能的实现。而Solr帮你做了更多,但是是一个处于高层的框架,Lucene很多新特性不能及时向上透传,所以有时候可能发现需要一个功能,Lucene是支持的,但是Solr上已经看不到相关接口。然后说明三者之间的区别首

  • 3年经验Java开发 拿不到30W年薪的原因只有这1个

    Java已不是当年,想单靠Java技术拿到30万年薪,已经很难。 但做为一名Java开发,优势也非常明显,只要你抓住这个机会,就能轻松实现这个小目标。目前,普通的Hadoop大数据工程师起薪也在20K/月,稍微有点经验薪资还要多,数据挖掘、机器学习、人工智能相关人才薪资更高。麦肯锡公司报告指出,大数据、人工智能方面人才紧缺,需求量激增。国际数据公司(IDC)预测,企业基于大数据业务的支出将突破5000亿美元。最新统计显示,人工智能相关人才平均年薪达到40-60万,经验丰富的可以拿到年薪100万以上。 但人工智能相关人才要求较高,50%以上要求硕士学历,而且要掌握人工智能相关技术需要具备扎实的大数据技术功底。对于普通程序员来说,从事Hadoop大数据、数据挖掘相关工作是最佳选择,原因有三:1、门槛较低,有编程基础就能学会,java开发具有天然优势;2、相比其他开发岗位薪资要高10-20万,年薪25万只是最低水平,稍微用心就能拿到30万+。3、Python是人工智能领域最主流的编程语言,现在掌握Python大数据技术更有利于日后无缝进入AI领域。那做大数据工程师需要掌握哪些技能呢?通过对拉

  • 最新小程序榜单!暴走漫画小程序强势入选 | 知晓程序周榜

    这里是「知晓程序周榜Top100」的第6期。上周,「摩拜单车」对外展示了小程序的又一项新能力:不换二维码,微信扫一扫,即可骑走单车。小程序的真正实力逐渐浮出水面,同时,也给许多小程序从业者打了一剂强心针。未来还会有什么新能力放出呢?我们尽管期待。现在,不妨跟知晓程序(微信号zxcx0101)来看看,本周占据了小程序Top100榜单的,是哪些小程序吧。想上榜单?就来小程序商店(minapp.com)发布你的小程序!「知晓程序周榜Top100」第六期关注知晓程序(微信号zxcx0101),在后台回复「第六期」,获得小程序周榜完整高清长图。MINA奖:每周一款最好的小程序优质的小程序,除了能上榜单,还有机会赢取MINA大奖。「MINA奖」是国内首个为小程序开发者设立的权威奖项,由最好的小程序生态运营商「知晓程序」主导发起。每周,MINA奖都会评选出一款优质的小程序,并提供丰富的推广资源。想查看MINA奖参与方式,以及评选详情?请点击这里。知晓程序周榜Top100往期榜单:第一期第二期第三期第四期第五期本文由知晓程序原创出品,关注微信号zxcx0101,可获得以下内容和服务:在微信后台回复「0

  • SaaS第一,股价暴涨,25年的金蝶迎来第二春

    3月13日,中国企业云服务厂商金蝶发布2017年财报,从财报可以看到一家企业软件公司已成功实现向云服务平台的转型,也可以看到企业服务市场未来的发展机会。涨幅超腾讯金蝶迎来第二春2017年金蝶营收23亿元,同比增长23.7%.云服务发展迅猛,收入同比增长66.7%,其中金蝶云收入同比增长87.7%,成财报最大亮点。在盈利方面,金蝶2017年毛利润为18.8亿元,同比增长约23.9%,毛利率约81.5%;经营利润约人民币4.2亿元,同比增长69.0%;来自经营活动产生的净现金为人民币约8.2亿元,同比增34.6%。董事会建议派付末期股息每股人民币1.3分,合共约人民币3888万元。衡量一个企业最重要的财务指标是营收和利润,而金蝶不论是营收还是利润都交出了一份不错的答卷。互联网行业当前属于比较新兴的产业,营收增幅能够超过金蝶23.7%的不多,利润增幅达到69%的几乎没有,比如阿里和腾讯最近一季度财报利润增幅分别只有20%和45%。作为一个已进入第25年的老牌企业软件服务巨头,金蝶2017年能够实现如此幅度的增长,用“第二春”来形容并不夸张。受财报利好影响,金蝶股价在14日上涨14.89%,领

  • 让你快速认识flume及安装和使用flume1.5传输数据(日志)到hadoop2.2

    问题导读: 1.什么是flume? 2.如何安装flume? 3.flume的配置文件与其它软件有什么不同? 一、认识flume 1.flume是什么? 这里简单介绍一下,它是Cloudera的一个产品 2.flume是干什么的? 收集日志的 3.flume如何搜集日志? 我们把flume比作情报人员 (1)搜集信息 (2)获取记忆信息 (3)传递报告间谍信息 flume是怎么完成上面三件事情的,三个组件: source:搜集信息 channel:传递信息 sink:存储信息 上面有点简练,详细可以参考Flume内置channel,source,sink三组件介绍 上面我们认识了,flume。 下面我们来安装flume1.5 二、安装flume1.5 1.下载安装包 (1)官网下载 apache-flume-1.5.0-bin.tar.gz apache-flume-1.5.0-src.tar.gz (2)百度网盘下载 链接:http://pan.baidu.com/s/1dDip8RZ密码:268r 我们走到这一步,我们会想到一个问题,我的电脑是32位的,不知道能否

  • 腾讯云云数据库PostgreSQL重置账户密码api接口

    1.接口描述接口请求域名:postgres.tencentcloudapi.com。 本接口(ResetAccountPassword)用于重置实例的账户密码。 默认接口请求频率限制:20次/秒。 APIExplorer提供了在线调用、签名验证、SDK代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成SDK调用示例。 2.输入参数以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见公共请求参数。 参数名称 必选 类型 描述 Action 是 String 公共参数,本接口取值:ResetAccountPassword。 Version 是 String 公共参数,本接口取值:2017-03-12。 Region 是 String 公共参数,详见产品支持的地域列表。 DBInstanceId 是 String 实例ID,形如postgres-4wdeb0zv UserName 是 String 实例账户名 Password 是 String UserName账户对应的新密码 3.输出参数

  • Windows xp IIS显示403错误解决方案

    XP的IIS很烦人,很多限制。 最近一客户用XP安装IIS,总提示:403.9错误连接的用户过多     解决方案: 1)安装IIS配置工具 下载地址:http://download.microsoft.com/download/iis50/Utility/5.0/NT45/EN-US/MtaEdt22.exe 点击安装 2)修改最大连接数 (1)LM-->W3SVC-->MaxConnections,默认为10个,如果连接过多,就是这个限制了 (2)LM-->W3SVC-->1-->MaxConnections,默认也是10个,这个适当调整,过大反而没有作用,建议40.   建议服务器采用Server版。  

  • 6月21日云栖精选夜读:国内首位!Node.js社区将阿里云工程师张秋怡吸纳为CTC成员

    原文链接   只有对Node.js 社区有足够大贡献的人,才会被吸纳为CTC成员,张秋怡究竟做了哪些贡献?   热点热议 国内首位!Node.js社区将阿里云工程师张秋怡吸纳为CTC成员 作者:身行 【云周刊】第127期:数据可视化最强CP登场!DataV接入ECharts图表库 作者:乔川 发表在:云栖社区官方团队 亿级用户平台的大数据实践 作者:云市场转载 发表在:云市场头条 知识整理 [干货]基础机器学习算法 作者:技术小能手 发表在:阿里技术 【PHP】is_callable()与method_exists()函数 作者:通天it技术 JS中的call()和apply()方法总结 作者:webmirror 如何将Linux系统转移至LVM卷 作者:知与谁同 理解Python并发编程-PoolExecutor篇 作者:suchy 美文回顾 如何优雅地使用VIM文件管理插件NERDTree 作者:知与谁同 揭秘红包场景下的高性能本地存储架构设计 作者:技术小能手 发表在:阿里技术 Java快速入门,从这六条技能

  • android intent和intent action大全

    1.Intent的用法:(1)用Action跳转1,使用Action跳转,如果有一个程序的AndroidManifest.xml中的某一个Activity的IntentFilter段中定义了包含了相同的Action那么这个Intent就与这个目标Action匹配。如果这个IntentFilter段中没有定义Type,Category,那么这个Activity就匹配了。但是如果手机中有两个以上的程序匹配,那么就会弹出一个对话可框来提示说明。Action的值在Android中有很多预定义,如果你想直接转到你自己定义的Intent接收者,你可以在接收者的IntentFilter中加入一个自定义的Action值(同时要设定Category值为"android.intent.category.DEFAULT"),在你的Intent中设定该值为Intent的Action,就直接能跳转到你自己的Intent接收者中。因为这个Action在系统中是唯一的。2,data/type,你可以用Uri来做为data,比如Uriuri=Uri.parse(http://www.google.com);Inten

  • 一、【价值观】我对价值贡献的拙见

    就从这篇开始,不再拖延,不再犹豫,只管开始去写,加油! 价值贡献,包括不限于个人在工作中,为企业所做的工作成果贡献,也有社会公益志愿者,日常与人相处助人为乐的行为中。具体的贡献价值就在于这些种种行为能够让他人感受变好(“用户”体验),进而对我们进行夸奖的一种正向反馈,这种满满的成就感源自于内心深处的自我肯定,有相当大的自驱力。 当然了,各种物质上的回报和奖励也是不会少的。 我想这才是人生的意义所在,而不是赚钱与享乐!!!价值贡献的方式有两类:第一类是亲力亲为(公益行动,助人为乐)和物质帮助(比如物资捐赠,慈善资金),这种属于利用自己有限的时间,精力,物力和财力;还有一类是通过影响他人的思想,从其思想上进行启蒙帮助,这种更为彻底,帮助效果更大,能够影响的人数范围也没有上限。所谓授人以鱼不如授人以渔,在日常中的与人交流,互帮互助之外,还应该多写写文章,既能提升自己的表达能力,还能将自己的想法与世界分享,互相交流,从而迸发出更加深刻的见解。 以上第二类方式,让我联想到当年鲁迅会不会也是这么想的,所以他弃医从文。在那种战乱年代,从事医生来挽救这个国家,确实个人精力有限,一个一个的救助伤员根本无

  • AtCoder Grand Contest 018 E Sightseeing Plan

    题意: 给定三个矩形,选定三个点,答案加上第一个点出发经过第二个点在第三个点结束的方案数,只能往右或往下走。     折腾了我半个多下午的题。 设三个矩形为$A,B,C$一个思路是枚举$B$的那个点$s(x,y)$,求出$s$到$A$中所有点的方案数的和乘上$x$到$B$中所有点的方案数的和,复杂度爆炸。 $s$到$A$中所有点的方案数的和等于$$\sum_{i=x1}^{x2}\sum_{j=y1}^{y2}C_{x-i+x-j}^{x-i}$$ 用二维前缀和的方法容斥一下,变成了求(顺便化简)$$\sum_{i=0}^{a}\sum_{j=0}^{b}C_{i+j}^{i}=C_{a+b+1}^{a+1}-1$$复杂度变成了$O(N^2)$然后发现那个化简完的组合数其实相当于$s$到一个固定的点(不随$s$改变)的方案数,相当于固定了起点,可以用同样的方法固定终点。现在每条起点到终点的路径都有一个权值,相当于经过的$B$中的点的个数,答案就是所有路径权值和。再把$B$容斥一下,让矩形的左上角为起点,这样就可以枚举走出矩形后的第一个点求权值和了。复杂度$O(N*6

  • 设计师应该知道的那些事儿(一)

    最近一个作业是设计海报,弄好之后总觉得不太好,于是发邮件请教老师,老师答复说这种问题没有答案,只能隔一段时间(比如睡一觉之后)回头再看,可能会有更好的想法。这个道理我能够明白,但还是担心自己会在错误的路上一直走下去,就像一个人如果不刻意纠正自己,即使他生活在国外每天和当地人交谈,外语水平还是不会有什么提高。恰好昨天在Lynda上看到一个很好的设计教程:Before&After:ThingsEveryDesignerShouldKnow,讲师JohnMcWade给出了一些非常实用的技巧,对我很有启发。这些技巧并非可以直接套用的答案和模式,也无法取代老师说的「不断回头审视」,但它们隐约给出了一个方向,不知所措的时候拿来试一下,尽管可能无法直接解决问题,但或许会引出更好的想法。观看Lynda上的视频需要付费(如果你有时间并且网速过得去,非常推荐购买Lynda的会员,它是我见到过的最好的在线学习网站),所以这里做一下笔记,是分享,也是借此强迫自己认真再看一遍。笔记图片较多,所以分为2~3部分。这是第一部分。1.Knowyourstory.这个其实没什么好说的,就是你要知道自己想要传达什

  • HTTP与HTTPS

    HTTP: 1、HTTP(超文本传输协议)是互联网上应用最为广泛的一种网络协议,用于传送WWW方式的数据。 2、由HTTP客户端发起一个请求,建立一个到服务端指定端口(默认为80端口)的TCP连接,HTTP服务端则在那个端口监听客户端发送过来的请求,一旦收到请求,服务端向客户端发回一个状态行,比如“HTTP/1.1200OK”和响应的消息,消息的消息体可能是请求的文件、错误消息或者其他信息。 3、客户端向服务端发送一个请求,请求头包含请求的方法、URL、协议版本以及包含请求修饰符、客户信息和内容的类似于MIME的消息结构。服务端以一个状态行作为相应,响应的内容包括消息协议版本,成功或者错误编码加上包含服务端信息、实体元信息以及可能的实体内容。HTTPS: 1、HTTPS(安全套接字层超文本传输协议)以安全为目标,在HTTP的基础上加入了SSL协议,SSL协议是为网络通讯提供安全及数据完整性的一种安全协议,用于安全的HTTP数据传输。 2、HTTPS存在不同于HTTP的默认端口及一个加密/身份验证层(在HTTP与TCP之间)。 3、HTTPS的作用可以分为两种:一种是建立信息安全通道,保

相关推荐

推荐阅读