- 博客(17)
- 收藏
- 关注
原创 vue获取页面数据结束前添加loading,结束后再显示页面
vue获取页面数据结束前添加loading,结束后再显示页面今天做项目的时候,后端提供了一个接口返回的数据量很大,获取完整的数据需要一定的时间,而没有完整的数据是没有办法显示正常的界面的,所以就需要添加一个loading的效果。我直接是选择使用element-ui提供的loading组件来实现,实现过程如下(较为简单,只是记录一下,方便以后使用):首先,vue创建页面的函数为created()方法,这个方法内部调用我们需要的数据的接口。我需要实现的效果就是这个接口获取好数据之前要有个loading
2022-04-13 21:32:33
4174
原创 Java反射机制
反射机制(Java Reflection)Reflection(反射)是Java被视为动态语言的关键,反射机制允许程序在执行期借助于ReflectionAPI取得任何类的内部信息,并能直接操作任意对象的内部属性及方法。Class c = Class.forName("java.lang.String")加载完类之后,在堆内存的方法区中就产生了一个Class类型的对象(一个类只有一个Class对象),这个对象就包含了完整的类的结构信息。我们可以通过这个对象看到类的结构。这个对象就像一面镜子,
2022-02-21 22:23:15
534
原创 Java注解
什么是注解Annotation是从JDK5.0开始引入的新技术Annotation的作用:不是程序本身,可以对程序作出解释可以被其他程序(比如:编译器等)读取Annotation的格式:注解是以”@注释名“在代码中存在的,还可以添加一些参数值,例如:@SuppressWarnings(value="unchecked")Annotation在哪里使用?可以附加在package,class,method,field等上面,相当于给他们添加了额外的辅助信息,我们可以通过反射机
2022-02-20 19:56:47
174
原创 Java多线程之线程协作
线程协作Java提供了几个方法解决线程之间的通信问题wait() 表示线程一直等待,直到其他线程通知,与sleep不同,会释放锁wait(long timeout) 指定等待的毫秒数notify() 唤醒一个处于等待状态的线程notifyAll() 唤醒同一个对象上所有调用wait()方法的线程,优先级别高的线程优先调度注意:均是Object类的方法,都只能在同步方法或者同步代码块中使用,否则会抛出异常。//生产者消费者模型----->利用缓冲区解决:管程法public c
2022-02-20 14:08:44
450
原创 Java多线程之Lock
Lock锁从JDK5.0开始,Java提供了强大的线程同步机制——通过显式定义同步锁对象来实现同步。同步锁使用Lock对象充当。java.util.concurrent.locks.Lock接口是控制多个线程对共享资源进行访问的工具。锁提供了对共享资源的独占访问,每次只能有一个线程对Lock对象加锁,线程开始访问共享资源之前应先获得Lock对象。ReentrantLock类实现了Lock,它拥有与synchronized相同的并发性和内存语义,在实现线程安全的控制中,比较常用的是ReentrantL
2022-02-19 20:31:14
141
原创 Java多线程之死锁
死锁多个线程各自占有一些共享资源,并且互相等待其他线程占有的资源才能运行,而导致两个或者多个线程都在等待对方释放资源,都停止执行的情形,某一同步块同时拥有“两个以上对象的锁”时,就可能发生”死锁“的问题。死锁避免方法产生死锁的四个必要条件:互斥条件:一个资源每次只能被一个进程使用。请求与保持条件:一个进程因请求资源而阻塞时,对已获得的资源保持不放。不剥夺条件:进程已获得的资源,在未使用完成之前,不能强行剥夺。循环等待条件:若干进程之间形成一种头尾相接的循环等待资源的关系。破坏其中一个或多
2022-02-19 20:08:25
125
原创 Java多线程之线程同步
线程同步(多个线程操作同一个资源)并发同一个对象被多个线程同时操作线程同步由于同一进程的多个线程共享同一块存储空间,在带来方便的同时,也带来了访问冲突问题,为了保证数据在方法中被访问时的正确性,在访问中加入锁机制synchronized,当一个线程获得对象的排他锁,独占资源,其他线程必须等待,使用后释放锁即可。存在以下问题:一个线程持有锁会导致其他有需要此锁的线程挂起;在多线程的竞争下,加锁,释放锁会导致比较多的上下文切换和调度延时,引起性能问题;如果一个优先级高的线程等待一个
2022-02-19 19:27:45
283
原创 Java多线程之守护线程
守护(daemon)线程线程分为用户线程和守护线程虚拟机必须确保用户线程执行完毕虚拟机不用等待守护线程执行完毕如,后台记录操作日志,监控内存,垃圾回收等待。public class daemonTest { public static void main(String[] args) { God god=new God(); You you=new You(); Thread thread=new Thread(god); thread.setDaemon(true);
2022-02-19 15:50:16
420
原创 Java多线程之线程优先级
线程优先级Java提供一个线程调度器来监控程序中启动后进入就绪状态的所有线程,线程调度器按照优先级决定应该调度哪个线程来执行。线程的优先级用数字表示,范围从1到10.Thread.MIN_Priority = 1;Thread.MAX_Priority = 10;Thread.NORM_Priority = 5;使用以下方式改变或获取优先级getPriority() setPriority()优先级低只是意味着获得调度的概率低,并不是优先级低就不会被调用了,这都看cpu的调度。p
2022-02-19 15:36:29
198
原创 Java多线程之线程状态观测
线程状态观测Thread.State线程状态。线程可处于以下状态之一:NEW 尚未启动的线程处于此状态RUNNABLE 在Java虚拟机中执行的线程处于此状态BLOCKED 被阻塞等待监视器锁定的线程处于此状态WAITING 正在等待另一个线程执行特定的动作的线程处于此状态TIMED_WAITING 正在等待另一个线程执行动作达到指定等待时间的线程处于此状态TERMINATED 已退出的线程处于此状态一个线程可以在给定时间处于一个状态。这些状态是不反映任何操作系统线程状态的
2022-02-19 15:21:18
321
原创 Java多线程之Join方法
join方法join合并线程,待此线程执行完成之后,再执行其他线程,其他线程阻塞可以想象成插队public class joinTest implements Runnable{ @Override public void run() { for(int i=0;i<1000;i++) { System.out.println("线程VIP来了"+i); } } public static void main(String[] args) throws Interr
2022-02-19 15:06:57
981
原创 Java多线程之线程礼让
线程礼让礼让线程,让当前正在执行的线程暂停,但不阻塞将线程从运行状态转为就绪状态让cpu重新调度,礼让不一定成功,看cpu心情public class yieldTest { public static void main(String[] args) { myYeild myYeild=new myYeild(); new Thread(myYeild,"a").start(); new Thread(myYeild,"b").start(); }}class
2022-02-19 14:53:22
149
原创 Java多线程之线程休眠
线程休眠sleep(时间)指当前线程阻塞的毫秒数sleep存在异常InterruptedExceptionsleep时间达到后线程就进入就绪状态sleep可以模拟网络延时,倒计时等每一个对象都有一个锁,sleep不会释放锁```javapublic class sleepTest implements Runnable{ private int ticketNum=10; @Override public void run() { while(true) { if(ti
2022-02-19 14:42:53
259
原创 Java多线程之线程状态
线程状态五种状态创建状态Thread t=new Thread()线程对象一旦创建就进入到了新生状态就绪状态当调用start()方法,线程立即进入就绪状态,但不意味着立即调度执行运行状态进入运行状态,线程才真正执行线程体的代码块阻塞状态当调用sleep,wait或同步锁定时,线程进入阻塞状态,就是代码不往下执行,阻塞时间解除后,重新进入就绪状态,等待cpu调度执行。死亡状态线程中断或者结束,一旦进入死亡状态,就不能再次启动。线程终止建议线程正常停止 如:
2022-02-18 22:04:40
186
原创 Java多线程之线程的创建
线程创建三种创建方式1.继承Thread类自定义线程类继承Thread类重写run()方法,写线程体创建线程对象,调用start()方法开启线程2.实现Runnable接口定义MyRunnable类实现Runnable接口重写run方法执行线程需要丢入runnable接口实现类,调用start方法; new Thread(testRunnable).start()避免单继承的局限性,灵活方便,方便同一个对象被多个线程使用,推荐使用3.实现Callable接口实现Callab
2022-02-18 21:18:26
176
原创 Java 多线程之线程简介
线程简介几个核心概念1.线程就是独立的执行路径;2.在程序运行时,即使没有自己创建线程,后台也会有多个线程,如主线程,gc线程;3.main()称之为主线程,为系统的入口,用于执行整个程序;4.在一个进程中,如果开辟了多个线程,线程的运行由调度器安排调度,调度器是与操作系统紧密相关的,先后顺序是不能人为干预的;5.对同一份资源操作时,会存在资源抢夺的问题,需要加入并发控制;6.线程会带来额外的开销,如cpu调度时间,并发控制开销;7.每个线程在自己的工作内存交互,内存控制不当会造成数据不一致
2022-02-18 19:56:39
382
原创 JDBC连接数据库,解决用户“sa”登录失败的问题!!!
JDBC连接数据库,解决用户“sa”登录失败的问题!!!最近学习Java的JDBC连接数据库,想连接SQL server2017,在SQL Server Management Studio上使用“sa”用户可以登录连接上数据库,而在eclipse中缺提示用户“sa”登录失败,网上看了许多文章,都没有完全解决我的问题,下面展示我解决这个问题的步骤,本人新手,有不足的地方请大佬们指点。首先,建立一...
2019-12-14 10:48:44
8277
4
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅