- 博客(11)
- 收藏
- 关注
原创 Java8新特性值Lambda表达式与四大函数式接口
Lambda表达式和函数式接口在Java8以前,我们想要让一个方法可以与用户进行交互,比如说使用方法内的局部变量;这时候就只能使用接口做为参数,让用户实现这个接口或使用匿名内部类的形式,把局部变量通过接口方法传给用户。传统匿名内部类缺点:代码臃肿,难以阅读Lambda表达式Lambda表达式将函数当成参数传递给某个方法,或者把代码本身当作数据处理;语法格式:用逗号分隔的参数列表->符号和语句块组成Lambda本质上是匿名内部类的改装,所以它使用到的变量都会隐式的转成final 的
2022-04-18 14:24:22
420
原创 用Java简单实现验证码功能以及校验
Happy Captcha是一款易于使用的Java验证码软件包,旨在花最短的时间,最少的代码量,实现Web站点的验证码功能,Happy Captcha完全遵循Apache 2.0开源许可协议,作者ramostear。验证码效果图可以通过设置.style(CaptchaStyle.IMG)来设置展示为图片或者设置.style(CaptchaStyle.ANIM)展示为动画。CaptchaTypeIMAGEANIMATIONCHINESENUMBERNUMBER_
2022-04-05 21:05:10
4586
1
原创 javaIO常见api使用
File对象 File file = new File("F:\\java\\java_basis\\code\\java_basisprogram"); File file1 = new File("F:\\java\\java_basis\\code\\java_basisprogram\\test01.txt"); //是否是目录 System.out.println(file.isDirectory()); //是否是
2021-11-10 20:00:58
570
原创 java常见集合的遍历方式
List代码package com.hja.collection;import java.util.ArrayList;import java.util.Iterator;//测试ArrayList的遍历public class TestArrayList { public static void main(String[] args) { ArrayList<String> list = new ArrayList<>();
2021-10-29 21:16:35
307
原创 redis五大基本数据类型及常用api
Redis五大数据类型Stringappend key "hello" #追加字符串,如果这个key不存在,等价setstrlen key #查看字符串长度set key2 0 #0incr key2 #1decr key2 #0incrby key2 10 #10decrby key2 5 #5127.0.0.1:6379> set key3 hello,hjaOK127.0.0.1:6379> get key3"hello,hja"127.0.0.1:6379
2021-10-27 21:05:27
201
原创 MySQL锁(读锁、写锁、表锁、行锁)
MySQL锁机制定义定义:锁是计算机协调多个进程或线程并发访问某一资源的机制锁的分类锁的分类:1.从对数据操作的类型(读/写)分读锁(共享锁):针对同一份数据,多个读操作可以同时进行而不会互相影响。写锁(排它锁):当前写操作没有完成前,它会阻断其他写锁和读锁。2.从对数据操作的粒度分表锁行锁三锁表锁特点特点:偏向MyISAM存储引擎,开销小,加锁快;无死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低。案例分析(MyISAM引擎)建表SQLcreate table
2021-10-24 19:28:49
6074
原创 MySQL索引简介索引优化
索引简介索引用于快速找出在某个列中有一特定值的行,不使用索引,MySQL必须从第一条记录开始读完整个表,直到找出相关的行,表越大,查询数据所花费的时间就越多,如果表中查询的列有一个索引,MySQL能够快速到达一个位置去搜索数据文件,而不必查看所有数据,那么将会节省很大一部分时间。例如:有一张person表,其中有2W条记录,记录着2W个人的信息。有一个Phone的字段记录每个人的电话号码,现在想要查询出电话号码为xxxx的人的信息。如果没有索引,那么将从表中第一条记录一条条往下遍历,直到找到该条信息为止
2021-10-21 21:28:56
124
原创 MySQL查询语句性能分析
性能分析通过Explain进行性能分析Explain是什么查看执行计划Explain的作用查看表的读取顺序查看数据读取操作的操作类型查看可能使用到的索引查看实际情况x天哪些索引被使用查看表之间的引用查看每张表有多少行数据被查询Explain使用方法通过在sql语句最前方加上关键字explain,如:mysql> explain select * from test03;+----+-------------+--------+------+---------------
2021-10-19 21:02:31
847
原创 springboot03整合mybatis和druid
springboot整合mybatis和druid数据源为了练习,整合mybatis既使用了xml配置方式也使用了注解方式。数据库表引入依赖<dependencies> <!-- mybatis-spring-boot整合包 --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybati
2021-10-11 21:31:57
654
原创 springboot自动配置
springboot自动配置原理自从开始学习springboot后,我发现,springmvc的配置文件不用自己配了,web.xml不用自己配了,很多的依赖都不用自己导入了,只需要引入相关的的starter(启动器)就够了。那为什么这些都不用自己配置了呢,是因为springboot有自动装配的功能。但是为什么springboot可以自动装配了,本着探索的精神,我决定去看看那有点让人头疼的源码。。。以下是我在看完源码后得出的个人理解,如有错误,请多指正,不胜感激!首先这是springboot的主配置类,
2021-10-07 14:24:44
305
原创 springboot
第一个springboot项目最近在学习学校课程外,也在自学一点springboot。想着记录一下学习状态顺便总结学习成功,便想着用写博客的方式记录一下!方式一:在spring官网建项目(https://spring.io/)进入springbootquickstart第一个springboot项目选择下载地址解压后用idea导入这是springboot的主类@SpringBootApplicationpublic class HelloworldApplication {
2021-10-03 21:22:17
90
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人