05 2020 档案
摘要:依赖于spring boot注解@scheduled和@EableScheduling实现定时任务功能。 使用方式很简单,两步就搞定了,如下: 1:在spring boot项目的启动类中加入@EableScheduling注解,表示启用工作计划。 pic-1590656781868.png 2:在需
阅读全文
摘要:总共修改两个文件: 1:pom.xml文件。 2:springboot的启动类。 具体修改步骤: 1:springboot项目,默认的打包方式是jar包,将pom.xml文件头部的jar改成war pic-1590656512007.png (要是没有<packaging></packaging>标
阅读全文
摘要:springboot 1.5.x server.context-path=/center // 应用上下文,在所有的controller之前 server.servlet-path=*.html // 拼接在controller后面,eg:http://localhost:8080/center/i
阅读全文
摘要:1:controller层方法传参 pic-1590654577197.png 在上图的方法中,需要调用这个方法的话,那么a参数是必传的,b和c无所谓传不传,甚至是你传一个方法中没有的参数d也是可以正常调用该方法的。总之是有类似上面的注解@RequestParam的参数必传,其余的看逻辑需求(一般逻
阅读全文
摘要:1:在pom文件中引入依赖。 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> 2:在pojo层的实
阅读全文
摘要:1:在pom文件中引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId> </dependency> 2:编写AOP类,在类上使用@A
阅读全文
摘要:SpringBoot装配 bean到ioc容器中的两种方法。 1:使用@Configuration和@Bean注解,扫描bean和装配bean到ioc容器中。 pic-1590653103739.png 2:使用@Component和@ComponentScan注解,扫描启动类包下及子包下的所有be
阅读全文
摘要:参考: https://blog.csdn.net/wu631464569/article/details/51898871 一、jdbc.properties的主要内容主要是数据库连接和配置的一些基本信息,如下图: 二、 在applicationContext.xml中怎么读取jdbc.prope
阅读全文
摘要:nginx访问静态资源的相关配置 引言 需要通过nginx服务读取静态文件,需要配置nginx.conf的相关配置,如虚拟主机配置server、location配置。 其实nginx.conf的配置文件是由指令集组成的,指令集分为:简单指令、模块指令。 简单的指令由名字和参数组成,中间用空格隔开,末
阅读全文
摘要:通过nginx服务器访问静态资源 引言 之前在做毕设的时候接触过nginx,那时候是用来做前后端分离的。一转眼都快一年了,nginx的相关内容也忘的差不多了。 有过接触前端的同学都知道,直接在<img>标签的src属性上写本地路径是会报错的,谷歌浏览器是不允许这种写法的,因为不安全。解决这个问题的办
阅读全文
摘要:思考 Session依赖于Cookie吗? 上篇笔记《初始Session》中,有讲到Session记录客户端状态的方法步骤,是通过一个名为JSESSIONID的Cookie,然后找到这个客户端相对应的具体的Session。 这是不是就是说,Session依赖于Cookie呢?如果客户端禁止了Cook
阅读全文
摘要:题外话 本来这篇笔记不应该放在这个笔记本组(浏览器)里的,因为Session是服务端的东西,可是Cookie和Session它们俩是密切相关的。提起Cookie那么Session必提,提起Session,Cookie必提。所以为了方便就全部放在这个名为浏览器的笔记本组里了。 和Cookie一样,之前
阅读全文
摘要:题外话 之前一直以为cookie很神秘,了解的程度也是刚刚入门级别,甚至是说堪堪入门而已,这次为什么写这篇笔记,这得幸于公司项目,在看了登录部分代码之后。所以想趁此机会好好系统性的了解一下cookie,下面是我对于cookie的理解和描述,以及使用方式,最后讲解Cookie类中的方法使用。 1、对c
阅读全文
摘要:1:线程和进程 线程是进程处理的最小单元。进程是线程的集合,一个进程至少包含一个线程。 并发和并行是两个概念,并行是指同一个时刻,多条指令在多个处理器同时执行。而并发是多条指令在同一个处理器快速的轮换执行。 归纳起来来说,操作系统可以同时执行多个任务,这里的每个任务就是一个进程。一个进程可以同时执行
阅读全文
摘要:1:继承Thread类创建线程类 步骤: (1)线程类继承Thread类,并对Thread类中的run()方法进行重写 (2)创建线程类对象。 (3)调用线程对象的start()方法来启动该线程。 注意:run()方法是线程执行体,但并不是所有线程的执行体都是run()方法。主线程的线程执行体就是m
阅读全文
摘要:线程的生命周期中有5个状态:创建、就绪、运行、阻塞、死亡。其中从就绪到运行,这两个状态的切换存在不确定因素,需要等待cpu的调度,获取cpu的时间片。 1:新建和就绪状态 当程序使用new关键字创建了一个线程之后,该程序处于创建状态。 当线程调用start()方法之后,该线程处于就绪状态。 注意:启
阅读全文
摘要:1:线程为什么要同步? 在多线程的情况下,容易造成数据的安全问题。比如取钱操作,涉及到金钱方面的,强烈建议使用线程同步。 线程同步主要有两种方式,一种是synchronized(同步监视器),一个是lock锁。 synchronized synchronized关键字的同步方式: (1)同步代码块(
阅读全文
摘要:1:传统的线程通信 传统的线程通信是借助wait()、notify()、notifyAll()三个方法的。这三个方法是Object的,并不是Thread方法的。需要注意的是:这三个方法必须由同步监视器对象来调用,这可以分为以下两种情况: (1)对于使用synchronized的同步方法,默认的隐式同
阅读全文
摘要:1:join线程 线程插队: 控制台输出: 可以看到thread线程在调用了join方法之后,开始进行了“插队”操作,主线程mian要等待thread线程执行完之后再执行。 join()方法有如下三种重载方式(会抛出InterruptedException异常): (1)join():等待被join
阅读全文
摘要:每次学习线程都是浅尝辄止的状态,这次下定决心是非学到60%入门不可,记录下:2019/11/27 正文: 线程的5个状态: 创建、就绪、运行、阻塞、死亡 线程状态图: 和线程有关的两个方法:start() 和run() start()方法是让线程到可运行状态。run()方法的主体就是线程要执行的方法
阅读全文
摘要:线程优先级,这是在我学习线程的时候有点疑惑的地方,今天记录一下。 先上代码: 执行结果(注意,每次执行的结果几乎都会与上次不一样): 恩?这就很意外了呀?为啥?我明明设置了thread3线程优先级最高呀,为啥是第二个执行的,而thread1的优先级却只有1而是最高执行的? 原来在线程中有一个很重要的
阅读全文
摘要:线程的创建方式: 1:通过继承Thread类来创建线程。 2:通过实现Runnable接口来创建线程。 然后在Main方法里分别创建通过继承Thread类和实现Runnable接口的线程,如下图: 我们可以看见:通过继承Thread类的创建线程是直接new 一个对象的。而通过实现接口的是new 一个
阅读全文
摘要:1:继承Thread类的创建线程 (1)实例变量 运行结果: 从上图可以看出,A线程和B线程各执行5次,得出:由继承Thread类创建的线程,实例变量并不共享。 (2)类变量(静态变量) 运行结果: 从上图可以看出,A和B总共执行了5次,得出:由继承Thread类创建的线程,类变量共享。 2:实现R
阅读全文
摘要:(本文中的全部观点,仅代表个人观点) 主线程、用户线程、守护线程的区分: 主线程:一个进程只有一个主线程(Main),其他都是子线程。(重点:个人认为主线程也是用户线程!!!) 用户线程:非守护线程(这个解释有点......废话) 守护线程:与系统,程序共存亡的线程就是守护线程。最常见的就是GC垃圾
阅读全文
摘要:1:notify() 作用:唤醒一个在对象上等待的线程,使其从wait()方法返回,而返回的前提是该线程获取到了对象的锁。 2:notifyAll() 作用:唤醒所有等待在该对象上的线程。 3:wait() 作用:调用该方法的线程进入WAITING状态,只有等待另外线程的通知或被中断才会返回,需要注
阅读全文
摘要:线程中的重要概念: 并发:单个cpu通过cpu调度算法来回切换不同的任务,让用户看上去这些任务是同时执行的,其实是有先后顺序的,这是逻辑上的同时。“假并发” 并行:多个cpu或物理主机处理多个任务,这是物理上的同时。也是真正的“并发” 一图读懂并发并行: 线程安全:由于java的多线程是一种并发编程
阅读全文
摘要:1:isAlive() 作用:判断当前的线程是否处于活动状态 活动状态是指线程已经启动且尚未终止,线程处于正在运行或准备开始运行的状态,就认为线程是存活的线程活动状态返回true,否则返回false; 2:setDameon(boolean boo) 作用:设置守护线程,boo为true是守护线程,
阅读全文