自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 继承和多态

多态是方法或对象具有多种形态。它的前提是两个对象(类)之间存在继承关系,也就是说它是建立在继承的基础上的。一个对象的编译类型与运行类型可以不一致,编译类型在定义对象时就确定了,不能改变,而运行类型是可以变化的。@OverrideSystem.out.println("学生在学习");@OverrideSystem.out.println("老师在教学生");

2023-10-15 20:31:11 154

原创 SpringBoot整合Swagger3.0

controller层,用@Tag注解描述这个controller类的具体功能,然后@Operation注解描述某个方法的具体功能,@Parameters用来记录方法中需要的参数,每个参数的含义。启动项目,访问http://localhost:8080/documentation/swagger-ui/index.html。我们配置Security的配置类,来解除对接口文档访问的拦截。在dto类里面,使用schema来描述类的信息和类的属性。重启项目,然后重新访问接口文档,发现被拦截了。

2023-05-23 10:25:09 1338

原创 dubbo处理自定义异常

在实际项目中,我们不可避免地需要使用自定义的异常,一般这个异常会继承RuntimeException,然后我们通过@RestControllerAdvice注解,拦截业务异常类,做一些处理,但是在使用dubbo构建项目时,会发现provider抛出自定义异常,然后在消费者端,不会捕捉到我们的自定义异常,而是以RuntimeException的形式被捕获。

2023-05-20 19:15:30 1791

原创 SpringBoot整合Caffeine

Caffeine 是基于Java 8 开发的、提供了近乎最佳命中率的高性能本地缓存组件,Spring5 开始不再支持 Guava Cache,改为使用 Caffeine。Caffeine与其他本地缓存的性能比较如下:1 . 自动加载条目到缓存中,可选异步方式2 . 可以基于大小剔除3 . 可以设置过期时间,时间可以从上次访问或上次写入开始计算4 . 异步刷新5 . keys自动包装在弱引用中6 . values自动包装在弱引用或软引用中7 . 条目剔除通知8 . 缓存访问统计。

2023-05-15 14:36:07 3736 1

原创 SpringBoot整合Redis实现分布式锁

SpringBoot整合redis实现分布式锁

2023-05-11 19:01:45 1594

原创 使用TrieTree(字典树)来实现敏感词过滤

字典树(TrieTree),是一种树形结构,典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串,如01字典树)。主要思想是利用字符串的公共前缀来节约存储空间。很好地利用了串的公共前缀,节约了存储空间。字典树主要包含两种操作,插入和查找。字典树具有以下规则:-1. 根节点不包含字符,其他节点包含一个字符。从根节点到某一节点经过的字符连接起来构成一个字符串。如图中的 him 、 her 、 cat 、 no 、 nova。一个字符串与 Trie 树中的一条路径对应。

2023-05-01 14:36:52 1555

原创 SpringBoot自定义注解

修饰符:访问修饰符必须为public,不写默认为pubic;关键字:关键字为@interface;注解名称:注解名称为自定义注解的名称注解类型元素:注解类型元素是注解中内容,根据需要标志参数,例如上面的注解的value;Annotation型定义为@interface, 所有的Annotation会自动继承java.lang.Annotation这一接口,并且不能再去继承别的类或是接口.参数成员只能用public或默认(default)这两个访问权修饰。

2023-04-30 14:17:40 4595 1

原创 SpringBoot中线程池应用

比 CPU 核心数多出来的一个线程是为了防止线程偶发的缺页中断,或者其它原因导致的任务暂停而带来的影响。I/O 密集型任务(2N): 这种任务应用起来,系统会用大部分的时间来处理 I/O 交互,而线程在处理 I/O 的时间段内不会占用 CPU 来处理,这时就可以将 CPU 交出给其它线程使用。1.2 不同业务用不同的线程池。配置线程池的时候要根据当前业务的情况对当前线程池进行配置,因为不同的业务的并发以及对资源的使用情况都不同,而且当多个业务使用同一个线程池时,可能会因为线程池使用不当导致死锁。

2023-04-22 18:43:18 2758 1

原创 dubbo学习

而与Failsafe不同的是,Failback策略会将这次调用加入内存中的失败列表中,对于这个列表中的失败调用,会在另一个线程中进行异步重试,重试如果再发生失败,则会忽略,即使重试调用成功,原来的调用方也感知不到了。Dubbo调用类别有四种,分别是同步,异步,并行以及广播调用。在特殊场景下,异步调用可提高性能,比如要远程调用A、B、C,分别用时1s,2s,3s,如果是同步的话,用时6秒,如果异步调用,同时去执行这三个接口,理想情况下用时3秒,不过前提是ABC这三个方法没有参数依赖并且没有顺序依赖。

2023-03-25 15:52:13 148

原创 SpringBoot文件切片

SpringBoot文件切片

2023-03-11 20:25:46 590

原创 SpringBoot整合RabbitMQ

SpringBoot整合RabbitMQ

2022-12-06 21:11:11 276

原创 SpringBoot整合Dubbo

Springboot

2022-10-19 21:19:31 5805

原创 SpringBoot阶段总结

SpringBoot总结

2022-09-20 20:24:29 180

原创 SpringBoot整合mybatis-plus

springboot整合mybatis-plus

2022-08-28 19:09:41 145

原创 SpringBoot学习

SpringBoot学习笔记

2022-08-05 12:24:51 256

原创 Java-多线程入门学习

Java多线程入门

2022-07-24 17:52:03 75

原创 java访问xml配置文件

xml访问

2022-06-14 20:31:20 799

原创 SpringBoot框架整合Shiro框架

SpringBoot框架整合Shiro框架最近在学习Shiro框架,做个笔记记录一下修改pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/

2022-05-25 10:11:38 247

原创 springboot实现学生管理系统

SpringBoot实现学生管理系统一、创建springboot项目点击下一步点击下一步,选择要添加的依赖点击下一步,再点击完成修改pom.xml如下<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocati

2022-05-07 19:02:13 5660 6

原创 2021IDEA创建springboot项目

2021IDEA创建SpringBoot项目创建新项目,选择maven项目,选择quickstart修改项目名选择仓库位置点击完成,文件目录如下修改pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schem

2022-05-04 09:22:39 1088

原创 SSM整合实现学生管理系统

SSM整合实现学生管理系统我们这里使用的是IDEA社区版,通过maven项目进行整合首先先创建一个maven项目,选择webapp的工件项目创建完毕后,我们先在pom.xml引入相关依赖<dependencies> <!--spring相关依赖--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-co

2022-04-24 14:28:57 1592 2

原创 SpringMVC实现学生管理小系统

SpringMVC实现学生管理小系统我们这里使用的是IDEA社区版,先创建一个maven项目,然后导入依赖,即我们在pom.xml添加下列依赖:<?xml version="1.0" encoding="UTF-8"?><!-- $Id: pom.xml 642118 2008-03-28 08:04:16Z reinhard $ --><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http

2022-04-22 10:09:49 966

原创 MyBatis+Struts2

MyBatis+Struts2MyBatis框架整合Struts2框架,这里我们创建的maven项目先在Pom.xml文件下添加相关依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ma

2022-04-11 12:22:25 574

原创 Hibernate+Struts2

Hibernate+Struts2这里采用Maven项目进行整合pom.xml文件添加相关依赖<?xml version="1.0" encoding="UTF-8"?><!-- $Id: pom.xml 642118 2008-03-28 08:04:16Z reinhard $ --><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSc

2022-04-09 12:33:53 1322

原创 MySQL学习笔记四

MySQL学习笔记四Joined RelationsOuter JoinLeft Outer Join左外连接(保留左表的全部信息)Right Outer Join右外连接(保留右表的全部信息)Inner JoinViews视图视图等于虚表,它不占磁盘的空间,但是可以像表一样进行使用我们想使用instructor,但是又不想显示它的salary数据,这时可以使用view选出生物学院的instructor作为视图删除视图用其他视图定义视图视图的更新从单表中创建的v

2022-03-31 12:09:08 617

原创 MySQL笔记三

MySQL笔记三嵌套子查询find the total number of (distinct) students who have taken coursesections taught by the instructor with ID 10101表的信息如上图,答案如下:Some从句集合里有一个满足就选出来find names of instructors with salary greater than that of some(at least one)instructor

2022-03-29 12:10:24 704

原创 MySQL笔记二

MySQL笔记二自然连接SELECT name,course_idfrom instructor,teacheswhere instructor.ID=teaches.ID上述语句等价于select name,course_idfrom instructor natrual join teaches;结果如下:自然连接存在的问题:有可能把同名但是不相干的属性连接在一起自然连接是在笛卡尔乘积的基础上,选择出值相等的重命名对字段重命名select ID,name,salary/

2022-03-24 12:12:59 1263

原创 MySQL学习笔记一

MySQL学习一创建一个表create table student(id char(5) primary key,name varchar(20) not null,grade varchar(10) not null);显示表的定义desc student;//或者show columns from studnet;修改表,往表里添加字段alter table student add major varchar(10);修改表,删除表里的age字段alter table

2022-03-22 12:12:39 747

原创 小程序云开发之数据库增删改查操作

小程序云开发之数据库增删改查操作最近在学习小程序的云开发,刚好学到云数据库,这里做个笔记,方便下次查看先创建一个小程序项目,不要选择云开发,然后也不要选择模板,不然会创建许多不需要用到的东西。然后我们在pages中创建一个目录,假设就叫study,然后,我们点击云开发选择数据库,点击+号创建一个student表然后我们在这个表中添加数据(‘0001’,‘张三’,‘2020’,‘软件工程’)从上到下分别代表学生的学号、姓名、年级和专业然后我们修改数据权限,以便后续进行增删改查我们修

2022-03-21 19:43:45 2387 1

原创 微信小程序授权登录

微信小程序授权登录最近在学习微信小程序,学到授权登录这里,做个笔记记录一下。我们使用的工具是微信开发者工具,我们创建一个项目,项目结构如图所示:我们先准备好我们的index.wxml文件,代码如下:<button wx:if="{{!userInfo}}" bindtap="login">授权登录</button><view wx:else class="root"> <image class="touxiang" src="{{userInfo.a

2022-03-20 14:52:51 10345 4

原创 Maven配置Spring框架

Maven配置Spring框架我们先用IDEA创建一个Maven项目,补全目录如下然后在pom.xml文件中,配置我们要用到的Spring依赖<?xml version="1.0" encoding="UTF-8"?><!-- $Id: pom.xml 642118 2008-03-28 08:04:16Z reinhard $ --><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="htt

2022-03-11 15:12:35 1573

原创 Maven配置Struts2框架

Maven配置Struts2框架这里使用的是IDEA社区版,首先创建一个Maven工程,然后选择web-app这个archetype原型。然后我们先配置一下pom.xml,代码如下<?xml version="1.0" encoding="UTF-8"?><!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the

2022-03-07 19:21:25 582

原创 使用Maven创建Hibernate过程

使用Maven创建Hibernate过程我们先打开MYSQL,创建一个test的数据库,然后在该库下创建一个product_表use test; CREATE TABLE product_ ( id int(11) NOT NULL AUTO_INCREMENT, name varchar(30) , price float , PRIMARY KEY (id)) DEFAULT CHARSET=UTF8;创建一个Maven项目,我们先在pom.xml文件下编写相关的配置,代码

2022-03-04 13:50:13 905

原创 JSON学习笔记

文章目录1.什么是JSON2.JSON的定义和访问3.json的两个常用方法4.JSON在Java中的使用1.什么是JSONJSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成,JSON采用完全独立于语言的文本格式,而且很多语言都提供了对json的支持(包括C,C++,C#,Java,JavaScript,Perl,Python等),这样就使得JSON成为理想的数据交换语言。轻量级指的是根xml做比较。数据交换指的是客

2022-02-13 12:00:15 210

原创 Filter过滤器学习笔记

文章目录1.什么是Filter过滤器2.Filter的初体验1.什么是Filter过滤器1.Filter过滤器是JavaWeb的三大组件之一,三大组件分别是Servlet程序,Listener监听器,Filter过滤器2.Filter过滤器是JavaEE的规范,也就是接口3.Filter过滤器它的作用是拦截请求,过滤响应拦截请求常见的应用场景:(1)权限检测(2)日记操作(3)事务管理2.Filter的初体验要求在你的web工程下,有一个admin目录,这个admin目录下的所有资源(h

2022-02-11 16:09:25 179

原创 Session会话笔记

文章目录1.什么是Session会话1.什么是Session会话1.Session是一个接口(HttpSession)2.Session是会话,用来维护客户端和服务器之间关联的一种技术3.每个客户端都有自己的一个Session会话4.Session会话中,经常用来保存用户登录之后的信息...

2022-02-11 11:29:47 93

原创 Cookie学习笔记

文章目录1.什么是Cookie2.如何创建Cookie1.什么是Cookie1)Cookie翻译过来是饼干的意思2)Cookie是服务器通知客户端保存键值对的一种技术3)客户端有了Cookie后,每次请求都发送给服务器4)每个Cookie的大小不超过4kb2.如何创建Cookie...

2022-02-11 10:27:48 153

原创 文件的上传和下载

文章目录1.文件的上传介绍1.文件的上传介绍1.要有一个form标签,method=post请求2.form标签的encType属性值必须为multipart/form-data值(以多段(每一个表单项一个数据项)的形式进行拼接,然后以二进制流的形式发给服务器)3.在form标签中使用input type=file添加上传的文件4.编写服务器代码(Servlet程序)接收,处理上传的数据我们创建一个软件包,命名为com.bjpowernode,在该包下创建一个UploadServlet.java

2022-02-09 11:56:09 789

原创 EL表达式

文章目录1.什么是EL表达式2.EL表达式搜索域数据的顺序3.EL表达式输出Bean的普通属性,数组属性,List集合属性,map集合属性4.EL表达式--运算5.EL表达式的11个隐含对象1.什么是EL表达式EL表达式的全称:Expression Language。表达式语言。EL表达式的作用:主要是代替jsp页面中的表达式脚本,在jsp页面中进行数据的输出。因为EL表达式在输出数据时要比jsp的脚本要简洁。EL表达式输出的格式是:${表达式}EL表达式输出null值的时候,输出的是空串,jsp

2022-02-08 11:31:54 965

原创 jsp笔记

文章目录1.什么是jsp1.什么是jspjsp的全称是java server pages。Java的服务器页面,它的主要作用是代替Servlet程序回传HTML页面的数据。因为Servlet程序回传HTML页面数据是一件非常繁琐的事情,开发和维护成本都很高。jsp和html页面一样,都是存放在web目录下,访问也跟html页面一样...

2022-02-06 16:43:03 465

学生管理系统1.0(SpringBoot+mybatisPlus+thymeleaf)

学生管理系统1.0版本,实现简单的学生信息增删改查; 技术栈采用SpringBoot+mybatisPlus+thymeleaf,整合mysql数据库,实现对学生信息和学生所属学院信息的简单快速的增删改查,并通过thymeleaf搭建简单的前端页面。 采用MVC三层架构(即controller层、service层和dao层); 后续会继续完善,添加对应的异常处理和鉴权。

2023-10-15

空空如也

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

TA关注的人

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