自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 资源 (1)
  • 收藏
  • 关注

原创 SpringBoot异步任务、邮件发送、定时任务

1.编写业务模拟延时进程2.controller层调用业务层3.在异步任务方法上加上注解@Async4.在启动类中使用注解@EnableAsync开启异步功能。

2022-08-07 16:04:08 180 1

原创 SpringBoot集成Swagger

1、新建一个SpringBoot-Web项目2.导入相关依赖

2022-08-07 12:31:17 271

原创 SpringBoot整合Shiro、Mybatis、Thymeleaf

新建一个SpringBoot项目导入Thymeleaf依赖

2022-08-06 09:14:40 203

原创 SpringSecurity环境搭建

修改index.html,未登录时显示登录按钮,登录后显示用户名和注销按钮。新建controller包,创建一个RouterController类。thymeleaf、springSecurity整合。新建一个项目 选择spring web依赖。有问题需要对springboot版本降级。导入thymeleaf依赖。关闭thymeleaf缓存。对应角色显示对应的功能页面。导入security依赖。在html中导入命名空间。...

2022-08-04 16:02:07 309

原创 SpringBoot整合Mybatis

在application.properties中配置mybatis包别名以及mapper.xml的地址。新建springboot工程选中spring web、jdbc API、Mysql Driver。导入mybatis依赖、Lombok依赖。CRUD完成 测试。

2022-08-04 11:13:42 61

原创 SpringMVC学习笔记第一天

文章目录SpringMVC1、HelloSpringMVC2、使用注解开发SpringMVC3、Restful风格4、重定向和转发SpringMVCssm:mybatis+Spring+SpringMVCMVC三层架构1、HelloSpringMVC1.配置web.xml<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns

2022-05-16 17:08:41 85

原创 Spring学习笔记

文章目录1、Spring1.1简介1.2优点1.3组成1.4扩展2、IOC理论推导IOC本质3、HelloSpring4、IOC创建对象的方式5、Spring配置6、依赖注入6.1、构造器注入6.2、set方式注入(重点)6.3、拓展方式注入6.4、bean的作用域7、Bean的自动装配7.1、测试8、使用注解开发9、使用java 的方式配置Spring10、代理模式11.AOP实现方式一:使用Spring的API接口[主要是SpringAPI接口实现]方式二:使用自定义类来实现AOP[主要是切面定义]方式

2022-05-14 18:37:52 194

原创 Spring学习笔记第二天

文章目录7、Bean的自动装配7.1、测试8、使用注解开发9、使用java 的方式配置Spring10、代理模式11.AOP实现方式一7、Bean的自动装配自动装配是Spring满足bean依赖的一种方式Spring会在上下文中自动寻找,并自动给beanh装配属性!三种装配的方式:在xml中显示配置在Java中显示配置隐式的自动装配bean【重要】7.1、测试1.搭建环境一个人有两个宠物!ByName <!--bean id要与需要自动装配的类的属性名对应--&gt

2022-05-11 17:49:17 228

原创 Spring学习笔记第一天

文章目录1、Spring1.1简介1.2优点1.3组成1.4扩展2、IOC理论推导IOC本质3、HelloSpring4、IOC创建对象的方式5、Spring配置6、依赖注入6.1、构造器注入6.2、set方式注入(重点)6.3、拓展方式注入1、Spring1.1简介​ Spring框架是由于软件开发的复杂性而创建的。Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅仅限于服务器端的开发。从简单性、可测试性和松耦合性角度而言,绝大部

2022-05-10 18:29:22 156

原创 Mybatis学习笔记第四天

文章目录11.动态SQL1.搭建环境2.创建一个基础工程3.IF、where4.choose (when, otherwise)5、set6.SQL片段7.foreach12、缓存1、一级缓存2、二级缓存自定义缓存-ehcache11.动态SQL什么是动态SQL?根据不同的条件生成不同的sql语句如果你之前用过 JSTL 或任何基于类 XML 语言的文本处理器,你对动态 SQL 元素可能会感觉似曾相识。在 MyBatis 之前的版本中,需要花时间了解大量的元素。借助功能强大的基于 OGNL 的表达式

2022-05-09 19:06:37 121

原创 Mybatis学习笔记第三天

文章目录6.分页6.1、使用Limit分页:6.2、RowBounds6.3、分页插件7、使用注解开发7.1、步骤7.2、使用注解完成CRUD8、Lombok9、多对一处理1.环境搭建2.测试环境搭建按照查询嵌套处理按照结果嵌套处理10.一对多处理按照查询嵌套处理按照结果嵌套处理小结6.分页为什么 要分页?减少数据的处理量6.1、使用Limit分页:语法:select * from user limit startindex,pagesize;使用Mybatis实现分页,核心SQL1.接

2022-05-07 21:12:46 317

原创 Mybatis学习笔记第二天

文章目录4.Mybatis配置解析1.核心配置文件2.环境配置(environments)3.属性(properties)4.类型别名(typeAliases)5.映射器(mappers)6.作用域(Scope)和生命周期7.解决实体类属性与数据库字段不同的问题1.起别名2.resultMap(结果集映射)5.日志1.日志工厂2.Log4j4.Mybatis配置解析1.核心配置文件mybatis-config.xmlMybatis的配置文件包含了会深深影响Mybatis行为的设置和属性信息。p

2022-05-04 20:52:37 74

原创 Mybatis学习笔记第一天

文章目录Mybatis1.简介1.1什么是Mybatis1.2、持久化1.3持久层1.4为什么需要Mybatis?2.第一个Mybatis程序2.1、搭建环境2.2、创建一个模块2.3、编写代码2.3、测试3.CRUD1.namespace2.select3.增删改查实现Mybatis环境:JDK1.8Mysql5.7maven3.6.1IDEA1.简介1.1什么是MybatisMyBatis 是一款优秀的持久层框架它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除

2022-05-03 21:15:49 1251

原创 JavaWeb学习笔记02

文章目录JavaWebDay027.JSP7.1什么JSP7.2JSP原理7.3JSP基础语法7.4JSP指令、标签7.5 、9大内置对象7.6、JSP标签、JSTL标签、EL表达式8.JavaBean9、MVC三层架构10.Filter(重点)11.监听器(listener)12.过滤器、监听器常见应用JavaWebDay027.JSP7.1什么JSPJava Server Pages:java服务器端页面,也和Servlet一样,用于开发动态web最大的特点:写JSP就像在写HTMl区别

2022-04-09 15:06:57 1419

原创 JavaWeb学习笔记第一天

文章目录JavaWeb学习笔记第一天1.基本概念1.1前言1.2web应用程序1.3静态web1.4动态web2.web服务器2.1技术讲解2.2web服务器3.http3.1什么是http3.2http的两个时代3.3http请求3.4http响应4.Maven4.1Maven项目架构管理工具4.2下载安装Maven4.3Pom文件(Maven的核心配置文件)5.servlet5.1什么是Servlet5.2HelloServlet5.3Servlet运行原理5.4Mapping问题5.5ServletC

2022-04-04 20:24:56 130

原创 设计模式作业 之迭代器模式

设计一个逐页迭代器,每次可返回指定个数(一页)元素,并将该迭代器用手对数据进行分页处理。绘制对应的类图并编程模拟实现。(1)绘制类图(2)代码实现AbstractAggregate类:package lib6.iterator;public interface AbstractAggregate { AbstractIterator createIterator();}AbstractIterator类:package lib6.iterator;publ

2022-04-02 20:51:51 920

原创 IDEA快捷键总结

Ctrl+Z:撤销Ctrl+Shift+Z:重做Ctrl+X:剪贴Ctrl+C:复制Ctrl+V:粘贴Ctrl+Y:删除当前行Ctrl+D:复制当前行Ctrl+Shift+J:将选中的行合并成一行Ctrl+N:查找类文件Ctrl+Shift+N:查找文件Ctrl+G:定位到文件某一行Alt+向左箭头:返回上次光标位置Alt+向右箭头:返回至后一次光标位置Ctrl+Shift+Backspace:返回上次编辑位置Ctrl+Shift+反斜杠:返回后一次编

2022-04-02 20:41:10 447

原创 MySQL学习笔记第四天

MySQL学习笔记第四天7.索引索引是帮助mysql高效获取数据的数据结构;7.1索引的分类主键索引(primary key)唯一标识 ,主键不可重复,只能有一个列作为主键唯一索引(unique key)避免重复的列出现,唯一索引可以重复,多个列都可标识为唯一索引常规索引(key /index)默认的 key index来设置全文索引(fulltext)在特定数据库引擎下才有快速定位数据7.2索引的测试--插入100万数据DELIMITER $$

2022-03-31 19:39:30 1227

原创 MySQL学习笔记第三天

MySQL学习笔记第三天自连接自己的表和自己的表连接,核心:一张表拆为两张一样的表--查询父子信息,把一张表看成两张一模一样的表SELECT a.categoryName AS'父栏目',b.categoryName AS'子栏目'FROM category AS a,category AS bWHERE a.categoryid=b.pid3.4分页和排序排序–分页(LIMIT)和排序(ORDER BY)=====–排序 :升序ASC、降序DESC–语法:ORDER BY 要

2022-03-28 19:42:40 764

原创 MySQL学习笔记第二天

MySQL学习笔记第二天1.修改删除表修改表ALTER TABLE student RENAME teacher; 修改表名ALTER TABLE teacher ADD address VARCHAR(20); 给表添加字段修改表的字段(重命名 修改约束)ALTER TABLE teacher CHANGE age age1 INT(3); //重命名ALTER TABLE teacher MODIFY address VARCHAR(30); //修改约束删除表ALT

2022-03-27 19:15:59 1283

原创 MySQL学习笔记第一天

MySQL学习笔记第一天1.初识数据库1.数据库分类关系型数据库 (SQL)mysql、Oracle、SqlServer。。。通过表和表,行和列之间的关系进行数据的存储非关系型数据库 (NO SQL)Redis,MongDB对象存储,通过对象自身的属性来决定。2.DBMS(数据库管理系统)数据库的管理软件 科学有效的管理数据,维护和获取数据MySQL 数据库管理系统!3.连接数据库mysql -uroot -p(密码)4.数据库命令行/*[17:39:

2022-03-26 20:16:42 796

原创 JavaScript学习笔记

JavaScript1.什么是JavaScript世界上最流行的脚本语言一个合格的后端人员,必须要精通JavaScript2.快速入门2.1引入JavaScript<script> </script>2.1基本语法入门<script> //1.定义变量 var name = "cjp"; //2.条件控制 if (2>1){ alert("true");

2022-03-24 20:38:00 1099

原创 黑盒测试日期问题

黑盒测试日期问题源程序

2022-03-19 15:48:04 4654

原创 CSS学习笔记2

CSS学习笔记2盒子阴影<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <style> div{ width: 100px; height: 100px; border: 10px solid

2022-03-17 20:54:15 56

原创 Css相对定位小测试题

HTML代码如下:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <link rel="stylesheet" href="../CSS/demo03.css"></head><body><div class="father"> ..

2022-03-17 20:02:22 137

原创 CSS学习笔记1

CSS学习笔记11.与html关联方式行内样式 <div style="color=black"> abc </div>外部样式 <link rel="stylesheet" href="../CSS/demo01.css"> @import url("CSS/demo01.css");/*不推荐使用*/内部样式 <style> h1{ color:bl

2022-03-16 18:57:24 429

原创 HTML学习笔记

HTML页面结构分析header:标题头部区域的内容(用于页面或者页面中的一块区域)footer:标记脚部区域的内容(用于整个页面的一块区域)section:Web页面中的一块独立区域article:独立的文章内容aside:相关内容或应用(常用于侧边栏)nav:导航类辅助内容iframe内联框架表单语法<form method="post" action="result.html"> <p>名字:<input name = "name" type="

2022-03-13 15:00:26 102

原创 HTML基本标签学习笔记

HTML超文本标记语言(Hyper Text Markup Language)基本标签段落<p></p>换行:<br>水平线:<hr>自闭合标签斜杠写在后边<hr/><strong>粗体</strong><em>斜体</em>特殊字符空格 : &nbsp;大于 : &gt;小于 : &lt;版权号: &copy;图

2022-03-12 16:11:43 200

原创 Java 反射机制

反射机制(Reflection)Java反射机制概述Reflection是Java被视为动态语言的关键,反射机制允许程序在执行期间借助于Reflection API去去的任何类的内部信息,并能直接操作任意对象的内部属性及方法优点:可以实现动态创建对象和编译,体现出很大的灵活性缺点:对性能有影响。使用反射基本上是一种解释操作,我们可以告诉jvm,我们希望做什么并且它满足我们的要求。这类操作总是慢与直接执行相同的操作。理解Class类并获取Class实例 package com.cjp.refle

2022-03-10 20:55:35 102

原创 Java注解

注解注解入门Annotation是从JDK5.0开始引入的新技术.Annotation的作用:不是程序本身,可以对程序作出解释、(这一点和注释(comment)没什么区别)可以被其他程序(比如:编译器等)读取.Annotation的格式:注解是以"@注释名"在代码中存在的,还可以添加一些参数值,例 如:@SuppressWarnings(value=“unchecked”).Annotation在哪里使用?可以附加在package,class,method,

2022-03-09 19:45:11 168

原创 网络编程 TCP/UDP

网络编程打电话–连接–接了–通话—>TCP连接发短信------发送了就完事了---->UDP连接网络编程的目的:传播交流信息,数据交换、资源共享、通信想要打到这个效果需要什么:1.如何准确的定位到网络上的一台主机 192.168.16.124 :端口,定位到这个计算机上的某个资源2.找到了这个主机如何传输数据?javaweb:网页编程 B/S网络编程:TCP/IP C/S网络通信的要素如何实现网络的通信:通信双方的地址IP端口号规则:网络通

2022-03-08 19:56:33 2294

原创 线程协作、生产者消费者模式、线程池

线程协作生产消费者模式应用场景:生产者和消费者问题假设仓库中只能存放一件产品,生产者将生产出来的产品放入仓库/,消费者将仓库中产品取走消费.如果仓库中没有产品﹐则生产者将产品放入仓库,否则停止生产并等待,直到仓库中的产品被消费者取走为止.如果仓库中放有产品﹐则消费者可以将产品取走消费,否则停止消费并等待,直到仓库中再次放入产品为止.这是一个线程同步问题(生产者和消费者共享同一个资源,并且生产者和消费者之间相互依赖,互为条件.对于生产者,没有生产产品之前,要通知消费者等待.而生产了产品之后

2022-03-07 16:37:32 116

原创 线程同步、队列和锁、同步方法及同步块、Lock

线程同步多个线程操作同一个资源并发:同一个对象被多个线程同时操作队列和锁由于同一进程的多个线程共享同一块存储空间,在带来方便的同时,也带来了访问 冲突问题,为了保证数据在方法中被访问时的正确性,在访问时加入 锁机制 synchronized. ,当一个线程获得对象的排它锁,独占资源,其他线程必须等待, 使用后释放锁即可 . 存在以下问题一个线程持有锁会导致其他所有需要此锁的线程挂起;在多线程竞争下,加锁,释放锁会导致比较多的上下文切换 和 调度延时,引 起性能问题;如果一个优先级高的线程等

2022-03-06 17:40:44 377

原创 线程状态观测、线程优先级、守护线程

多线程线程状态观测 Thread.State线程状态。线程可以处于以下状态之一:NEW 尚未启动的线程处于此状态。RUNNABLE 在Java虚拟机中执行的线程处于此状态。BLOCKED 被阻塞等待监视器锁定的线程处于此状态。WAITING 正在等待另一个线程执行特定动作的线程处于此状态。TINED_WAITING 正在等待另一个线程执行动作达到指定等待时间的线程处于此状态。TERMINATED 已退出的线程处于此状态。 package com.cjp.Stat

2022-03-06 13:22:54 224

原创 多线程——线程状态、停止、休眠、礼让、Join

多线程—线程状态线程状态图线程方法setPriority(int newPriority) 更改线程的优先级static void sleep(long millis) 在指定的毫秒数内让当前正在执行的线程休眠void join() 等待该线程终止static void yield() 暂停当前正在执行的线程对象,并执行其他线程void interrupt

2022-03-05 17:23:33 95

原创 多线程——静态代理模式、Lambda表达式以及简化

多线程静态代理模式总结:1.真实对象和代理对象都要实现同一个接口2.代理对象要代理真实角色作用:1.代理对象可以为很多真实对象他们不了的事情2.真实对象专注做自己的事情 package com.cjp.Proxy; class StaticProxy { public static void main(String[] args) { //new Thread(()-> System.out.println("我爱你"));

2022-03-05 15:14:20 73

原创 线程、多线程、线程的三种创建方法

多线程线程简介◆线程就是独立的执行路径;◆在程序运行时,即使没有自己创建线程,后台也会有多个线程,如主线程,gc线程;◆main()称之为主线程,为系统的入口,用于执行整个程序;◆在一个进程中,如果开辟了多个线程,线程的运行由调度器安排调度,调度器是与操作系统紧密相关的,先后顺序是不能认为的干预的。◆对同一份资源操作时,会存在资源抢夺的问题,需要加入并发控制;◆线程会带来额外的开销,如cpu调度时间,并发控制开销。◆每个线程在自己的工作内存交互,内存控制不当会造成数据不一致线程的创建继承

2022-03-03 20:36:17 223

原创 Java异常处理

异常机制1.什么是异常程序运行时出现不期而至的各种状况,如:文件找不到、网络连接失败、非法参数等。检查性异常:最具代表的检查性异常是用户错误或问题引起的异常,这是程序员无法预见的。例如要打开一个不存在文件时,-个异常就发生了,这些异常在编译时不能被简单地忽略。运行时异常:运行时异常是可能被程序员避免的异常。与检查性异常相反,运行时异常可以在编译时被忽略。错误:错误不是异常,而是脱离程序员控制的问题。错误在代码中通常被忽略。例如,当栈溢出时,一个错误就发生了,它们在编译也检查不到的。RunTime

2022-03-01 17:54:47 68

原创 面向对象编程 类 抽象类 接口、内部类

面向对象编程1.初识面向对象物以类聚,分类的思想模式,思考问题首先会解决问题需要分哪些类,然后对这些分类进行单独思考。最后才对某个分类下的细节进行面向对象过程的思索。面向对象适合处理复杂的问题,适合处理需要多人协作的问题面向对象的本质就是:以类的方式组织代码,以对象的组织封装数据。2.方法的调用静态方法public class Demo1 { public static void main(String[] args) { }

2022-02-28 20:30:30 192

原创 数组的创建与使用、冒牌排序、稀疏数组

数组1.数组概述数组是相同类型的数据的有序集合数组描述的是相同类型的若干个数据,按照一定的先后顺序排列组合而成其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问他们数组的四个基本特点:1.其长度是确定的,数组 一旦被创建,它的大小就是不可以改变的。其元素必须是相同类型,不允许出现混合类型。数组中的元素可以是任何数据类型,包括基本类型和引用类型。数组变量属引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量。数组本身就是对象

2022-02-27 10:41:31 261

SpringBoot网易云音乐项目

模仿网易云音乐官网做的项目,实现了部分界面的视图,跳转,以及登录注册,使用了Shiro安全框架,对部分页面过滤拦截,登录后授权访问

2022-08-06

空空如也

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

TA关注的人

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