自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(79)
  • 资源 (4)
  • 收藏
  • 关注

原创 Android截屏

public static int getWindowHeight(Context context) { return context.getResources().getDisplayMetrics().heightPixels;}public static int getWindowWidth(Context context) { return context.getResources().getDisplayMetrics().widthPixels;}VirtualD..

2021-03-02 16:13:31 164

原创 华为平板5.x,Android7.0系统访问接口失败的问题。

后台修改nginx配置ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;解决。比较坑的问题。

2021-01-29 15:09:30 346

原创 Java字符串数组,根据ASCII表排序

ArrayList<String> list = new ArrayList<>();private void initData() { try { JSONObject jsonObject = new JSONObject(JsonResult.test); Iterator<String> keys = jsonObject.keys(); while (keys.hasNext()){ .

2021-01-13 15:32:56 1905

原创 Android webview设置Cookie时的坑。

CookieSyncManager.createInstance(getContext());CookieManager cookieManager = CookieManager.getInstance();cookieManager.setAcceptCookie(true);cookieManager.setCookie(url, "bd_env=" + "android");cookieManager.setCookie(url, "xxxx" + xxxx);if (Build.V.

2020-07-24 11:34:55 422

原创 解决RecyclerView刷新时,列表中的视频窗口闪烁的问题。

最近做在线课堂的过程中,多个用户开视频时,刷新状态,会闪烁。@Overridepublic long getItemId(int position) { return Long.parseLong(userList.get(position).getUserId());}userVideoAdapter = new UserVideoAdapter(getActivity(), mRtcEngine);userVideoAdapter.setHasStableIds(true)

2020-07-21 16:37:46 346

原创 简单的毫秒和微秒转换

项目中的IM,服务器用的是微秒,使用纳秒转的。但是前端没必要精确度那么高。服务端发来的微秒字符串转毫秒Long.parseLong(bean.getSendTime())/1000本地的毫秒转微秒System.currentTimeMillis()*1000

2020-07-16 17:51:52 993

原创 从零开始学编码9

人生之所以有意义,是因为人的生活是连续的,不会出现每天起床以后,以前的事都忘记,没有记忆的人生是没有意义的。但是人的记忆也是有缺陷的,你并没有办法记住你所经历过的没件事,没有过目不忘的本领。而计算机如果容量足够大,它是可以的,所以人们从以前的利用纸笔来辅助记忆,过渡到以计算机存储来辅组记忆。小的时候日记写了一本又一本,而现在每天发一发朋友圈,等一些年以后翻看朋友圈的时候,会感叹道,哇!当年自己也是一枚小鲜肉啊! 这篇文章是这个系列的最后一篇文章,我们前面说了加法器,计数器,今天...

2020-06-22 11:27:32 398

原创 从零开始学编码8

最近的这几篇文章,对有些朋友来说可能有些难以理解,特别是半路转行来当程序员的,因为有前辈们将计算机的世界进行一层又一层抽象和封装,让我们可以选择一门感兴趣的编程语言,掌握这门语言的API,掌握编程思想,选一款好用的IDE,也能很好的完成工作,甚至做出很好的成就,拿到不菲的薪水,但是人类是有好奇心和求知欲的,你就不想知道,你输入的一行行代码,怎么变成机器码0和1,计算机又怎么处理这些0和1吗?特别最近M国对我国进行科技打压,暴露出来我国的计算机基础科学的短板,虽然我们有很多个大型IT公司,但是...

2020-06-21 11:38:56 447

原创 从零开始学编码7

从零开始学编码6中我们学习了怎么一步步使用基本逻辑门构建出来一个8位二进制加法器,而这篇文章我们要通过加法器来实现减法运算,并且引出反码和补码的概念。 小学的时候,我们学过各种算术技巧,口算,心算,指算,凑十法,找朋友等,有各种各样的口诀。而其中有一个技巧是算减法时所用,例如:253-176这里需要使用借位,但是如果使用: 253-176+999+1-1000=253+(999-176)+1-1000=77 通过上面的转换,我们不使用借位也...

2020-06-18 17:35:12 298

原创 从零开始学编码6

在从零开始学编码5中使用双掷继电器设计了四种基本逻辑门(与门、或门、或非门、与非门),双掷继电器有缓冲器串联为与门,并联为或门;反向器串联为或非门,并联为与非门。 这次我们来看看如何使用逻辑门来搭建一个二进制加法器,而减法、乘法和除法都可以用加法来实现。在计算机发展史的早期,有大能设计了机械结构的十进制加法器,但是被历史所淘汰。现在我们所使用的计算机cpu都是二进制,之所以使用二进制,是因为在很容易实现两种状态,高电平和低电平,现在的信息世界已经由二进制构成了,如果采用高电...

2020-06-17 21:00:27 349

原创 从零开始学编码5

从零开始学编码4上一篇文章,从现实的问题开始分析,抽象成逻辑问题,再通过布尔代数解决问题,然后使用基础电路来表达布尔代数。 蜿蜒的长城上有一座又一座烽火台,古代如果一处发现军情,白天烧狼烟,晚上燃烽火,用来向远处的人的传递军情,这里的烽火台就起到一个消息中继的作用,通过一个个烽火台哪怕百里之外也能迅速知道军情。到了近代传递军情信息都是通过电报,而电报如果传输的距离过远,使用长长的导线也不行,如果导线过长,电阻变大,电流信号就会衰弱,这时候远距离电报机之间就需要类似烽火台的设备来使衰弱的信...

2020-06-15 19:26:19 1010

原创 从零开始学编码4

从零开始学编码1从零开始学编码2从零开始学编码3 前面三篇文章我们了解了编码的本质,基本电路,以及各种进制数所引出的二进制数。以及具备了计算机科学的最基本单位,这一篇将介绍逻辑与开关,使用0和1表示逻辑学的运算,以及电路中的中继器和它的衍生出来的,2-4译码器、反相器、缓冲器,与门、或门、与非门、或非门。而下一篇将使用这些逻辑门设计二进制加法器。编码一书本身的例子就非常好,便于理解,我将引入书中选猫咪的例子。 逻辑学是研究由条件推导结果的学科,在漫长的时间...

2020-06-08 13:20:44 356

原创 从零开始学编码3

从零开始学编码1中我们对编码这个概念进行了了解。在从零开始学编码2中学习了基本的电路知识。 这篇我们说一说进制数。 在远古时期,人类便有了计数的需求,看着自己的手指,大拇指代表一个苹果,食指代表第二个苹果,中指代表的第三个苹果、、、、,好吧人类只有十根手指,可能只能做十以内的计数,后来人的思维能力发散,有了逻辑能力,可以用一个10,两个10、、、,十个十,这样计数。无疑十进制是最适合人类的计数方式,因为人类有十根手指。我上大学的时候去给一个学前班的老师代课,给小朋友...

2020-06-07 20:40:09 338

原创 从零开始学编码2

从零开始学编码1 接着上次说,计算机内的世界是由0和1组成的。很多种事物可以表现成0和1。例如:女人是0,男人是1。手电筒灭是0,亮是1。这次我们就说一说手电筒。 小时候上夜自习,农村的晚上没有路灯,学完冰心奶奶的小橘灯后,我们热衷于用酒盒子做灯笼,夜自习放学挑着灯笼走。后来见有人拿小手电筒,还带彩光的,感觉特别厉害的样子。我从攒的钱里(攒钱准备买游戏机,可以玩俄罗斯方块的那种,一共攒了三年,买回来的那天晚上和弟弟抢着玩被我妈摔碎了),拿出来两块钱,也买了一个小手电,送了两...

2020-06-05 18:54:33 234

原创 从零开始学编码1

我记得小时候学的课文,地下党同志被捕前,将一把笤帚放到窗外,接头的同志看到这个就知道这个地方不安全。我们看谍战片的时候经常会有暗语,特殊声音或标志来通知自己的同志一些重要信息。还有就是常见的发电报,滴滴哒哒的声音。这些暗语,声音,标志,甚至于摆放特殊的笤帚。就是编码,编码重于约定。 小时候我经常会想着,狗为什么叫做狗,鸡为什么叫做鸡。我妈对我说,大家都这么叫。你这样说别人就知道你说的是什么动物。你如果不这样说,可能别人不知道你要表达的是狗。这样的回答并没有解决我的疑惑。...

2020-06-05 12:22:36 473

原创 学习感悟和随笔

到今天为止,我学习的过程中记的笔记已经都发完了,没有存货了。 学习的时候记得笔记,比较零碎,可以用来查漏补缺还行,真用来学习,是不够的。看的时候心里活动轨迹是这样就可以了,哦!这个多线程的东西我知道,作者写的不详细,其实除了继承Thread,实现Runnable意外还有第三种方法,第三种方法是吧啦吧啦。哦!这个多重锁的概念我不知道,作者没写清楚,查查资料去。这样也算能学习到东西。 我们通常将一门学科定为理论学科或者实操学科。而计算机编程这个学科是即重理论又...

2020-06-03 17:06:00 216

原创 web-ElasticSearch

ElasticSearch简介Elasticsearch是一个实时的分布式搜索和分析引擎。它可以帮助你用前所未有的速度去处理大规模数据。ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。ElasticSear.

2020-06-03 16:27:06 199

原创 web-数据库五(MYSQL)

1.数据库的基本概念1.数据库的英文单词:DataBase 简称:DB2.什么是数据库?用于存储和管理数据的仓库。3.特点:1.持久化存储数据。其实数据库就是一个文件系统。2.方便存储和管理数据。3.使用了统一的方式操作数据库。4.常见数据库软件1.Oracle2.MySQL3.SQL Server4.PostgreSQL5.MongoDB6.Cassandra7.Microsoft Access8.Redis9.SQLite10.DB

2020-06-03 16:23:44 184

原创 web-数据库四(数据库权限操作)

* DBA:数据库管理员* DCL:管理用户,授权1. 管理用户1. 添加用户:* 语法:CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';2. 删除用户:* 语法:DROP USER '用户名'@'主机名';3. 修改用户密码:UPDATE USER SET PASSWORD = PASSWORD('新密码') WHERE USER = '用户名';UPDATE USER SET PASSWORD = PASSWORD('abc.

2020-06-03 16:21:34 211

原创 web-数据库三(事务)

事务的基本介绍:1.概念:如果一个包含多个步骤的业务操作,被事务管理,那么这些操作要么同时成功,要么同时失败。2.操作:1. 开启事务: start transaction;2. 回滚:rollback;3. 提交:commit;3.例子:CREATE TABLE account (id INT PRIMARY KEY AUTO_INCREMENT,NAME VARCHAR(10),balance DOUBLE);-- 添加数据INSERT INTO

2020-06-03 16:20:19 229

原创 web_数据库二(多表操作)

1.多表查询:2.事务3.DCL控制权限,和用户的。多表查询:*查询语法:select * from 表名列表 where 条件;笛卡尔积A,B,有两个A,B,取这两个集合的所有组成情况。消除无用的数据。多表查询分类:1.内连接查询隐式内连接-- 查询所有员工信息和对应的部门信息SELECT * FROM emp,dept WHERE emp.`dept_id` = dept.`id`;-- 查询员工表的名称,性别。部门表的名称SELECT em.

2020-06-03 16:19:10 157

原创 web-数据库一

数据库设计1.多表之间的关系:1.一对一;如:人和身份证分析:一个人只有一个身份证,一个身份证只能对应一个人2.一对多(多对一):如:部门和员工分析:一个部门有多个员工,一个员工只能对应一个部门3.多对多:如:学生和课程分析:一个学生可以选择多门课程,一个课程也可以被多名学生选择。表的实现:1.一对多表的实现:在多的一方建立外键,指向一的一方的主键。2.多对多表的实现:需要借助第三张中间表,中间表至少包含两个字段,这两个字段作为第三章表的外键.

2020-06-03 16:18:10 133

原创 web-MongonDB

NOSQL,最像关系型数据库的非关系型数据库。关系型数据库,表与表之间有关系,有一对一,一对多,多对多。一对一和一对多靠主外键产生关联。多对多靠中间表产生关联。-----------------------------------------------------------------MongoDB1)数据量大2)写入操作频繁3)价值较低对于这样的数据,更适合用MongoDB来实现数据的存储。像淘宝订单这类数据不能用MangoDB。跨平台,面向文档的数据库。当..

2020-06-03 16:15:35 96

原创 web-RabbitMQ

消息队列中间件是分布式中重要组件,主要解决应用耦合,异步消息,流量削峰,消息通信等。常用的消息队列有ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ,RocketMQ.以前是消息发到队列中。现在是消息发给交换器,一个交换器连接多个队列。多个交换器和多个队列交叉链接。RabbitMQ Server,也叫broker serverProducerConsumerExchangeQueueRoutingKeyRabbitMQ Ser...

2020-06-03 07:39:38 186

转载 web-redis

1.概念2.下载安装3.命令操作1.数据结构4.持久化操作5.使用Java客户端操作redisRedis:概念:redis是一款高性能的NOSQL系列的非关系型数据库。关系型数据库:mysql、oracle1.数据之间有关联关系2.数据存储在硬盘的文件上非关系型数据库(NOSQL):redis. hbase存储key:valuename:zhangsanage:231.数据之间没有关系。2.数据存储在内存中缓存思想:...

2020-06-01 18:05:13 140

原创 web-maven

概念:一键构建。下载安装基本操作高级操作maven 项目标准目录结构src/main/java 核心代码部分src/main/resources 配置文件部分src/test/javasrc/test/resourcessrc/main/webapp 页面资源、js、scc、imgMaven常用命令:mvn cleanmvn compliemvn testmvn packagemvn install每一个构建项目的命令都对应了m..

2020-06-01 18:03:42 100

原创 web-json

JSON:Javascript Object Notation Javascript对象表示法。json多用于存储和交换文本信息的语法。进行数据传输json比xml,更小,更快,更易解析。语法:1.基本规则:1.数据在名称/值对中。2.数据由都好分割。3.花括号保存对象。4.方括号保存数组。2.获取数据:1.json对象.键名2.json对象["键名"]3.数据对象[索引]3.JSON数据和Java对象的相互转换JSON解析器:...

2020-06-01 18:02:43 104

原创 web-AJAX

AJAX概念:asynchronous JavaScript And XML 异步的JavaScript 和XML1.异步和同步:客户端和服务器端相互通信的基础上。同步:客户端必须等待服务器端的响应,在等待的期间客户端不能做其他操作。异步:客户端不需要等待服务器端的响应,在服务器处理请求的过程中,客户端可以去进行其它的操作。部分页面更新实现方式:1.原生的JS实现方式2.JQeury实现方式1.$.ajax()$.ajax({"键值对"}),键值对用...

2020-06-01 18:01:35 72

原创 web-JQuery高级

动画:三种方式显示和隐藏元素1. 默认显示和隐藏方式1. show([speed,[easing],[fn]])1. 参数:1. speed:动画的速度。三个预定义的值("slow","normal", "fast")或表示动画时长的毫秒数值(如:1000)2. easing:用来指定切换效果,默认是"swing",可用参数"linear"* swing:动画执行时效果是 先慢,中间快,最后又慢* linear:动画执行时速度是匀速的3. fn:在动画完成时执行的函数,每

2020-06-01 16:50:26 181

原创 web-JQuery

概念:一个JavaScript框架。简化JS开发JavaScript框架:本质上是一些js文件,封装了js的原生代码而已快速入门1.步骤:1.下载JQueryjquery-xxx.js与jquery-xxx.min.js区别:1.jquery-xxx.js:开发版本,给程序员看,有良好的缩进和注释2.jquery-xxx.min.js:生产版本,程序中使用,没有缩进。体积小一些。程序加载更快。2.导入JQuery的js文件:导入min.js文件3.使用var d.

2020-06-01 16:48:24 148

原创 web-Filter

WEB三大组件:Filter:过滤器Listener:监听器Sevelet:控制器Fliter过滤器:Web中的过滤器:当访问服务器的资源时,过滤器可以将请求拦截下来,完成一些特殊的功能。过滤器的作用:一般用于完成通过的操作。如:登录验证、统一编码处理、敏感字符过滤***。快速入门:1.步骤:1.定义一个类,实现Filter接口2.复写方法3.配置拦截路径2.代码:@Overridepublic void doFilter(Servle..

2020-06-01 16:47:12 121

原创 web-三层架构和MVC模式

三层架构:软件设计的架构:1.界面层(表示层/web层):用户看的界面。用户可以通过界面组件和服务器进行交互。接受用户参数,封装数据,调用业务逻辑层完成处理,转发jsp页面完成显示。com.zcl.项目名.webSpringMVC框架2.业务逻辑层(service层):处理业务逻辑层。组合Dao层中的简单方法,形成复杂的功能(业务逻辑操作)com.zcl.项目名.serviceSpring框架3.数据访问层(dao层,Data Access Object):操作数据存

2020-06-01 16:45:03 185

原创 web-el表达式&JSTL标签

EL表达式:1.概念:Expression Language 表达式语言2.作用:替换和简化jsp页面中Java代码的编写3.语法:${表达式}4.注意:jsp默认支持el表达,如果要忽略el表达式1.设置jsp中page指令中 isELIgnored="true",忽略当前jsp页面中所有的el表达式。2.\${表达式}:忽略当前这个el表达式。5.使用:1.运算:运算符:1.算数运算符:+-*/(div)%(mod)2.比较运算符:> < &g

2020-06-01 16:42:49 145

原创 web-JSP

概念:java servlet page:java服务器端页面可以理解为一个特殊的页面,既可以定义html,又可以定义Java代码。用于简化servlet的开发。1.服务器解析请求消息,找到index.jsp资源。2.如果找到了,会将index.jsp转换为_index.java文件3.编译成.class文件4.由字节码文件提供访问。原理JSP本质上就是一个servlet。jsp的脚本:jsp声明Java代码的方式。1.<% Java代码 %&g..

2020-06-01 16:41:38 113

原创 web-cookie和session

1.会话技术:CookieSession会话技术:1.会话:一次会话中包含多次请求和响应。一次会话:浏览器第一次给服务器资源发送请求,会话建立,直到一方断开为止。2.功能:在一次会话的范围内的多次请求间,共享数据。3.方式:1.客户端会话技术:Cookie2.服务器端会话技术:SessionCookie:1.概念:客户端会话技术,将数据保存到客户端2.快速入门:步骤:1.创建Cookie对象,绑定数据。Cookie(String nam..

2020-05-31 12:11:44 99

原创 web-ServletContext

ServletContext对象1.概念:代表整个web应用,可以和程序的容器(服务器)来通信获取:通过request对象获取:request.getServletContext();通过HttpServlet获取: this.getServletContext();2.功能:1.获取MIME类型:在互联网通信过程中定义的一种文件数据类型。格式:大类型/小类型 text/html image/jpeg获取:String getMimeType(String file )2

2020-05-31 12:06:31 115

原创 web-Response

Http协议:1.请求消息:客户端发送给服务器端的数据。数据格式:1.请求行2.请求头3.请求空行4.请求体2.响应消息:服务器端发送给客户端的数据。数据格式:1.响应行HTTP/1.1 200 OK1.组成:协议/版本 响应状态码码 状态描述2.响应状态码码:服务器告诉客户端浏览器本次请求和响应的一个状态1.状态码都是3位数字2.分类:1xx:服务器接收客户端消息,但没有接受完,等待一段时间后,发送1xx状态码2xx:成功。代表2003x

2020-05-31 12:03:35 120

原创 web-Request

Request:1.request对象和response对象的原理 1.tomcat服务器会根据请求url中的资源路径,创建对应的ServletDemo的对象。 2.tomcat服务器会创建request和response对象,request对象中封装请求消息数据。 3.tomcat将request和response两个对象传递给service方法,并且调用service方法。 4.程序员可以通过request对象获取请求消息数据,通过respon...

2020-05-31 11:59:53 154

原创 web-http

概念:Hyper Text Transfer Protocol超文本传输协议传输协议:定义了,客户端和服务器端通信时,发送数据的格式。特点:1.基于TCP/IP的高级协议2.默认端口号:80http://baidu.com:803.基于请求响应模型的。一次请求对应一次响应。4.无状态的:每次请求之间相互独立。历史版本:1.0:每次请求都新建一个链接,响应后断开链接1.1:复用链接请求消息数据格式:1.请求行请求方式请求url 请求协议/版本G.

2020-05-31 11:50:40 92

原创 web-servlet

servlet:server applet概念:运行在服务器端的小程序。servlet就是一个接口,定义了java类被浏览器访问到(Tomcat识别)的规则。我们自定义一个类,实现Servlet接口,复写方法。快速入门:1.创建Java EE的项目2.定义一个类,必须实现Servlet接口3.实现接口中的抽象方法4.配置Servlet在web.xml中配置servlet<!-- 配置servlet--><servlet><serv

2020-05-31 11:48:29 104

android 二级菜单

每个一级listview菜单下面可以打开二级listview菜单。类似QQ的好友显示方法

2012-08-14

viewflipper

类似手机QQ刷新View的方式。简单,易用。逻辑清晰,没有自定义view。根据公司需求写的

2012-08-03

照相+相册+数据库+3D浏览图片

照相+相册+数据库+3D浏览图片,动态滑入划出

2012-02-28

使用java计算年龄

公司有个项目要精确人的年龄是几年几月几日。在网上没有找到特别适合的,就自己写了一个,大小月,平年润年都考虑到了。精确度还可以。

2011-12-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除