自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(46)
  • 收藏
  • 关注

原创 JDK8新特性:Lambda表达式规则及用法,方法引用

JDK8新特性:Lambda表达式规则及用法,方法引用

2023-12-10 18:30:53 213 1

原创 SpringSecurity+JWT实现权限控制以及安全认证

Spring Security 是 Spring家族中的一个安全管理框架。相比与另外一个安全框架Shiro,它提供了更丰富的功能,社区资源也比Shiro丰富。认证:验证当前访问系统的是不是本系统的用户,并且要确认具体是哪个用户​授权:经过认证后判断当前用户是否有权限进行某个操作依赖:引入依赖后我们在尝试去访问之前的接口就会自动跳转到一个SpringSecurity的默认登陆页面,默认用户名是user,密码会输出在控制台。​ 必须登陆之后才能对接口进行访问。

2023-11-28 18:12:10 272

原创 Docker技术教程

利用Docker快速安装MySQL。

2023-11-14 18:51:16 102

原创 Mybatis-Plus最新教程

新增:insert(实体) 查询:selectByid(5L) 批量查:selectBatchIds(List.of(1L,2L,3L)),只有MybatisPlus生成的SQL语句才支持自动的逻辑删除,自定义SQL需要自己手动处理逻辑删除。多个ID查:userService.listByIds(List.of(1L,2L,3L).var。1.需求:改造根据id用户查询的接口,查询用户的同时返回用户收货地址列表。一旦采用了逻辑删除,所有的查询和删除逻辑都要跟着变化,非常麻烦。

2023-11-14 18:43:29 661 1

原创 Shiro框架详解

比如加密密码“admin”,产生的散列值是“21232f297a57a5a743894a0e4a801fc3”,可以到一些md5解密网站很容易的通过散列值得到密码“admin”,即如果直接对密码进行散列相对来说破解更容易,此时我们可以加一些只有系统知道的干扰数据,如salt(即盐);Shiro是apache旗下一个开源框架,它将软件系统的安全认证相关的功能抽取出来,实现用户身份认证,权限授权、加密、会话管理等功能,组成了一个通用的安全认证框架。密码管理,shiro提供了一套加密/解密的组件,方便开发。

2023-10-25 17:03:30 118

原创 Redis

Redis是一个基于内存的key-value结构数据库。键值对基于内存存储,读写性能高适合存储热点数据(热点商品、资讯、新闻)企业应用广泛redis-server.exe redis.windows.conf 开启进程Redis服务默认端口号为 6379 ,通过快捷键Ctrl + C 即可停止Redis服务客户端连接命令:redis-cli.exeexit 退出通过redis-cli.exe命令默认连接的是本地的redis服务,并且使用默认6379端口。

2023-09-20 16:49:57 224 1

原创 项目--苍穹外卖

1.| constant | 存放相关常量类 || context | 存放上下文类 || enumeration | 项目的枚举类存储 || exception | 存放自定义异常类 || json | 处理json转换的类 || properties | 存放SpringBoot相关的配置属性类 || result | 返回结果类的封装 || utils | 常用工具类 |2.| Entity | 实体,通常和数据库中的表对应 |

2023-09-13 11:13:53 471

原创 Git 概述命令、idea中的使用

Git是一个分布式版本控制工具,通常用来对软件开发过程中的源代码文件进行管理。本地仓库:开发人员自己电脑上的Git仓库远程仓库:远程服务器上的Git仓库Git GUI Here:打开Git图形界面Git Bash Here:打开Git命令行。

2023-09-11 16:36:38 450

原创 MyBatis-Plus

MyBatis-Plus ( 简称 MP)是一个MyBatis的增强工具,在MyBatis 的基础只做增强不做改变,为简化开发,提高效率而生。

2023-09-09 19:09:59 919

原创 MybatisPlus

是基于Mybatis框架基础上开发的增强型工具,旨在简化开发、提高效率。

2023-09-04 13:15:56 254

原创 Maven高级

将项目按照功能拆分成若干个子模块,方便项目的管理维护、扩展,也方便模块间的相互调用,资源共享。

2023-09-03 16:17:26 1076

原创 常用API(JDK8新增日期,时间,Lambda表达式)

代表本地日期、时间 ( 年、月、日、星期、时、分、秒、纳秒 )

2023-08-23 18:03:42 121

原创 Git,分布式版本控制工具

打开用户目录,创建.bashrc文件 (touch ~/.bashrc)--abbrev-commit 使得输出的commitid更简短。3.打开gitBash,执行source ~/.bashrc。git branch -d b1 删除分支时,需要做各种检查。git branch -D b1 不做任何检查,强转删除。--pretty=oneline 将提交信息显示为一行。创建成功后可在文件夹下看到 隐藏的.git目录。git commit -m '注释内容'--graph 以图的形式显示。

2023-08-22 18:05:47 321

原创 数据库(DQL,多表设计,事务,索引)

- 2. 先查询入职时间在 '2015-01-01' (包含) 以前的员工 , 并对结果根据职位分组 , 获取员工数量大于等于2的职位 -- count。-- 7. 查询 入职时间 在 '2000-01-01' (包含) 到 '2010-01-01'(包含) 之间 且 性别为女 的员工信息。-- 6. 查询入职日期 在 '2000-01-01' (包含) 到 '2010-01-01'(包含) 之间的员工信息。-- 8. 查询 职位是 2 (讲师), 3 (学工主管), 4 (教研主管) 的员工信息。

2023-08-18 18:05:23 215

原创 SpringBoot(配置优先级,Bean管理,底层原理)

如果要管理的bean对象来自于第三方(不是自定义的),是无法用 @Component 及衍生注解声明bean的,就需要用到 @Bean注解。命令行参数>java系统属性properties>yml>yaml。//根据bean的名称 及 类型获取。每次使用该 bean 时会创建新的实例(非单例)//根据bean的名称获取。//根据bean的类型获取。//获取bean对象。/第三方bean的管理。//bean的作用域。

2023-08-17 18:04:10 127

原创 spring:事务管理,AOP

而SpringAOP是Spring框架的高级技术,旨在管理bean对象的过程中,主要通过底层的动态代理机制,对特定的方法进行编程。@Around("execution(* com.itheima.service.impl.DeptServiceImpl.*(..))") //切入点表达式。deptLog.setDescription("执行了解散部门的操作,此次解散的是"+id+"号部门");事务传播行为:指的就是当一个事务方法被另一个事务方法调用时,这个事务方法应该如何进行事务控制。

2023-08-17 16:35:59 71

原创 登录认证校验(JWT令牌,过滤器Filter,拦截器lnterceptor,异常处理)

setExpiration(new Date(System.currentTimeMillis() + 3600 * 1000))//设置有效期为1h。Result.success():Result.error("用户名或者密码错误");会话:用户打开浏览器,访问web服务器的资源,会话建立,直到有一方断开连接,会话结束。System.out.println("Demo 拦截到了请求...放行后逻辑");后续每个请求,都要携带JWT令牌,系统在每次请求处理之前,先校验令牌,通过后,再处理。

2023-08-16 18:09:48 847

原创 综合案例二(员工管理:新增员工,文件上传,修改员工,配置文件)

log.info("新增员工, emp: {}",emp);

2023-08-15 17:47:58 81

原创 web开发综合案例(部门管理,员工管理):服务端接口开发

1.准备工作准备数据库表(dept、emp)创建springboot工程,引入对应的起步依赖(web、mybatis、mysql驱动、lombok)配置文件application.properties中引入mybatis的配置信息,准备对应的实体类准备对应的Mapper(数据访问操作)、Service(接口、实现类)(逻辑处理)、Controller基础结构(接收请求处理响应)REST是风格,是约定方式,约定不是规定,可以打破。

2023-08-14 18:21:35 137

原创 Mybatis(注解实现增删改查,XML配置文件,动态SQL)

/数据封装方案三: 开启mybatis的驼峰命名自动映射开关 --- a_cloumn ------> aColumn (在配置文件中)SQL注入是通过操作输入的数据来修改事先定义好的SQL语句,以达到执行代码对服务器进行攻击的方法。//新增员工 (多个参数封装到一个对象当中,再调用insert方法,传递一个对象。实体类属性名 和 数据库表查询返回的字段名一致,mybatis会自动封装。随着用户的输入或外部条件的变化而变化的SQL语句,我们称为 动态SQL。//根据ID删除数据。//根据ID查询员工。

2023-08-11 18:16:54 364 1

原创 Mybatis(配置,数据库连接池,lombok)

使用Java语言操作关系型数据库的一套API。

2023-08-10 17:38:34 140

原创 数据库(MySQL,DDL,DML)

1.数据库:DB,是存储和管理数据的仓库。2.数据库管理系统:(DBMS),操纵和管理数据库的大型软件。SQL:操作关系型数据库的编程语言,定义了一套操作关系型数据库统一标准。

2023-08-09 15:18:50 55

原创 分层解耦(三层架构,分层解耦,IOC&DI)

ComponentScan注解虽然没有显式配置,但是实际上已经包含在了启动类声明注解 +@SpringBootApplication 中,默认扫描的范围是。dao:数据访问层(Data Access Object)(持久层),负责数据访问操作,包括数据的增、删、改、查。Bean对象:IOC容器中创建、管理的对象,称之为bean。容器为应用程序提供运行时,所依赖的资源,称之为依赖注入。前面声明bean的四大注解,要想生效,还需要被组件扫描注解。耦合:衡量软件中各个层/模块之间的依赖、关联的程度。

2023-08-09 13:29:16 119

原创 请求响应(postman,请求:简单/复杂,实体,数组集合,日期,Json,路径参数 响应 案例)

请求(HttpServletRequest):获取请求数据响应(HttpServletResponse):设置响应数据BS架构:Browser/Server,浏览器/服务器架构模式。客户端只需要浏览器,应用程序的逻辑和数据都存储在服务端。(维护方便 体验一般)CS架构:Client/Server,客户端/服务器架构模式。(开发、维护麻烦 体验不错)

2023-08-08 18:03:06 521

原创 SpringBootWeb入门,HTTP协议,Tomcat

浏览器版本,例如Chrome浏览器的标识类似Mozilla/5.0 ... Chrome/79,IE浏览器的标识类似Mozilla/5.0 (Windows NT ...) like Gecko。基于Springboot开发的web应用程序,内置了tomcat服务器,当启动类运行时,会自动启动内嵌的tomcat服务器。Spring发展到今天已经形成了一种开发生态圈,Spring提供了若干个子项目,每个项目用于完成特定的功能。表示浏览器能接收的资源类型,如text/*,image/*或者*/*表示所有;

2023-08-08 13:25:41 59

原创 Maven

如果引入的依赖,在本地仓库不存在,将会连接远程仓库/中央仓库,然后下载依赖。default:核心工作,如: 编译、测试、打包、安装、部署等site:生成报告、发布站点等。作用:1.依赖管理,方便快捷的管理项目依赖的资源(jar包),避免版本冲突问题。1.bin目录存放可执行文件,项目的编译,测试,打包,运行mvn。间接依赖:被依赖的资源如果依赖其他资源,当前项目间接依赖其他资源。排除依赖:排除依赖指主动断开依赖的资源,被排除的资源无需指定版本。依赖的jar包,默认情况下,可以在任何地方使用。

2023-08-07 21:36:18 42

原创 提问总结二

20.方法重写:当子类觉得父类中的某个方法不好用,或者无法满足自己的需求时,子类可以重写一个方法名称 参数列表一样的方法,去覆盖父类的这个方法,这就是方法重写。3.运算符优先级:大到小:赋值运算符(=),三元运算符,逻辑运算符(&&,||,!),比较运算符,位运算符(&,|,^),算术运算符(++,--,+,-)放在外面,当遇到异常时,抛出异常,后面的循环就会终止,并不会执行。12.封装定义:用类设计对象处理某一个事物的数据时,应该把要处理的数据,以及处理这些数据的方法,设计到一个对象中去。

2023-08-07 13:45:26 55 1

原创 Javaweb:2.JavaScript

标签

2023-08-03 17:58:06 59

原创 javaweb:1.HTML基础标签&样式

VSCode!-》基础结构标签。

2023-08-03 15:15:57 94

原创 多线程创建,线程安全,线程同步,线程池

线程Thread是一个程序内部的一条执行流程。

2023-08-02 16:49:53 61 1

原创 提问总结整理

try放在for循环的里面所有的for循环都会执行,当遇到异常时,抛出异常继续执行;放在外面,当遇到异常时,抛出异常,后面的循环就会终止,并不会执行。5.泛型:定义类、接口、方法时,同时声明了一个或者多个类型变量(如:),称为泛型类,泛型接口,泛型方法、它们统称为泛型。i:类变量:有static修饰,属于类,在计算机里只有一份,会被类的全部对象共享。4.static:静态,可以修饰成员变量,成员方法。实例方法:无static修饰的成员方法,属于对象。类方法:有static修饰的成员方法,属于类。

2023-08-01 12:22:52 28 2

原创 特殊文件(Properties,XML文件)日志技术

Properties 是用来代表属性文件的,通过 Properties 可以读写属性文件里的内容。是一个 Map 集合(键值对集合),但是我们一般不会当集合使用。本质是一种数据的格式,可以用来存储复杂的数据结构和数据关系。3.把键值对数据写出到属性文件里去。Properties(盆盘历史)使用程序读取里面键值对数据。

2023-07-31 18:52:14 58 1

原创 File、IO流,资源释放

try-catch-finally finally代码区的特点:无进shefa论try的程序是正常执行了,还是出现了异常,最后都一定会执行finally区,除非JVM终止,一般用于在程序执行完成后进行资源的释放操作。按流中数据的最小单位,分为字节流{适合操作所用类型的文件},字符流(只适合操作纯文本文件)文件字符输出流:写字符数据出去,必须刷新流,或者关闭流,写出去的数据才能生效。读写文本内容更适合用字符流,字节流适合做数据的转移,如:文件复制等。fw.close();

2023-07-30 16:58:14 357 1

原创 JDK8新特性:Stream流 用法总结

/ 需求5:请找出身高超过170的学生对象,并把学生对象的名字和身高,存入到一个Map 集合返回。String[] names2 = {"张翠山","东方不败","独孤求败","死也不变"};收集Stream流:把Stream流操作后的结果转回到集合或者数组中去返回。// 即求4:请找出身高超过170的学生对象,并放到一个新集合中去返回。终结方法指的是调用完成后,不会返回新Stream了,没法继续使用流了。// 需求2:请找出身高最高的学生对象,并龄出。//需求3,请出身高最的学生对象,并输出。

2023-07-28 18:11:21 48 1

原创 集合框架二(collections, Map)

在方法内部就是一个数组(1.一个列表中,只能有一个可变参数。2.可变参数必须放在形参列表的最后面, public static void test(int age,int...nums){}双列集合,一次存一对数据,每个元素又称 键值对,由键决定,值不做要求,需要存储一 一对应的数据。TreeMap 按照大小默认升序排序。LinkedHashMap 有序。数据类型...参数名称。HashMap 无序。用来操作集合的工具类。

2023-07-27 18:08:43 50 1

原创 集合框架(一)

1.for循环(因为List集合有索引)2.迭代器3.增强for循环foreach4.Lambda表达式。迭代器:用来遍历集合的专用方式(数组没有迭代器) ,在java中迭代器的代表是iterator。基于数组实现的,1.查询速度快,2删除效率低,3添加效率极低。List系列集合:添加的元素是有序,可重复,有索引。for (元素的数据类型 变量名:数组或者集合){LinkedHashSet:有序,不重复,无索引。双列集合,每个元素包含两个值(键值对)Set系统集合:无序,不重复,无索引。

2023-07-26 18:44:05 37 1

原创 算法,正则表达式,异常处理

qq.matches() 让字符串对象与送进来的正则表达式进行匹配,成功true,失败false。选择排序:每轮选择当前位置,开始找出后面的较小值与该位置交换。冒泡排序:每次从数组中找出最大值放在数组的后面去。由一些特定的字符组成,代表的是一个原则。作用一:用来校验数据格式是否合法。sc.nextLine()接收一行数据。作用二:在一段文本中查找满足要求的内容。排序算法:(冒泡排序,选择排序)查找算法:二分(折半查找)

2023-07-26 15:15:30 63 1

原创 常见API(Object类,包装类,StringBuilder,StringBuffer,StringJoiner,Math,BigDecimal,传统日期时间)

java帮我们已经写好一些程序,如:类、方法等,我们直接拿过来用就可以解决一些问题。

2023-07-25 17:56:42 73

原创 接口,匿名内部类,枚举,泛型

Test类:Outer.Inner in =new Outer .Inner();ii:静态内部类:有static修饰的内部类,属于内部类自己持有。i:成员内部类:类中一个普通成员,类似于普通成员变量,成员方法。可以直接访问外部类的静态成员,不可以直接访问外部类的实例成员。修饰类 class 类名{}使用:用来表示一组信息,然后作为参数进行传输。new 类或接口(参数值...){使用:通常作为一个参数传输给方法。一种特殊的局部内部类。类体(一般是方法重写);

2023-07-24 18:08:59 96

原创 第二周实习工作总结

方法声明了具体返回值类型,内部须使用return返回对应类型的数据;形参有多个,甚至没有,若有多个,中间逗号隔开,且不能给。方法声明了具体返回值类型,内部须使用return返回对应类型的数据;形参有多个,甚至没有,若有多个,中间逗号隔开,且不能给初始化值。一个类出现多个方法的名称相同,但它们的形参列表不同(形参的个数。类型,顺序不同,不关心形参的名称)的。String的对象是不可变字符串对象,只要是以“.…一个容器,大小可变,用来装数据,泛型类,约束存储的数据类型。一个变量,可用在方法中,来拿到当前对象。

2023-07-24 09:29:57 68 1

Mybatis-Plus最新教程

基于现在spring流行的插件mybatis-plus开发,最新最全

2023-11-14

Result.java

放在pojo下

2023-08-25

Mybatis(准备,实现增删改查,XML配置文件,动态SQL)

Mybatis(准备,实现增删改查,XML配置文件,动态SQL)

2023-08-14

Mybatis(准备,实现增删改查,XML配置文件,动态SQL)

Mybatis(准备,实现增删改查,XML配置文件,动态SQL)

2023-08-14

Mybatis(准备,实现增删改查,XML配置文件,动态SQL)

Mybatis(准备,实现增删改查,XML配置文件,动态SQL)

2023-08-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除