- 博客(41)
- 收藏
- 关注
原创 MyBatis-Plus 基础
MyBatis-Plus(MP)是在 MyBatis 的基础上进行增强的框架。通过简单的配置,可以快速生成实体类、Mapper 接口、Mapper XML 文件等代码。
2024-12-14 18:09:07
915
原创 MySQL存储过程
用户变量不用提前声明,在用的时候直接用 “@变量名” 使用就可以。其作用域为当前连接。用户自定义变量无需声明和定义类型、初始化,只不过获取到的值为NULL。
2023-10-25 23:59:43
117
原创 Java中的Lambda表达式、stream流
作用:用来简化匿名内部类的代码写法,只能简化函数式接口的匿名内部类(函数式接口:有且只能有一个抽象方法的接口)
2023-09-16 19:58:26
193
原创 跨域问题说明
通过script标签的src属性进行跨域请求,如果服务端要响应内容则首先读取请求参数callback的值,callback是一个回调函数的名称,服务端读取callback的值后将响应内容通过调用callback函数的方式告诉请求方。出这个提示的原因是基于浏览器的同源策略,去判断是否跨域请求,同源策略是浏览器的一种安全机制,从一个地址请求另一个地址,如果协议、主机、端口三者全部一致则不属于跨域,否则有一个不一致就是跨域请求。浏览器判断是跨域请求会在请求头上添加origin,表示这个请求来源哪里。
2023-04-13 17:56:41
802
原创 Kotlin基础笔记(三)
协程协程可以简单的理解成一种轻量级的线程,不过它不需要依靠操作系统调度,仅在编程语言的层面就能实现不同协程之间的切换。fun main() { GlobalScope.launch { println("codes run in coroutine scope") } Thread.sleep(1000)}GlobalScope.launch函数可以创建一个协程的作用域。要加上Thread.sleep()才能正常输出,因为GlobalScope.launc
2022-05-29 01:54:03
324
原创 Kotlin基础笔记(一)
一、变量和方法以及常用语句变量Kotlin中定义一个变量,只允许在变量前声明两种关键字:val和var。val(value的简写)用来声明一个不可变的变量,这种变量在初始赋值之后就再也不能重新赋值,对应Java中的final变量。var(variable的简写)用来声明一个可变的变量,这种变量在初始赋值之后仍然可以再被重新赋值,对应Java中的非final变量。Kotlin 可以不需要定义类型,会自动推导类型。 val a = 22 println("a = " + a)如
2022-05-24 15:06:58
389
原创 Java的位运算
位bit、字节byte位 bit:也叫比特,二进制数中的一个数位,是计算机中数据的最小单位。字节 byte:每8位组成一个字节,计算机中数据的基本单位。java中的int类型由4个字节组成,即32位。基本类型所占字节:short:2byteint:4bytelong:8bytefloat:4bytedouble:8byteboolean:1bytechar:2byte原码、反码、补码二进制的最高位是符号位:0表示正数,1标识负数。正数的原码、反码、补码都一样。负数的反码 =
2022-05-23 14:39:13
1942
原创 Android UI相关
控件和布局的继承结构所有的控件都是直接或间接继承View的,所有的布局都是直接或间接继承GroupView的。View是Android中最基本的一种UI组件,它可以在屏幕上绘制一块矩形区域,并能响应这块区域的各种事件。其他控件就是在View的基础上添加各自特有的功能。引入布局创建一个布局 layout_title.xml<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://sch
2021-12-23 00:14:53
1212
原创 Android Activity基础知识
intent [ɪnˈtent] 意图;目的Intent是Android程序中各组件之间进行交互的一种重要方式,它不仅可以指明当前组件想要执行的动作,还可以在不同的组件之间传递数据。种类: 显示Intent和隐式Intent显示Intent示例Intent intent = new Intent(OneActivity.this, TwoActivity.class);startActivity(intent);指名道姓,意图明显。隐式Intentcategory [ˈkætəɡəri]
2021-12-18 02:44:35
1427
原创 进度条ProgressBar 样式属性
一、常规进度条布局:<ProgressBar android:layout_width="150dp" android:layout_height="20dp" style="@style/Widget.AppCompat.ProgressBar.Horizontal" android:progressDrawable="@drawable/drawable_progress" android:progress="50"/>进度条样式文件 d
2021-11-26 16:30:22
2711
原创 Android Fragment基础
Fragment是一种可以嵌入在Activity中的UI片段,Fragment不能够单独使用,需要嵌套在Activity中使用,其生命周期也受到宿主Activity的生命周期的影响。Fragment的四种状态: 运行、暂停、停止、销毁。Fragment两个核心类FragmentManager:管理和维护Fragment。FragmentTransaction:对Fragment的添加、删除等操作都要通过事务方式进行。FragmentTransaction的常用方法:transaction.
2021-11-10 17:29:22
3248
原创 项目构建工具Maven、Gradle以及私服Nexus
一、项目构建工具作用1.构建: 通过简单的命令,能够完成清理、编译、测试、打包、部署等一系列过程。2.管理依赖: 方便的管理项目依赖的第三方开源类库。3.项目信息: 能够管理项目描述、开发者列表、版本控制系统地址、许可证等一些比较零散的项目信息。常用的构建工具:Maven、Gradle二、Nexus项目中依赖的类库存放在Maven仓库中,仓库分为:本地仓库、第三方仓库(私服)、中央仓库。本地仓库:本地电脑上的一个目录。第三方仓库(私服):局域网内架设一个私有的仓库服务器。中央仓库:Mav
2021-11-09 21:21:40
584
原创 清单文件合并失败问题 Manifest merger failed with multiple errors, see logs
引入第三方库的时候容易出现清单文件合并失败的问题。原因:清单文件合并是按照优先级进行合并的,低优先级的清单文件内容合并到高优先级的优先级:主工程 > module(按照依赖关系) > jar 包(aar)排查:提示让查看logs,直接在 Android Studio 的 Terminal 中输入命令gradlew assembleDebug --stacktrace上图引用博客 https://www.jianshu.com/p/695998515e2e根据log找到出错的位
2021-11-01 16:25:28
7722
原创 Java代码是怎么编译运行的(简洁说明)
一、流程新建java文件写代码编译java文件生成字节码(class)文件jvm运行字节码(class)文件java文件编译运行过程图:二、演示代码示例:RunTest.javapublic class RunTest { public static void main(String[] args) { System.out.println("Java Run Success"); }}编译运行过程:三、jdk、jre、jvm关系jdk(开发工具包):面向开发者j
2021-10-17 18:20:04
714
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人