- 博客(30)
- 收藏
- 关注
原创 Springboot实现简易的增删改查
已有的注解不能满足所有的校验需求,特殊的情况需要自定义校验(自定义校验注解),比如article类中的state字段,只能有草稿或发布两种状态,当输入其他状态时,会显示输入错误。
2024-01-22 22:17:52
1051
原创 Springboot登录模板
jwt是一种登录认证方式,目的是防止用户在未登录的情况下,访问到其他资源。没有登录认证情况下,后端资源会被随意访问:加入JWT认证后,访问后端资源,会首先校验是否先登录jwt结构:1、Header(头), 记录令牌类型和签名算法等2、PayLoad(载荷),携带自定义的信息3、Signature(签名),对头部和载荷进行加密计算得来作用:用于存放用户信息。用来存取数据: set()/get()使用ThreadLocal存储的数据, 线程安全用完记得调用remove方法释放。
2024-01-19 16:25:52
642
原创 Javascript_面向对象编程_class继承
代码示例<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body><script> //定义一个学生类 class Student{ constructor(name) {//构造器 t
2021-03-11 23:38:48
115
原创 Javascript_面向对象编程01
代码示例<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body><script> var Student = { name:"person", age:23, run: functi
2021-03-11 23:16:10
83
原创 javascript_类_Date
实例代码<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script> var now = new Date(); now.getFullYear();//年 now.getMonth();//月 now.get
2021-03-10 03:27:41
242
原创 javascript_函数_函数调用
代码实例<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script> function getAge() { //今年-出生的年 var now = new Date().getFullYear();//获得当
2021-03-10 03:03:19
80
原创 javascript_函数_变量作用域
1、在中javascript,var定义变量实际是有作用域的。假设早函数体中声明则在函数体外不可以使用(除非用闭包实现) function f() { var x=1; x=x+1; } x=x+2;2、如果两个函数使用了相同的变量名,只要在函数内部,就不冲突。 function f() { var x=1; x=x+1; .
2021-03-10 02:40:31
92
原创 javascript_函数_rest
1、概念rest是ES6引入的一个新特性,可以获取除了已经定义的参数以外的所有参数,在使用时只能写在最后面,必须用...标识。2、示例代码<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script> function f(a,b,...rest)
2021-03-10 01:54:02
167
原创 javascript_函数_arguments
示例代码<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script> var abs = function (x) { console.log("x=>"+x); for (var i = 0; i<
2021-03-10 01:43:39
76
原创 Java_集合_概念
集合概述1.1、什么是集合?有什么用? 数组其实就是一个集合。集合实际上就是一个容器。可以来容纳其他类型的数据。1.2、集合为什么在开发中使用较多? 集合就是一个容器,是一个载体,可以一次容纳多个纪录。在实际开发中,假设连接数据库,数据库当中有10条记录,那么假设把这10条记录查询出来,在Java程序中会有10条数据封装成10个Java对象,然后将10个Java对象放到某一个集合当中,将集合传到前端,然后遍历集合,将一个数据一个数据展现出来。1.3、集合不能直接存
2021-03-07 01:55:11
149
1
原创 Java_基础_多线程_线程礼让
线程礼让1.礼让线程,让当前正在执行的线程暂停,但不阻塞。2.将线程从运行状态转为就绪状态。3.让cpu重新调度,礼让不一定成功!看cpu心情。代码实例//测试礼让线程//礼让不一定成功public class TestThreadYield { public static void main(String[] args) { MyYield myYield = new MyYield(); new Thread(myYield,"A").st
2021-01-24 16:42:45
196
1
原创 Java_基础_多线程_线程休眠
线程休眠 1.sleep(时间)指定当前线程阻塞的毫秒数。 2.sleep存在异常InterruptedException。 3.sleep时间达到后线程进入就绪状态。 4.sleep可以模拟网络延时,倒计时等。 5.每一个对象都有一个锁,sleep不会释放锁。代码实例/模拟倒计时....public class TestThreadSleep { public static void main(String[] args) {
2021-01-24 16:28:35
115
1
原创 Java_基础_多线程_线程停止
注意点 1.不建议使用JDK提供的stop(),destroy()方法,因为官方已经停止使用。 2.推荐线程自己停下来。 3.建议使用一个标志位进行终止变量,设定一个变量flag记录,当flag=false时,则线程停止。代码实例//测试stop//1.不建议线程正常停止--->利用循环次数停止,不建议死循环,//2.建议使用标志位--->设置一个标志位//3.不要使用stop或则destroy等过时或则JDK不建议使用的方法public class
2021-01-24 16:09:23
95
原创 Java_基础_多线程_龟兔赛跑模拟
抽象分析 1.首先来个赛道距离,然后要离终点越来越近 2.判断比赛是否结束 3.打印出胜利者 4.龟兔赛跑开始 5.龟兔赛跑中最终乌龟赢得比赛,兔子需要睡觉,用延时来模拟兔子睡觉 6.最后乌龟赢得比赛胜利代码实例public class Race implements Runnable{ private static String winner;//胜利者 @Override public void run() {
2021-01-22 18:41:47
104
原创 Java_基础_多线程_抢票模拟(并发问题)
代码实例public class TestThread4 implements Runnable{ //设定票数为10张 private int ticketNums=10; @Override public void run() { while (true) { if (ticketNums<=0){ break; } try {
2021-01-22 17:53:48
544
原创 Java_基础_多线程_Runnanle接口
三种多线程创建方式 1.Thread class -->继承Thread 类 2.Runnable接口 -->实现Runnable接口 3.Callable接口 -->实现Callable接口(非重点)Runnanle接口步骤: 1.定义MyRunnable类实现Runnable接口 2.实现run()方法,编写线程执行体 3.创建线程对象,调用start()方法启动线程(推荐使用Runnable对象,因为Java单继承的局限
2021-01-22 16:51:20
124
原创 Java_基础_多线程_Thread类
三种多线程创建方式 1.Thread class -->继承Thread 类 2.Runnable接口 -->实现Runnable接口 3.Callable接口 -->实现Callable接口(非重点)Thread类步骤: 1.自定义线程类继承Thread类 2.重写run()方法,编写线程执行体 3.创建线程对象,调用start()方法启动线程代码实例public class TestThread1 extends
2021-01-22 16:26:54
71
原创 Java_基础_异常
概念什么事异常: 异常时程序实际情况中可能遇到的一些突发情况,比如典型的:文件找不到、网络连接失败,非法参数等,英文名为Exception。 异常分类(1)Exception 在Exception分支中有一个重要的子类RuntimeException(运行时异常) 1.ArrayIndexOutOfBoundsException(数组下标越界) 2.NullPointerException(空指针异常) 3.ArithmeticException
2021-01-19 21:42:27
94
原创 Java_基础_多态
概念 即同一方法可以根据发送对象的不同而采用多种不同的行为方式。注意事项 1.多态是方法的多态,属性没有多态。 2.父类和子类之间转型有可能会发生类型转换异常:ClassCastException。 3.多态的存在条件是继承关系,当子类与父类拥有相同方法时,子类的方法需要重写,父类引用(new对象) 时指向子类对象,即会调用子类的方法。 3.多态不适用情况: (1)static关键字,static属于类,不属于实例 (2)fin
2021-01-19 20:35:50
74
原创 Java_基础_继承_方法重写
意义 由于父类的功能,子类不一定需要,或者不一定满足,故引入重写的概念。概念重写,需要有继承关系,子类重写父类的方法,子类的方法和父类的方法必须要一致,方法体不同。概括来说必须遵循以下四点: 1.方法名必须相同 2.参数列表必须相同 3.修饰符范围可以扩大但不能缩小:public->Protected->Default->Private 4.抛出的异常范围可以被缩小,但不能扩大代码说明 建立三个类。一个测试main主类
2021-01-19 16:22:15
101
原创 Java_基础_继承_super
概念 可以用super关键字调用父类的方法。代码说明 建立三个类。一个测试main主类Application、父类Person、子类Student。代码实例Application类public class Application { public static void main(String[] args) { Student student = new Student(); student.print(); }
2021-01-14 19:00:57
85
原创 Java_基础_继承_extends
概念 继承是类与类之间的一种关系。继承关系有两个类,一个为子类(派生类),一个为父类(基类)。子类继承父类,使用extends来表示。子类与父类之间,从意义上来说应该具有“is a”关系。举例:学生 is a 人。学生为子类,继承自父类人。特别的是Java中的继承关系只有单继承,没有多继承。通俗理解为一个儿子只能有一个爸爸,但是一个爸爸可以有多个儿子。代码说明建立三个类。一个测试main主类Application、父类Person、子类Student。代码实例Applica
2021-01-14 01:58:17
91
原创 Java_基础_封装
概念 封装(数据的隐藏) 通常,应禁止直接访问一个对象中数据的实际表示,而应通过操作接口来访问,这称为信息隐藏。规则 get/set方法。 idea中的快捷键方式:alt+Enter(选中要执行的变量,再按住alt+Enter键即可)封装意义 1.提高程序的安全性,保护数据。 2.隐藏代码的实现细节。 3.统一接口 4.系统可维护增加。代码实例public class Demo02 { public static void mai
2021-01-12 16:18:20
99
原创 Java_基础_方法_值传递与引用传递的区别
代码public class Demo01 { public static void main(String[] args) { //值传递-->方法定义变量为局部变量。方法执行后内存空间释放,因此不会改变main方法中的变量的值 System.out.println("值传递的结果:"); int number1=0; System.out.println(number1);//num=0 change(
2021-01-10 14:53:26
92
原创 Java_基础_数组反转
代码 public static void main(String[] args) { int[] arrays={1,2,3,4,5}; System.out.println("数组没打印前的顺序是:"); printArray(arrays); System.out.println(" "); System.out.println("数组打印后的顺序是:"); int[] reverse=rev
2021-01-06 15:52:42
114
原创 Java_基础_方法_重载
概念 重载是指一个类中,函数名称相同,但是形参不同的函数。规则 方法重载的规则: (1)方法名称必须相同。 (2)参数列表必须不同(个数不同、或类型不同、参数排列顺序不同等)。 (3)方法返回类型可以相同也可以不同。 (4)仅仅返回类型不同不足以成为方法重载。代码实例 public static void main(String[] args) { int sum1=add(1,2);
2021-01-06 14:09:20
132
1
原创 使用SharedPreferences实现登陆界面信息的记住密码功能
共享参数SharedPreferences SharedPreferences是Android的一个轻量级存储工具,采用的存储结构是Key-Value的键值对方式,类似 于Java的Properties类,二者都是把Key-Value的键值对保存在配置文件中。 基于XML格式的特点,SharedPreferences主要适用于如下场合。...
2020-03-20 23:53:23
602
原创 斐波那契额数列非递归算法
问题:求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0) int Fibonacci(int n) { if(n==0){return 0;}; if(n==1){return 1;}; int a=1,b=0,result=0; for(int i=2;i<=n;i++) { ...
2020-02-12 19:32:12
237
原创 FrameLayout实现物体拖动效果
预备工作:1、两张图片,一张背景图,一张拖动的图。2、新建一个Android工程的,我的Activity名字为Activity_basketball,同时在同一个包下面新建一个java类,用于编写实现功能的相关代码,我拍的java类名字为basketball_view。xml文件:FrameLayout xmlns:android="http://schemas.andr...
2020-02-08 01:32:51
387
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人