
Java
文章平均质量分 69
greyKing666
这个作者很懒,什么都没留下…
展开
-
jdk1.7与jdk1.8共存,相互切换
jdk1.7与jdk1.8共存,相互切换转载 2023-01-10 22:59:02 · 451 阅读 · 0 评论 -
SpringDataJPA(3)
有时我们在查询某个实体的时候,给定的条件是不固定的,这时就需要动态构建相应的查询语句,在SpringDataJPA中可以通过JpaSpecificationExecutor接口查询。相比JPQL,其优势是类型安全,更加的面向对象。我们可以简单的理解为,Specification构造的就是查询条件。对于SpringDataJPA中的分页查询,是其内部自动实现的封装过程,返回的是一个SpringDataJPA提供的pageBean对象。...原创 2022-07-25 00:08:47 · 162 阅读 · 0 评论 -
SpringDataJPA(2)
SpringDataJPA是Spring基于ORM框架、JPA规范的基础上封装的一套JPA应用框架,可使开发者用极简的代码即可实现对数据库的访问和操作。它提供了包括增删改查等在内的常用功能,且易于扩展!SpringDataJPA让我们解脱了DAO层的操作,基本上所有CRUD都可以依赖于它来实现,在实际的工作工程中,推荐使用SpringDataJPA+ORM(如hibernate)完成操作,这样在切换不同的ORM框架时提供了极大的方便,同时也使数据库层操作更加简单,方便解耦。......原创 2022-07-24 15:49:09 · 126 阅读 · 0 评论 -
SpringDataJPA(1)
ORM(Object-RelationalMapping)表示对象关系映射。在面向对象的软件开发中,通过ORM,就可以把对象映射到关系型数据库中。只要有一套程序能够做到建立对象与数据库的关联,操作对象就可以直接操作数据库数据,就可以说这套程序实现了ORM对象关系映射简单的说ORM就是建立实体类和数据库表之间的关系,从而达到操作实体类就相当于操作数据库表的目的。...原创 2022-07-24 14:24:28 · 120 阅读 · 0 评论 -
SpringBoot整合RabbitMQ
SpringBoot整合RabbitMQ1.生产者2.消费者3.小结1.生产者1.创建生产者SpringBoot工程引入start,依赖坐标 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> </dep原创 2022-04-28 23:22:53 · 111 阅读 · 0 评论 -
Kubernetes(k8s)
Kubernetes(k8s)1.Kubernetes核心技术1.1 Pod详解1.Kubernetes核心技术1.1 Pod详解Pod是Kubernetes的最重要概念,每一个Pod都有一个特殊的被称为”根容器“的Pause容器。Pause容器对应的镜像属于Kubernetes平台的一部分,除了Pause容器,每个Pod还包含一个或多个紧密相关的用户业务容器。Pod vs 应用:每个Pod都是应用的一个实例,有专用的IPPod vs 容器:一个Pod可以有多个容器,彼此间共享网络和存储资源原创 2022-04-27 16:56:50 · 188 阅读 · 0 评论 -
RabbitMQ完整总结
RabbitMQ完整总结1.MQ 的基本概念1.1 MQ概述1.2 MQ 的优势和劣势1.2.1 优势1.2.2 劣势1.3 常见的 MQ 产品1.4 RabbitMQ 简介1.5 JMS1.6 小结2.RabbitMQ 的安装和配置(Linux)3.RabbitMQ 快速入门3.1 搭建示例工程3.2 编写生产者3.3 编写消费者3.4 小结4.RabbitMQ 的工作模式4.1 Work queues 工作队列模式4.2 Pub/Sub 订阅模式4.2.1 概念4.2.2 代码4.2.3 小结4.3 R原创 2022-04-26 21:35:46 · 1896 阅读 · 0 评论 -
SpringCloud(2)
SpringCloud1. Feign1.1. 简介1.2. 快速入门1.2.1. 导入依赖1.2.2. Feign的客户端1.2.3. 开启Feign功能1.2.4. 启动测试1.3. 负载均衡1.4. Hystrix支持(了解)1.5. 请求压缩(了解)1.6. 日志级别(了解)2. Spring Cloud Gateway网关2.1. 简介2.2. Gateway加入后的架构2.3. 核心概念2.4. 快速入门2.4.1. 新建工程2.4.2. 编写启动类2.4.2. 编写配置2.4.4. 编写路由规原创 2022-04-25 13:56:54 · 368 阅读 · 0 评论 -
SpringCloud(1)
SpringCloud1. 系统架构演变1.1. 集中式架构1.2. 垂直拆分1.3. 分布式服务1.5. 微服务架构1.5. 集中式架构2. 服务调用方式2.1. RPC和HTTP2.2. Http客户端工具2.3. Spring的RestTemplate4. 初识Spring Cloud4.1. 简介4.2. 版本5. 微服务场景模拟5.1. 创建父工程5.2. 服务提供者5.2.1. 创建module5.2.2. 添加依赖5.1.3. 编写配置文件5.1.4. 编写代码5.1.5. 启动并测试5.3.原创 2022-04-25 13:47:24 · 163 阅读 · 0 评论 -
Maven中依赖范围对传递依赖的影响
Maven中依赖范围对传递依赖的影响1.问题描述2.依赖范围对传递依赖的影响3.举例4.单元测试1.问题描述当在写junit测试时发现,代码报出没有找不到类的错误信息:是因为没有junit.jar引起的!为什么会这样呢?我们ssm_dao模块中有junit依赖而ssm_service模块依赖了ssm_dao,难道junit不应该传递过来吗?2.依赖范围对传递依赖的影响是因为依赖会有依赖范围,依赖范围对传递依赖也有影响,例如有A、B、C,A依赖B、B依赖C,C可能是A的传递依赖,如下图:最左边原创 2022-04-24 18:04:39 · 491 阅读 · 0 评论 -
Maven项目管理工具
Maven项目管理工具1.Maven介绍2.Maven的使用3.Maven常用命令4.maven工程运行调试5.总结6.依赖传递6.1 什么是依赖传递6.2 依赖冲突的解决6.2.1 依赖调解原则6.2.2 排除依赖6.2.2 锁定版本7. 定义pom.xml8.分模块构建工程9.maven私服[了解]10. 把第三方jar包放入本地仓库或私服1.Maven介绍2.Maven的使用3.Maven常用命令4.maven工程运行调试5.总结6.依赖传递6.1 什么是依赖传递6.2 依赖冲原创 2022-04-22 23:26:11 · 1269 阅读 · 0 评论 -
SpringBoot完整总结
Spring Boot完整总结1. SpringBoot简介2. SpringBoot快速入门3. SpringBoot原理分析4. SpringBoot的配置文件5. SpringBoot与整合其他技术1. SpringBoot简介2. SpringBoot快速入门3. SpringBoot原理分析4. SpringBoot的配置文件5. SpringBoot与整合其他技术...原创 2022-04-18 23:28:11 · 1258 阅读 · 0 评论 -
Spring MVC完整总结
Spring MVC完整总结1.SpringMVC的基本概念1.1 关于三层架构和MVC1.1.1 三层架构1.1.2 MVC模型1.2 SpringMVC概述1.2.1 SpringMVC是什么1.2.2 SpringMVC在三层架构的位置1.2.3 SpringMVC的优势1.2.4 SpringMVC和Struts2的优略分析2.SpringMVC的入门2.1 SpringMVC的入门案例2.1.1 前期准备2.1.2 拷贝jar包2.1.3 配置核心控制器-一个Servlet2.1.4 创建spri原创 2022-04-18 23:14:34 · 1326 阅读 · 0 评论 -
spring完整总结
spring完整总结1.Spring概述1.1 spring是什么1.2 Spring的发展历程1.3 spring的优势1.4 spring的体系结构2.IoC(控制反转)的概念和作用2.1 什么是程序的耦合2.2 解决程序耦合的思路2.3 工厂模式解耦2.4 控制反转-Inversion Of Control3.使用spring的IOC解决程序耦合3.1 案例的前期准备[会用]3.1.1 准备spring的开发包3.1.2 创建业务层接口和实现类3.1.3 创建持久层接口和实现类3.2 基于原创 2022-04-18 22:46:48 · 456 阅读 · 0 评论 -
Servlet&HTTP(request、response)
Servlet1.概念2.小案例3.概念4.概念5.概念1.概念运行在服务器端的小程序* Servlet就是一个接口,定义了Java类被浏览器访问到(tomcat识别)的规则。* 将来自定义一个类,实现Servlet接口,复写方法。2.小案例创建JavaEE项目定义一个类,实现Servlet接口* public class ServletDemo1 implements Servlet实现接口中的抽象方法配置Servlet在web.xml中配置: <!--配置Servl原创 2022-04-12 00:02:40 · 221 阅读 · 0 评论 -
Tomcat
Tomcat1.Tomcat1.1 下载地址1.2 安装1.3 卸载1.4 启动1.5 关闭1.6 配置1.Tomcat1.1 下载地址http://tomcat.apache.org/1.2 安装解压压缩包即可。注意:安装目录建议不要有中文和空格1.3 卸载删除目录就行了1.4 启动bin/startup.bat ,双击运行该文件即可访问:浏览器输入:http://localhost:8080 回车访问自己http://别人的ip:8080 访问别人可能遇到的问题:黑原创 2022-02-21 22:56:40 · 95 阅读 · 0 评论 -
AJAX相关
AJAX1.概念2.原生js实现方式3.JQuery实现方式3.1 $.ajax()实现3.2 $.get():发送get请求3.3 $.post():发送post请求1.概念概念: ASynchronous JavaScript And XML 异步的JavaScript 和 XML1. 异步和同步:客户端和服务器端相互通信的基础上* 同步-客户端必须等待服务器端的响应。在等待的期间客户端不能做其他操作。* 异步-客户端不需要等待服务器端的响应。在服务器处理请求的过程中,客户端可以进行其他的操原创 2022-02-21 20:22:20 · 90 阅读 · 0 评论 -
JQuery
JQuery1.JQuery基础1.1 概念1.2 快速入门1.3 JQuery对象与js对象区别于转换1.4 JQuery事件绑定&入口函数&样式控制1.5 选择器1.5.1 基本选择器1. 标签选择器(元素选择器)2. id选择器3. 类选择器4. 并集选择器:**代码示例;**1.5.2 层级选择器1. 后代选择器2. 子选择器1.5.3 属性选择器1. 属性名称选择器2. 属性选择器3. 复合属性选择器1.5.4 过滤选择器1. 首元素选择器2. 尾元素选择器3. 非元素选择器4.原创 2022-02-11 15:28:37 · 130 阅读 · 0 评论 -
JDK的安装目录及常用dos命令
常用dos命令原创 2022-01-07 15:44:29 · 234 阅读 · 0 评论 -
JWT(Json·Web·Token)
@[TOC](JWT(Json Web Token))1.简介JWT全称 Json·Web·Token,是一个开放标准(RFC·7519),它定义了一种紧凑的,自包含的方式,用于作为JSON对象在各方之间安全的传输信息。该信息可以被验证和信任,因为它是数字签名的.JWT是目前最流行的跨域身份解决方案。2.使用场景下列场景中使用JWT是很有用的:2.1 Authorization(授权)这是使用JWT的常见场景。一旦用户登录,后续每个请求都将包含JWT,允许用户访问该令牌允许的路由、服务和资源。原创 2021-04-19 20:29:01 · 1027 阅读 · 1 评论 -
基础业务代码
基础业务代码1.拦截器配置-HandlerInterceptor1.1 概念1.2 Filter和Interceptor的区别:1.3 代码实现:2.tk-Mybatis2.1 概念2.2 导包2.3 配置2.4 测试3.MapStruct3.1概念3.2 导包3.3 定义转换器接口4.SPI4.1概念4.2 Java SPI的约定(约定俗成)4.3 实践1.拦截器配置-HandlerInterceptor1.1 概念一般情况下,对来自浏览器的请求的拦截,是利用Filter实现的而在Spring中原创 2021-04-19 15:30:07 · 316 阅读 · 0 评论 -
SpringMVC(2)
SpringMVC(2)0.总体结构1.SpringMVC案例一1.1 Handler方法的形参1.1.1 直接封装(请求参数名和handler方法的形参名一致)1.1.1. 主要是基本类型和对应的包装类1.1.2 Date1.2 文件类型(文件的接收、上传)1.2.1 依赖1.2.2 组件注册1.2.3 构造form表单1.2.4 handler方法接收文件1.3使用pojo封装1.4 json请求参数1.5 Model1.5.11.5.2 Session0.总体结构pom.xml<?x原创 2021-04-03 22:58:25 · 135 阅读 · 0 评论 -
Spring(c)
Spring_transaction(c)1.transaction_template2.transaction_proxy3.transaction_advisor4. transactional5. transactional_javaconfig1.transaction_template2.transaction_proxy3.transaction_advisor4. transactional5. transactional_javaconfig原创 2021-04-01 23:29:57 · 704 阅读 · 0 评论 -
Spring(B)
Spring(B)1 SpringAOP2 AOP编程术语3 AOP编程实战3.1 动态代理3.2 SpringAOP3.2.1配置3.2.1.1 委托类3.2.1.2 通知组件3.2.1.3 代理组件3.2.2 单元测试3.3 AspectJ3.3.1 切入点表达式3.3.1.1 execution(修饰符 返回值 包名、类名、方法名(形参))3.3.1.1.1 修饰符3.3.1.1.2 返回值3.3.1.1.3 包名、类名、方法名3.3.1.1.4 形参3.3.1.2 @annotation(自定义注解原创 2021-03-31 16:00:31 · 360 阅读 · 1 评论 -
AOP(pointcut)
AOP(pointcut)1.结构2.pom.xml3.advice(通知器)4.anno(注解)5.bean6.service(service层组件)7.spring配置8.测试类1.结构2.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/XMLSch原创 2021-03-31 15:04:32 · 612 阅读 · 0 评论 -
题目-使用spring为项目里的所有类的所有方法增加
写几个不同的bean (实现同一个接口),每个bean里有这些接口的不同实现方法。通过spring 使得调用任何一个实现方法之前和之后都增加一些log。(通过PostBeanProcessor实现)举例:比如有几个类Cat、Dog、Tiger,这几个类中分别有miao、wang、wuuu这几个方法,那么从容器中取出组件,调用这几个方法的时候(注意不是容器初始化时),miao、wang、wuuu这几个方法执行之前都会输出hello,执行之后都会输出world。提示:生命周期 动态代理 是调用方法的时候原创 2021-03-30 16:32:45 · 417 阅读 · 0 评论 -
Spring(A)
Spring(A)1.入门案例1.1导包1.入门案例1.1导包spring-corespring-contextspring-beanspring-aopspring-expression只需导入spring-context就行了<dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</a原创 2021-03-30 15:22:43 · 274 阅读 · 1 评论 -
JSON
JSON1.JSON概述2.JSON使用2.1 JS声明对象2.2 对象中包含对象2.3 对象里包含数组或集合2.4 JSON数据格式VS XML数据格式2.5 数据格式比较2.5.1 可读性2.5.2 可扩展性3.Java语言操纵JSON3.1 其他类型数据生成json字符串3.2 Jackson可实现Java对象和JSON字符串互换3.2.1 工具类,可实现java对象和json字符串的相互转换。1.JSON概述JSON(JavaScript Object Notation) 是一种轻量级的数据交原创 2021-03-18 21:55:33 · 200 阅读 · 0 评论 -
Redis图形化客户端(Another Redis Destop Manager)
Redis图形化客户端1.下载地址2.操作与使用1.下载地址https://github.com/qishibo/AnotherRedisDesktopManager/releases2.操作与使用(1)新建连接(2)添加数据原创 2021-03-17 23:41:20 · 1069 阅读 · 0 评论 -
Redis
Redis1.安装(解压即可)2.启动2.1启动Redis服务端2.2启动Redis客户端3.Redis核心配置文件Redis.conf3.1 守护进程(重要)3.2监听端⼝(重要)3.3绑定的主机地址(重要)3.4 RDB 持久化策略(重要)3.5 压缩数据(重要)3.6 Redis连接密码(重要)3.7 AOF 持久化策略配置(重要)3.7.1 日志记录3.7.2 AOF文件的名字3.7.3 AOF三种策略3.8 定时关闭连接3.9 日志记录级别1.安装(解压即可)Windows版本只有Redis-原创 2021-03-16 21:15:48 · 192 阅读 · 0 评论 -
Mybatis框架(04)
Mybatis框架(04)1.Mybatis延迟加载策略1.1 何为延迟加载?1.2 实现需求1.3 使用assocation实现延迟加载1.3.1 账户的持久层DAO接口1.3.2 账户的持久层映射文件1.3.3 用户的持久层接口和映射文件1.3.4 开启Mybatis的延迟加载策略1.3.5 编写测试只查账户信息不查用户信息。1.4 使用Collection实现延迟加载1.4.1 在User实体类中加入List属性1.4.2 编写用户和账户持久层接口的方法1.4.3 编写用户持久层映射配置1.4.4 编原创 2021-03-15 10:22:43 · 114 阅读 · 0 评论 -
Mybatis框架(03)
Mybatis框架(02)1.Mybatis连接池与事务深入1.1Mybatis的连接池技术1.1.1 Mybatis连接池的分类1.1.2 Mybatis中数据源的配置1.1.3 Mybatis中DataSource的存取1.1.4 Mybatis中连接的获取过程分析1.2 Mybatis的事务控制1.2.1 JDBC中事务的回顾1.2.2 Mybatis中事务提交方式1.2.3 Mybatis自动提交事务的设置2.Mybatis的动态SQL语句2.1 <.if>标签2.1.1 持久层Dao接原创 2021-03-15 09:16:56 · 105 阅读 · 0 评论 -
Mybatis框架(02)
Mybatis框架(02)1.基于代理Dao实现CRUD操作1.1根据ID查询1.1.1在持久层接口中添加findById方法2.1.2 在用户的映射配置文件中配置2.1.3 在测试类添加测试1.2保存操作1.2.1 在持久层接口中添加新增方法1.2.2 在用户的映射配置文件中配置1.2.3 添加测试类中的测试方法1.2.4 问题扩展:新增用户id的返回值1.3 用户更新1.3.1 在持久层接口中添加更新方法1.3.2 在用户的映射配置文件中配置1.3.3 加入更新的测试方法1.4 用户删除1.4.1在持久原创 2021-03-13 23:14:18 · 151 阅读 · 0 评论 -
Mybatis框架(01)
Mybatis框架(01)1.框架概述1.1什么是框架1.1.1 什么是框架1.1.2 框架要解决的问题1.1.3软件开发的分层重要性1.1.4分层开发下的常见框架1.1.5 MyBatis框架概述1.2JDBC编程的分析1.2.1jdbc程序的回顾与分析2.Mybatis框架快速入门2.1 Mybatis框架开发的准备2.2搭建Mybatis开发环境2.2.1 创建maven工程2.2.2 添加Mybatis3.4.5的坐标2.2.3 编写User实体类2.2.4编写持久层接口IUserDao2.2.5编原创 2021-03-13 22:05:33 · 173 阅读 · 0 评论 -
创建一个user类,用JDBC(可以使用DBUtils)和Mybatis分别完成需求
创建一个user类,用JDBC(可以使用DBUtils)和Mybatis分别完成需求1.题目2.JDBC(DBUtils)3.Mybatis3.1 结构3.1 结构3.1 结构3.1 结构1.题目创建一个user类,用JDBC(可以使用DBUtils)和Mybatis分别完成以下需求a, 根据名字查询用户b, 查询所有用户c, 根据id删除用户d, 修改用户名字2.JDBC(DBUtils)3.Mybatis3.1 结构3.1 结构3.1 结构3.1 结构...原创 2021-03-12 00:00:46 · 398 阅读 · 0 评论 -
DBUtils框架
DBUtils框架1.DBUtils框架概述2.DbUtils类2.1 提供如关闭连接、装载JDBC驱动程序等工具类,所有方法为静态2.1.1 close(…)2.1.2 closeQuietly(…)2.1.3 commitAndCloseQuietly(Connection conn)2.1.4 loadDriver(java.lang.String driverClassName):3.QueryRunner类3.1 QueryRunner类提供了两个构造方法:3.2 QueryRunner类的主原创 2021-03-11 20:31:28 · 142 阅读 · 0 评论 -
数据库连接池
数据库连接池1. 数据库连接池概述1.1概念:1.2为什么要有连接池呢?1.3 为什么要有连接池呢?1.3.1 应用程序直接获取链接的缺点1.3.2 使用数据库连接池优化程序性能2. 自己实现数据库连接池2.1 包装设计模式2.2 编写连接池需实现javax.sql.DataSource接口。2.3 实现DataSource接口,并实现连接池功能的步骤:3. 开源数据库连接池3.1 DBCP3.1.1 DBCP数据源简介3.1.2 功能3.2 C3P0(数据库连接池技术)3.2.1 步骤:3.3 Druid原创 2021-03-10 22:27:14 · 6202 阅读 · 3 评论 -
JDBC事务的处理
JDBC事务的处理1.准备数据2.API介绍3.开发步骤1.准备数据CREATE TABLE account ( id INT PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(10), balance DOUBLE ); -- 添加数据 INSERT INTO account (NAME, balance) VALUES ('Jack', 1000), ('Rose', 1000);2.API介绍Connection接口中与事务有关的方法说明v原创 2021-03-10 09:14:11 · 308 阅读 · 1 评论 -
测试工具 JUNIT
测试工具 JUNIT作用:用来测试,测试我们的接口功能是不是正常的测试工具 JUNIT1.作用2.在pom.xml中导包3.写测试类1.作用用来测试我们的接口功能是不是正常的2.在pom.xml中导包<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version><原创 2021-03-09 23:47:18 · 237 阅读 · 0 评论 -
使用JDBC进行批处理
使用JDBC进行批处理1.业务场景2.业务场景3.业务场景1.业务场景2.业务场景3.业务场景原创 2021-03-09 21:11:32 · 1915 阅读 · 0 评论