- 博客(56)
- 收藏
- 关注
原创 JAVA学习笔记25——JUC
JUCLock锁Lock接口ReentrantLock:可重入锁ReentrantReadWriteLock.ReadLock:读锁ReentrantReadWriteLock.WriteLock:写锁 public ReentrantLock() { sync = new NonfairSync(); } /** * Creates an instance of {@code ReentrantLock} with the * giv
2021-05-07 10:09:11
142
原创 JAVA学习笔记24——SpringBoot
SpringBoot微服务架构把每个功能元素独立出来,把独立出来的功能元素动态组合,需要的功能元素才去拿来组合,需要多一些时可以聚合多个功能元素,所以微服务架构是对功能元素进行复制,而没有对整个应用进行复制优点节省了调用资源每个功能元素的服务都是一个可替换的,可独立升级的软件代码原理pom.xmlspring-boot-dependencies:核心依赖在父工程中我们在写或者引入一些springboot以来的时候,不需要指定版本,因为有版本仓库启动器springboot启动场景spr
2021-05-06 09:20:50
1220
5
原创 算法笔记01——回溯
1. 基本模板class Solution { public List<List<元素类型>> 方法名(参数列表){ //返回answer容器集合 List<List<元素类型>> ans = new ArrayList<>(); if (返回空集合条件) return ans; //返回answer容器集合子集 List<元素类型> path =
2021-01-25 13:45:28
171
原创 JAVA学习笔记23——Spring
Spring1. 概述1.1 简介Spring 是分层的 Java SE/EE 应用 full-stack 轻量级开源框架,以 IoC(Inverse Of Control:反转控制)和 AOP(Aspect Oriented Programming:面向切面编程)为内核,提供了展现层 SpringMVC和持久层 Spring JDBC 以及业务层事务管理等众多的企业级应用技术,还能整合开源世界众多著名的第三方框架和类库,逐渐成为使用最多的 Java EE 企业应用开源框架。1.2 优势方便解耦,
2020-12-26 22:20:13
222
1
原创 JAVA学习笔记22——Maven,Mybatis
Maven1. Maven简介Maven 是一个项目管理工具,它包含了一个项目对象模型 (POM:Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。2. 优势1. 依赖管理依赖是指: 一个java项目可能需要使用到第三方的jar包才能运行,那么我们说这个java项目依
2020-11-24 15:09:56
226
原创 JAVA学习笔记20——过滤器与监听器,JQuery
过滤器与监听器1. Filter过滤器1.1 作用当访问服务器的资源时,过滤器可以将请求拦截下来,完成一些特殊的功能1.2 快速入门@WebFilter("/*")public class Demo1Filter implements Filter { public void destroy() { } public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) th
2020-10-31 16:45:41
134
原创 JAVA学习笔记19——会话技术,MVC,三层架构
会话技术一次会话中包含多次请求和响应。一次会话指浏览器第一次给服务器资源发送请求,会话建立,直到一方断开功能:在一次会话范围内,共享数据客户端会话技术:Cookie服务器端会话技术:Session1. Cookie1.1 基本概念客户端会话技术,将数据保存到客户端1.2 快速入门使用步骤:1.创建Cookie对象,绑定数据new Cookie(String name,String value)2.发送Cookie对象response.addCookie(Cookie cookie)
2020-10-29 12:15:07
106
1
原创 JAVA学习笔记18——Tomcat,Servlet
Tomcatweb服务器软件1. 基本操作1.1 配置部署项目方式:1.直接将项目放到webapps目录下即可简化部署:将项目打成一个war包,再将war包放置到webapps下2.配置conf/server.xml文件在Host标签体中配置< Context doBase=“项目存放路径” path=“虚拟目录”/ >3.在conf\Catalina\localhost创建任意名称的xml文件。在文件中编写< Context doBase=“项目存放路径” >
2020-07-22 20:58:02
1396
原创 JAVA学习笔记17——JavaScript,BootStrap,XML
JavaScript1.JavaScript基础基本概念JavaScript是一门客户端脚本语言运行在客户端浏览器中,每一个浏览器都有JavaScript的解析引擎脚本语言:不需要编译,直接就可以被浏览器解析执行基本功能增强用户和HTML页面交互过程,可以来控制html元素,让页面有一些动态效果,增强用户体验2.ECMAScript2.1 基本语法2.1.1 与html结合内部JS <script> alert("HelloWorld") &
2020-07-18 19:20:28
285
原创 JAVA学习笔记16——HTML,CSS
HTML1.基本概念软件架构1.C/S架构:客户端/服务器端优点:用户体验更好缺点:安装部署维护麻烦2.B/S架构: 浏览器/服务器优点:安装部署维护简单缺点:如果应用过大,用户体验会受到影响,对硬件要求过高BS架构资源分类:1.静态资源静态网页开发技术,HTML,CSS,JavaScript如果用户请求静态资源,那么服务器会直接将静态资源发送给浏览器,用户得到的资源一样2.动态资源使用动态网页及时发布的资源所有用户访问,得到的结果可能不一样jsp/servlet基本概念
2020-07-13 21:25:42
104
原创 JAVA学习笔记15——JDBC
JDBC1.基本概念Java DataBase Connectivity:Java数据库连接本质:定义了一套操作所有关系型数据库的规则,即接口2.快速入门导入驱动jar包MySQL连接数据库mysql-connector-8.0 jar包使用注意:https://blog.csdn.net/qq_37137348/article/details/83790382public class JDBCDemo01 { public static void main(String[] ar
2020-07-12 15:24:48
139
原创 JAVA学习笔记14——Junit单元测试,反射,注解
Junit单元测试1.基本概念单元:在Java中,一个类就是一个单元单元测试:用来对某个类中的某个方法进行功能测试或业务逻辑测试Junit单元测试框架作用:用来对类中的方法功能进行有目的的测试,以保证程序的正确性和稳定性能够独立的测试某个方法或者所有方法的正确性2.使用步骤1.模拟业务代码2.写测试类。测试类命名以Test结尾,以业务类类名开头3.在测试类中些方法。测试方法的命名以test开头,以业务方法结尾4.测试方法注意事项:必须是public修饰,没有返回值,没有参数,必须用@T
2020-07-08 17:24:03
228
原创 JAVA学习笔记13——Stream流,方法引用
Stream流1.使用Stream流遍历集合public class Demo01 { public static void main(String[] args) { List<String> list=new ArrayList<>(); list.add("Kobe"); list.add("James"); list.add("Jordan"); list.add("Curry");
2020-07-07 19:53:16
209
原创 JAVA学习笔记12——函数式接口
函数式接口1.基本概念有且仅有一个抽象方法的接口函数式接口,即适用于函数式编程场景的接口。而Java中的函数是编程体现就是Lambda,所以函数式接口是可以适用于Lambda使用的接口。只有确保接口中有且仅有一个抽象方法,Java中的Lambda才能顺利进行推导语法格式:修饰符 interface 接口名称{public abstract 返回值类型 方法名称(可选参数信息);}@FunctionalInterface注解作用:可以检测接口是否是一个函数式接口2.函数式接口的使用一般可
2020-07-07 11:12:27
108
原创 JAVA学习笔记11——网络编程
网络编程1.软件结构C/S结构:客户端和服务器结构B/S结构:浏览器和服务器结构2.网络通信协议应用层:HTTP,FTP,TFTP,SMTP,SNMP,DNS传输层:TCP,UDP网络层:ICMP,IGMP,IP,ARP,RARP数据链路层:由底层网络定义的协议...
2020-07-06 15:44:50
122
原创 JAVA学习笔记10——属性集,缓冲流,转换流,序列化,打印流
属性集1.Properties类Properties类表示了一个持久的属性集。Properties可保存在流中或从流中加载Properties集合是一个唯一和IO流相结合的集合可以使用Properties集合中的方法store,把集合中的临时数据,持久化写入到硬盘中存储可以使用Properties集合中的方法load,把硬盘中保存的文件(键值对),读取到集合中使用属性列表中每个键及其对应的值都是一个字符串。Properties集合是一个双列集合,key和value默认都是字符串构造方法:p
2020-07-04 16:13:53
98
原创 JAVA学习笔记09——文件类,IO流
文件类与IO流1.构造方法public File(String pathname):通过给定的路径字符串转换为抽象路径名来创建新的File实例public File(String parent,String child):从父路径名字符串和子路径名字符串创建新的File实例public File(File parent,String child):从父抽象路径名和子路径名字符串创建新的File实例...
2020-07-01 10:03:41
130
原创 JAVA学习笔记08——多线程
多线程1.基本概念并发:两个或者多个事件在同一时间段内发生并行:两个或者多个事件在同一时刻发生进程:一个内存中运行的应用程序,每个进程都有一个独立的内存空间,一个应用程序可以同时运行多个进程;进程也是程序依此执行过程,是系统运行程序的基本单位;系统运行一个程序即是一个进程从创建运行到消亡的过程线程:进程中的一个执行单元,负责当前进程中程序的执行,一个进程中至少有一个线程,一个进程中是可以有多个线程的2.主线程所有的线程对象都必须是Thread类或者其子类的实例。每个线程的作用是完成一定的任务,
2020-06-23 21:57:38
100
原创 JAVA学习笔记07——异常
异常1.异常的概念与体系异常:程序在执行过程中,出现的非正常的情况,最终导致JVM的非正常停止Throwable体系:Error:严重错误Error,无法通过处理的错误Exception:异常,异常后程序员可以通过代码的方式纠正,使得程序继续运行2.异常的处理抛出异常throw作用:在指定的方法中抛出指定异常语法:throw new xxxException;注意:1.throw关键字必须写在方法内部2.throw关键字后边new的对象必须是Exception或者Exceptio
2020-06-22 21:09:27
109
原创 JAVA学习笔记06——集合
集合1.Collectionboolean add(E e):添加元素boolean remove(Object o):从集合中移除指定元素void clear():清空集合中的元素boolean contains(Object o):判断集合中是否存在指定元素boolean isEmpty():判断集合是否为空int size():集合中元素个数迭代器iterator迭代:Collection几何元素的通用获取方法。在取元素之前先要判断集合中是否有元素,如果有,就把这个元素取出来,继续
2020-06-22 19:16:39
264
原创 JAVA学习笔记05——API(2)
API1.Object类equals方法:比较两个对象地址值是否相等public class demo01 { public static void main(String[] args) { Person p1=new Person("Kobe",24); Person p2=new Person("James",23); p2=p1; System.out.println(p1.equals(p2)); //true
2020-06-20 15:00:58
62
原创 JAVA学习笔记04——继承与多态
继承与多态1.继承基本语法:public class 子类名称 extends 父类名称{…}成员变量访问特点:在父子类的继承关系当中,如果成员变量重名,则创建子类对象时,访问有两种方式:直接通过子类对象访问成员变量:等号左边是谁,就优先用谁,没有则向上找间接通过成员方法访问成员变量:方法属于谁,就优先用谁,没有则向上找成员方法访问特点:创建的对象是谁,就优先用谁,如果没有则向上找构造方法访问特点:1.子类构造方法当中有一个默认隐含的super()调用,所以一定先调用父类构造,再执
2020-06-17 21:10:29
128
原创 JAVA学习笔记03——API
API1.Scanner实现键盘输入语法:Scanner sc=new Scanner(System.in);int i=sc.nextInt();使用步骤:1.导包import 包路径.类名称;如果需要使用的目标类,和当前类位于同一个包下,则可以省略导包语句不写。只有java.lang包下的内容不需要导包,其他都需要导包import。2.创建类名称 对象名=new 类名称();3.使用对象名.成员方法名;import java.util.Scanner;public cla
2020-06-15 21:53:07
77
原创 JAVA学习笔记02——面向对象
面向对象1.类的声明public class 类名{}public class Student { String name; int age; public void study(){ System.out.println("学习"); }}2.对象的创建与使用创建:类名 对象名=new 类名();使用:对象名.属性;对象名.方法(参数);public class demo01Student { public static vo
2020-06-15 21:11:45
83
原创 JAVA学习笔记01——基础语法
数组1.动态初始化在创建数组的时候,直接指定数组当中的元素个数语法:数据类型[] 数组名称=new 数据类型[数组长度];int[] array = new int[100];2.静态初始化在创建数组的时候,不直接指定数据个数多少,而是直接将具体的数据内容进行指定语法:数据类型[] 数组名称=new 数据类型[数组长度]{数组内容};int[] array = new int[]{1,2,3,4,5};3.省略格式int[] array = {1,2,3};注意事项:1.静
2020-06-15 11:10:37
88
原创 MySQL数据库基础学习笔记05——TCL
TCL事务控制语言1.事务事务:一个或一组sql语句组成一个执行单元,这个执行单元要么全部执行要么全部不执行。如果单元中某条sql语句一旦执行失败或产生错误,整个单元会回滚。所有受到影响的数据将返回到事务开始以前的状态。如果单元中的所有sql语句均执行成功,则事务被顺利执行。事务的属性:1.原子性(atomicity)事务是一个不可分割的工作单位,事务中的操作要么都发生,要么都不发生...
2020-05-01 15:43:33
176
原创 MySQL数据库基础学习笔记04——DDL语言
DDL语言数据定义语言,库和表的管理库与表的管理:创建、修改、删除:create、alter、drop库的管理1.创建create database (if not exists)库名2.修改rename database 原库名 to 新库名3.删除drop database (if exists)库名表的管理1.创建create table 表名( 列名 类型...
2020-04-30 21:49:19
165
原创 MySQL数据库基础学习笔记03——DML语言
DML语言1.插入insert into 表名(列名1,...)values (值1,...)插入的值得类型要与列的类型一致或兼容不可以为null的列必须插入值列数和值得个数必须一致可以省略列名,默认所有列,而且列的顺序和表中列的顺序一致insert into 表名set 列名=值,...2.修改修改单表:update 表名set 列=新值,...where 筛选条...
2020-04-30 20:16:19
159
1
原创 MySQL数据库基础学习笔记02——DQL语言
DQL语言1.基础查询select 查询列表 from 表名查询列表:表中字段、常量值、表达式、函数;起别名:select 查询列表 as 别名 from 表名;其中as可以省略去重:select distinct 查询列表 from 表名;拼接:select concat(列表1,列表2) as 别名 from 表名;2.条件查询select 查询列表from ...
2020-04-30 18:52:51
170
原创 MySQL数据库基础学习笔记01——基本概念
1. 基本概念DB:数据库(database)。存储数据的仓库,保存了一系列有组织的数据。DBMS:数据库管理系统(Database Management System)。数据库是通过DBMS创建和操作的容器。SQL:结构化查询语言(Structure Query Language)。专门用来与数据库通信的语言。...
2020-04-29 20:03:06
109
原创 python基础学习笔记09——异常
1. 异常语法:try:可能发生错误的代码except:如果出现异常执行的代码1.1 捕获异常注意:如果尝试执行的代码的异常类型和要捕获的异常类型不一致,则无法捕获异常一般try下方只放一行尝试执行的代码1.2 捕获指定异常语法:try:可能发生错误的代码except 异常类型:如果出现异常执行的代码1.3 捕获多个指定异常,捕获异常描述信息,捕获所有异常当捕获多...
2020-03-23 17:26:11
107
原创 python基础学习笔记08——类和对象 继承 多态 类属性和实例属性 类方法和静态方法
1. 类和对象1.1 定义语法:class 类名():代码1.2 创建对象语法:对象名 = 类名()class Animal(): def func(self): print("animal")animal = Animal()animal.func()1.3 属性类外添加对象属性:语法:对象名.属性 = 值类外获取对象属性:语法:对象...
2020-03-23 16:53:16
189
原创 python基础学习笔记07——文件
1. 文件1.1 文件操作步骤打开:语法:open(name,mode)name:要打开的目标文件名的字符串mode:设置打开文件的访问模式:只读,写入,追加写:语法:文件对象.write(“内容”)读:read():语法:文件对象.read(num)num表示要从文件中读取的数据的长度,如果没有传入num,则表示读取整个文件readlines():按照行的方式把整个文件...
2020-03-22 21:15:27
89
原创 python基础学习笔记06——拆包 交换变量 数据类型 lambda表达式 高阶函数
1. 拆包元组:def func(a,b): return a,bnum1 , num2 = func(10,20)字典:dict1 = {'姓名':'Ray','年龄':18}key1 , key2 =dict1print(key1)print(key2) # 拆包得到的是key值print(dict1[key1])print(dict1[key2])# 姓名...
2020-03-22 16:51:41
295
1
原创 python基础学习笔记05——函数
函数1. 定义def 函数名(参数):函数体2. 多函数执行流程a = 100def test01(): print(a)def test02(): global a # global关键字代表全局变量 a = 10 print(a)3. 返回值def func(a,b): return a,bprint(func(24,23))注...
2020-03-21 21:47:50
171
原创 python基础学习笔记04——公共操作 公共方法 推导式
1. 公共操作1.1 运算符+(合并):字符串,列表,元组*(复制):字符串,列表,元组in(元素是否存在):字符串,列表,元组,字典2. 公共方法len():计算容器中元素个数del或del():删除max():返回容器中元素最大值min():返回容器中元素最小值range(start,end,step):生成从start到end的数字,步长为step,供for循环使用。[s...
2020-03-21 20:54:27
149
原创 python基础学习笔记03——列表 元组 字典 集合
1. 列表1.1 格式[数据1,数据2,数据3…]列表为可变数据类型1.2 操作1.2.1 查找list1 = ["Tom","Jerry","Jack"]for i in range(3) : print(list1[i],end=" ")index():返回指定数据所在位置下标,如果不存在则报错语法:列表序列.index(数据,开始位置下标,结束位置下标)cou...
2020-03-21 16:20:38
530
原创 python基础学习笔记02——字符串
1. 字符串str1 = "name"str2="""nameclass"""字符串输出:name = "Tom"print(f'My name is {name}')字符串输入:name = input("请输入姓名:")print(f'My name is {name}')2. 切片切片是指对操作的对象截取其中一部分的操作。字符串,列表,元组都支持切片操作。语法:...
2020-03-20 20:14:03
283
原创 python基础学习笔记01——输入 输出 运算符 循环
1. 输出1.1 基本输出age = 18name = "Tom"stu_id=1print("I'm %d" %age)print("My name is %s,I'm %d years old" %(name,age)) # 输出print("My id is %03d" %stu_id) # %03d不足位数用0补全f-格式化:age = 18name = "...
2020-03-20 16:05:43
191
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人