自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

搬砖路上的博客

挥汗如雨的搬运着......

  • 博客(109)
  • 收藏
  • 关注

原创 Android 富文本SpannableString

在Android开发中,有很多UI会画出一些特别炫酷的界面出来,比如一个字符串里有特殊的字会有其他颜色并加粗、变大变小、插入小图片、给某几个文字添加边框,如果我们使用笨办法用几个TextView或者ImageView来链接,这样虽然能实现但是会不会很笨重,如果出现换行就尴尬了,他不能想做到无缝换行造成效果跟预期效果相差太大,如果效果很复杂是不是会给应用增加体验负担?还会给带来适配的问题,SpannableString的出现帮我们解决了这一系列的问题。解决复杂的字符串效果UI效果,

2023-09-20 09:12:11 665

原创 Android studio之 build.gradle配置

app的目标sdk版本,可以理解为当前app在这个版本是比较稳定的,针对这个版本所开发的,是安卓提供的前向兼容的主要手段,它的作用就是当targetSdkVersion为20的app运行在系统版本号高于20的手机系统中,app所执行的旧版本api,在高版本可能不一样了,但是安卓为了兼容在系统层会读取当前应用的targetSdkVersion,当targetSdkVersion版本号低于当前版本就会执行旧版本的api,不会导致由于系统的原因而让app运行失常。1、repositories闭包。

2023-08-23 16:16:09 2676

原创 记录Paint部分常用的方法

Paint

2023-03-06 15:45:04 473 1

原创 常用逻辑运算符

运算符

2023-02-27 15:21:42 410

原创 理解、总结重点知识

知识总结

2023-02-23 15:28:42 281

原创 三阶贝塞尔曲线实现直播间刷礼物功能和波浪的效果

三阶贝塞尔曲线

2023-02-11 16:30:25 253

原创 二阶贝塞尔曲线实现添加购物动画

贝塞尔曲线

2023-02-11 15:47:08 166

原创 Spring之@Repository @Service @Component @Controller的区别和使用场景

@Component, @Repository, @Service的区别

2022-12-06 11:57:47 1309

原创 Spring之@ResponseBody,@RequestParam,@PathVariable ,@PathParam, @RequestBody 如何使用和相互之间的区别

Spring之@ResponseBody,@RequestParam,@PathVariable ,@PathParam, @RequestBody 如何使用和相互之间的区别

2022-12-03 11:14:53 1170

原创 Spring之@RequestMapping、@GetMapping、 @PostMapping 三者的区别

比较RequestMapping PostMapping GetMapping关系

2022-12-02 12:05:19 1734

原创 Spring中@Controller 和 @RestController 的作用与区别

Controller和RestController的区别

2022-12-02 10:53:15 646

原创 IntelliJ IDEA + spring-boot+mysql简单实现获取数据库数据接口例子

简单实现springboot连MySQL获取数据例子

2022-12-01 17:19:27 1575

原创 IntelliJ IDEA的下载与安装教程

IntelliJ IDEA的下载与安装教程。

2022-11-30 10:21:13 193

原创 实现监听NestedScrollView拖拽、惯性滑动、滑动停止、滑动到顶部和底部

运行实时监听日志:因为在开发中经常会需要在滚动的各种状态下处理一些UI界面功能,但是系统又没有提供实时监听拖拽、惯性滑动、滑动停止、滑动到顶部和底部等功能。那怎么办,只能自己去实现这些功能。滚动的几种状态 /** * 滚动状态 */ public enum ScrollState{ DRAG, // 拖拽中 SCROLLING, // 正在滚动 IDLE // 已停止 }.

2021-11-30 14:26:07 7538

原创 Camera+SurfaceView拍照和视频录制

1、拍照 和 视频录制效果获取相机实例 /** * 获取相机实例 */ camera = Camera.open();获取相机参数和配置参数 Camera.Parameters params = camera.getParameters(); /**获取所有支持预览的分辨率*/ List<Camera.Size> supp.

2021-11-18 14:57:13 1090

原创 使用JNI和反射实现调用Java方法跳转页面

学习JNI,使用JNI和反射实现调用Java方法跳转页面实现拍照实现视频录制

2021-11-18 10:33:56 631

原创 蓝牙实现数据传递

实现数据传递需要做些什么?需要用到什么?怎么才能让数据传递到另一端?服务端客户端

2021-11-15 17:26:16 11071 3

原创 怎么解决Android 10无法随意创建文件

创建文件所需要权限//可创建和删除文件权限<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS">//存储读写权限<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/><uses-permission android:name="android.permission.REA.

2021-09-10 16:40:54 1120

原创 并发之PriorityBlockingQueue简单使用

PriorityBlockingQueue是一个支持优先级的无界阻塞队列,直到系统资源耗尽。默认情况下元素采用自然顺序升序排列。也可以自定义类实现compareTo()方法来指定元素排序规则,或者初始化PriorityBlockingQueue时,指定构造参数Comparator来对元素进行排序。但需要注意的是不能保证同优先级元素的顺序。PriorityBlockingQueue也是基于最小二叉堆实现,使用基于CAS实现的自旋锁来控制队列的动态扩容,保证了扩容操作不会阻塞take操作的执行实现类需要自.

2021-09-01 11:45:26 3687

原创 kotlin实现单例模式

饿汉式实现单例模式/** * 饿汉式实现单例模式 * * (一) */object SingletonDemo0{}懒汉式实现单例模式/** * * 懒汉式实现单例模式 *(二) */class SingletonDemo private constructor(){ companion object{ private var instance:SingletonDemo ?= null get() {.

2021-04-06 10:56:03 321

原创 保持屏幕常亮的方法

一、方式一不需要授权 ( 推荐使用)getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);二、方式二PowerManager.WakeLock 需要授权添加权限 <uses-permission android:name="android.permission.WAKE_LOCK" />1.实例化 PowerManager powerManager = (PowerManager)getSy

2020-12-26 10:32:59 1174

原创 学习记录反射机制

与Java反射相关的类如下: 类名 用途Class类 代表类的实体,在运行的Java应用程序中表示类和接口Field类 代表类的成员变量(成员变量也称为类的属性)Method类 代表类的方法Constructor类 代表类的构造方法Class类获得类相关的方法方法 用途asSubclass(Class<U> clazz) 把传递的类的对象转换成代表其子类的对象Cast 把对象转换成代表类或是接口的对象getClassLoader() 获得类的加载器

2020-12-03 15:52:07 184

原创 Android studio Gradle配置lintOptions

android { lintOptions { // true--关闭lint报告的分析进度 quiet true // true--错误发生后停止gradle构建 abortOnError false // true--只报告error ignoreWarnings true // true--忽略有错误的文件的全/绝对路径(默认是true) //absolutePath

2020-12-03 11:50:25 889

原创 OpenGL-ES(二)

OpenGL绘制图形原理:是通过绘制点、线、三角形来组成各种图形或者模型的,想要实现绘制必须知道顶点、片段等数据,首先来了解绘制的坐标系整个绘制的范围-1到1,坐标原点在我们的手机中心点,和咱们canvas的绘制坐标不要混淆了。在手机中心绘制一个矩形,如下图:定义顶点中标数组 /** * 逆时针绘制三角形 */ private float[] tableVertices = { //第一个三角 -0.5f, -0.5f,

2020-11-03 17:22:41 132

原创 OpenGL-ES(一)

学习opengl-es之初,因为公司需求“展示3D模型和一系列的定制操作”功能,关于模型这方面知识不会,一开始思考是不是直接用游戏引擎就完事儿了,答案是当然可以的,但是他么的么有接触过游戏引擎啊而其文档又少,马麦碧蓝瘦香菇。还是自己研究研究OpenGL-es吧。想要使用OpenGL绘图其实步骤就两步实例化GLSurfaceView,编写渲染器GLSurfaceView.Render实例化渲染器public class MainActivity extends AppCompatActivity.

2020-11-03 10:54:19 171

原创 学习mysql分页查询功能

使用Limit m ,n 实现分页查询Limit 和 offset 的关系示例,select * from exmaple_userinfo limit m ,n;查询第1条到第10条的数据的sql是:select * from table limit 0,10; ->对应我们的需求就是查询第一页的数据:select * from table limit (1-1)*10,10;查询第11条到第20条的数据的sql是:select * from table limit 10,10.

2020-09-28 17:02:36 236

原创 学习java后台之 ~(Android 端 post 请求)

**java后台**0、如果判断post的类型 (比如:application/json;charset=utf-8,表单形式上传application/x-www-form-urlencoded)1、如何获取前端 post 的数据2、如何将获取数据格式成 对象 键值对3、如何响应前端请求并返回相应的结果post的类型application/x-www-form-urlencoded.这应该是最常见的 POST 提交数据的方式了。浏览器的原生 表单,如果不设置 enctype 属

2020-09-22 16:27:38 1156

原创 创建属于自己的第一个接口

右键src下的包名-》new -》servlet 创建一个HelloServlet.javaHelloServlet.javapackage com.yxj.testweb1;import java.io.IOException;import java.util.Date;import java.util.HashMap;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet.

2020-09-21 10:53:31 880

原创 创建属于自己第一个JavaWeb项目

如果开发环境都已经安装配置完成(JDK + eclipse + Tomcat + Maven),接下来咱们建立一个TestWeb项目1、eclipse 单击 -> file ->new -> Dynamic Web project项目的结构上图中各个目录解析:deployment descriptor:部署的描述。Web App Libraries:自己加的包可以放在里面。build:放入编译之后的文件。WebContent:放进写入的页面。在webContent文件下

2020-09-21 10:42:57 192

原创 eclipse中启动Tomcat时 报端口被占用

——Several ports (8005, 8080, 8009) required by Tomcat v8.5 Server at…错误原因:端口占用解决方法:1、在dos下,输入 netstat -ano|findstr 8080//说明:查看占用8080端口的进程,显示占用端口的进程2.输入 taskkill /pid 1952 /f//说明,运行windows自带taskkill命令,将上面显示的进程号,结束掉。3.重启tomcat...

2020-09-20 10:53:08 355

原创 学习Eclipse JSP /Servlet 环境搭建

Eclipse JSP/Servlet 环境搭建1、Tomcat 下载安装 apache-tomcat-8.5.58https://tomcat.apache.org/download-80.cgi安装之前必须先确认JDK已经安装配置好,然后直接解压下载完成之后的Tomcat包,配置环境变量在path中配置classpath 中配置双击F:\javaWeb\apache-tomcat-8.5.58\bin目录下的startup.bat启动Tomcat,然后在浏览器中输入http://l

2020-09-20 10:51:18 217

原创 Java连接MySQL数据库简单实现

首先需要安装mysql下载mysql-connector-java-5.1.39-bin.jar插件https://dev.mysql.com/downloads/connector/j/?os=26然后将mysql-connector-java-5.1.39-bin.jar添加到eclipse 项目中启动mysql

2020-09-19 14:43:10 860

原创 Eclipse IDE for Enterprise Java Developers下载安装

eclipse下载地址https://www.eclipse.org/downloads/packages/release/2018-12/r安装:安装完成之后,点击LAUNCH,然后设置workspace目录,点击launch即可打开eclips同时安装时在桌面生成有快捷方式

2020-09-19 14:29:26 4644

原创 JDK的下载以及配置

JDK官网下载地址:https://www.oracle.com/cn/java/technologies/javase-downloads.html安装完成之后配置环境1、JAVA_HOME 对用的安装根目录 D:\Program Files\Java\jdk-13.0.12、path 配置 %JAVA_HOME%\bin %JAVA_HOME%\jre\bin新版的JDK是没有jre文件夹,解决办法win+r然后cmd进到jdk安装更目录:输入命令:bin\jlink.e

2020-09-19 14:19:32 203

原创 颜色十六进制透明度对照列表

100% — FF99% — FC98% — FA97% — F796% — F595% — F294% — F093% — ED92% — EB91% — E890% — E689% — E388% — E087% — DE86% — DB85% — D984% — D683% — D482% — D181% — CF80% — CC79% — C978% — C777% — C476% — C275% — BF74% — BD73% — BA72%

2020-09-18 14:56:40 418

原创 MySQL ALTER命令修改表的属性

当我们需要修改数据表名或者修改数据表字段时,就需要使用到MySQL ALTER命令。创建一个测试表mysql> create table exmaple_alter_test(id int(11),name varchar(100));Query OK, 0 rows affected (0.76 sec)mysql> show columns from exmaple_alter_test;+-------+--------------+------+-----+---------

2020-08-22 10:39:22 2645

原创 MySQL 正则表达式和Like实现模糊查询

在前面的章节我们已经了解到MySQL可以通过 LIKE …% 来进行模糊匹配MySQL 同样也支持其他正则表达式的匹配, MySQL中使用 REGEXP 操作符来进行正则表达式匹配。^ 匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 ‘\n’ 或 ‘\r’ 之后的位置。$ 匹配输入字符串的结束位置。如果设置了RegExp 对象的 Multiline 属性,$ 也匹配 ‘\n’ 或 ‘\r’ 之前的位置。. 匹配除 “\n” 之外的任何单个字符

2020-08-21 13:42:50 661

原创 MySQL NULL 值处理

为了处理这种情况,MySQL提供了三大运算符:IS NULL: 当列的值是 NULL,此运算符返回 trueIS NOT NULL: 当列的值不为 NULL, 运算符返回 true。<=>: 比较操作符(不同于 = 运算符),当比较的的两个值相等或者都为 NULL 时返回 true。关于 NULL 的条件比较运算是比较特殊的。你不能使用 = NULL 或 != NULL 在列中查找 NULL 值 。在 MySQL 中,NULL 值与任何其它值的比较(即使是 NULL)永远返回 NU

2020-08-21 11:01:31 242

原创 MySQL 连接的使用

你可以在 SELECT, UPDATE 和 DELETE 语句中使用 Mysql 的 JOIN 来联合多表查询。JOIN 按照功能大致分为如下三类:INNER JOIN(内连接,或等值连接):获取两个表中字段匹配关系的记录。LEFT JOIN(左连接):获取左表所有记录,即使右表没有对应匹配的记录。RIGHT JOIN(右连接): 与 LEFT JOIN 相反,用于获取右表所有记录,即使左表没有对应匹配的记录。exmaple_userinfo表mysql> select * f

2020-08-20 17:00:41 113

原创 MySQL Like子句

‘%a’ //以a结尾的数据‘a%’ //以a开头的数据‘%a%’ //含有a的数据‘a’ //三位且中间字母是a的‘_a’ //两位且结尾字母是a的‘a_’ //两位且开头字母是a的以下是 SQL SELECT 语句使用 LIKE 子句从数据表中读取数据的通用语法:SELECT field1, field2,...fieldN FROM table_name WHERE field1 LIKE condition1 [AND [OR]] fi.

2020-08-20 16:48:47 255

空空如也

空空如也

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

TA关注的人

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