自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Redis(三)事务和watch乐观锁基本概念

基于:【狂神说Java】Redis最新超详细版教程通俗易懂目录1 事务2 watch监控1 事务Redis单条命令保证原子性,但是事务是不保证原子性的;redis事务就是一次性、顺序性、排他性的执行一个队列中的一系列命令。redis事务没有隔离性、没有原子性;开启事务;MULTI编写事务命令……命令入队;自动执行事务;EXEC允许在编写事务未执行之前放弃事务DISCARD编译型错误,代码有问题,命令有错,事务中所有的命令都不会被执行;运行时异常,其他语句正常执行,但是出错语句不会执

2020-12-30 21:41:06 175 1

原创 Redis(二)数据类型及其简单操作

基于:【狂神说Java】Redis最新超详细版教程通俗易懂目录1 概念2 key相关操作3 常用value数据类型3.1 String类型3.2 List类型3.3 Set类型3.4 Hash类型3.5 Zset类型4 三种特殊类型4.1 geospatial1 概念redis存储的数据全部是以key-value键值对存在的,所谓的redis数据类型是针对value的类型;2 key相关操作判断是否存在key:EXISTS [key];设置key的过期时间:expire [key] [time

2020-12-30 20:28:28 88

原创 Redis(一)Linux安装Redis并测试

基于:【狂神说Java】Redis最新超详细版教程通俗易懂目录1 Nosql1 Nosql单机mysql -> 缓存+mysql+垂直拆分(读写分离) -> 分库分表+水平拆分+MySQL集群;核心围绕读写转,读是大概率事件,写是小概率事件,读可以加缓存,写要保证数据一致;分库分表;...

2020-12-30 11:36:51 214 3

原创 力扣刷题笔记

目录1 数组1.1 867. 转置矩阵二级目录三级目录1 数组1.1 867. 转置矩阵867. 转置矩阵tips:方阵时候的快速处理。二级目录三级目录

2020-12-30 09:16:48 348

原创 SpringCloud(一)微服务分布式概述

基于:【狂神说Java】SpringCloud最新教程IDEA版目录1 微服务2 技术栈3 常见组合搭配4 SpringCloud架构1 微服务微服务提倡将单一的应用程序划分成一组小的服务,每个服务都运行在其独立的自己的进程内,用轻量级的通信机制来互相沟通;优点:单一职责,每个服务都可以并发开发,独立部署,进程即服务;缺点:服务之间通信成本变高,数据一致性问题;2 技术栈服务开发:SpringBoot、Spring、SpringMVC;服务配置与管理:Archaius、Diamond;

2020-12-29 19:53:51 295

原创 SpringBoot(四)异步、邮件、定时

基于:【狂神说Java】SpringBoot最新教程IDEA版通俗易懂目录1 异步1.1 主程序注解@EnableAsync1.2 使用@Async2 定时2.1 主程序注解@EnableScheduling2.2 使用@Scheduled3 邮件服务3.1 导入依赖3.2 配置3.3 启用类1 异步类似于多线程,主线程把任务交给子线程,然后自己直接不管,给前端较好的体验。1.1 主程序注解@EnableAsync@SpringBootApplication@EnableOpenApi //开启

2020-12-28 17:01:41 278

原创 SpringBoot(三)整合Swagger3框架

基于:【狂神说Java】SpringBoot最新教程IDEA版通俗易懂目录1 前后端分离2 swagger简介3 使用3.1 导入依赖3.2 在启动主类注解@EnableOpenApi3.3 配置Swagger3Config3.4 访问使用4 总结1 前后端分离早些年,后端时代,前端写html、css静态页面交给后端,后端根据模板引擎改数据,跳转逻辑数据渲染,MVC模式;前后端分离:后端控制层、服务层、数据访问层;前端控制层、视图层;交互靠API接口传JSON;2 swagger简介Res

2020-12-28 14:34:48 1393 1

原创 SpringBoot(二)整合安全框架Shiro

基于:【狂神说Java】SpringBoot最新教程IDEA版通俗易懂目录11

2020-12-28 09:55:30 282

原创 SpringBoot(二)Springboot整合mybatis

基于:【狂神说Java】SpringBoot最新教程IDEA版通俗易懂目录1 简介1 简介springboot是一个javaweb的开发框架;约定大于配置;微服务:是一种风格,要求我们在开发一个应用的时候,这个应用必须构建成一系列小服务的组合,服务与服务之间使用通信进行数据传输;...

2020-12-26 17:42:41 422

原创 Vue(二)vue-cli和webpack的使用

基于:【狂神说Java】Vue最新快速上手教程通俗易懂目录1 简介2 vue-cli使用2.1 安装node.js2.2 创建工程2.3 运行项目1 简介vue-cli官方提供的一个脚手架,用于快速生成一个vue的项目模板;2 vue-cli使用2.1 安装node.js官网node.js安装国内node源:npm install cnpm -g安装vue-cli,使用命令:cnpm install vue-cli -g2.2 创建工程随便一个目录创建文件夹:Vue执行:vue

2020-12-24 11:07:48 734 2

原创 Vue(一)基本概念、基本语法、事件绑定

基于:【狂神说Java】Vue最新快速上手教程通俗易懂目录1 简介1 简介Vue是一套用于构建用户界面的渐进式JavaScript框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,方便与第三方库或既有项目整合。作者尤雨溪。respect!网络通信:axios;页面跳转:vue-router状态管理:vuexCSS预处理器:用一门专门的编程语言,进行Web页面样式设计,再通过编译器转化为正常的CSS,例如SASS、LESS。...

2020-12-23 20:00:35 115

原创 SpringMVC(四)JSON

基于:【狂神说Java】SpringMVC最新教程IDEA版通俗易懂目录1 前后端分离2 JSON3 JSON使用3.1 导入maven依赖3.2 编写Controller返回JSON3.3 FastJson3.3.1 导入依赖3.3.2 使用1 前后端分离后端提供接口:数据;前段负责页面展示;二者通过数据接口连接即可。2 JSONJSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。就是一个文本格式。javascript对象:var

2020-12-21 18:13:34 194

原创 SpringMVC(三)Restful方式、转发与重定向

基于:【狂神说Java】SpringMVC最新教程IDEA版通俗易懂目录1 web.xml配置1 web.xml配置

2020-12-21 15:48:59 339

原创 SpringMVC(二)使用注解开发

基于:【狂神说Java】SpringMVC最新教程IDEA版通俗易懂目录1 web.xml配置2 springmvc-servlet配置3 具体Controller类4 jsp5 总结1 web.xml配置<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSche

2020-12-21 11:25:23 165

原创 SpringMVC(一)第一个SpringMVC程序

基于:【狂神说Java】SpringMVC最新教程IDEA版通俗易懂目录1 MVC1 MVCmodel(模型):数据模型,提供要展示的数据,现在一般包括数据Dao和行为Service;view(视图):负责进行模型的展示,一般就是用户交互界面;Controller(控制器):调度model和view,接受请求,委托给模型处理,返回数据,由视图展示;...

2020-12-21 10:24:56 675 1

原创 MySQL数据库(八)连接相关

目录1 设置最大连接数2 查看当前连接列表3 关闭某个连接4 JDBC连接5 mybatis连接池5.1 理解5.2 获取释放连接流程5.2.1 获取连接5.2.2 配置文件5.2.3 配置参考6 总结1 设置最大连接数可以修改/etc/mysql/mysql.conf.d/mysqld.cnf配置文件中max_connections来设置最大连接数;进入MySQL后可以查看最大连接数:show variables like '%max_connections%';+----------------

2020-12-20 16:43:57 226

原创 Junit单元测试之多线程的情况

在做mybatis的多个线程修改内容时候的遇到的问题;Junit单元测试不支持多线程!!验证测试:@Testpublic void multiTheadUpdate() { for(int i=0;i<10000;i++){ int finalI = i; new Thread(()->{ try { Thread.sleep(100); } catch (Interr

2020-12-20 13:24:52 345

原创 JavaScript(二)BOM和DOM

基于:【狂神说Java】JavaScript最新教程通俗易懂目录1 BOM简介2 DOM2.1 获得DOM2.2 更新操作2.3 删除节点2.4 插入节点1 BOM简介浏览器对象模型(Browser Object Model, BOM);window:获得浏览器窗口相关信息;navigator:封装了浏览器相关信息;screen:计算机屏幕相关信息;location当前页面的URL信息;document:代表当前页面;history:记录自己的浏览网页记录;2 DOM2.1 获得D

2020-12-19 20:34:44 66 2

原创 JavaScript(一)函数

基于:【狂神说Java】JavaScript最新教程通俗易懂目录1 基础2 函数基本使用2.1 定义方式12.2 定义方式22.3 调用函数2.4 arguments关键字2.5 rest关键字1 基础JavaScript的基础包括数据类型和顺序、循环、选择语句,非常灵活,可以类比着和java一起学习;建议安装node.js练习学习;2 函数基本使用2.1 定义方式1function abs(x){ return x >=0 ? x : -x;}2.2 定义方式2var a

2020-12-19 17:20:36 74 4

原创 使用MyBatis向MySql数据库批量insert插入100万条数据

目录1 场景2 MySQL数据库user表3 创建实体4 批量插入接口5 Mapper配置SQL语句6 `max_allowed_packet`数据库参数设置7 测试(根据不同的需求编写)1 场景有时候在创建数据库之后,有一些已经存在的数据需要插入到数据库,这就涉及到了数据的大规模批量插入了,如果循环使用insert into table values(a,b,c)插入,速度将会比较慢,应该大部分时间都在事务的提交创建上了,mysql提供了批量插入的功能,可以使用insert into table va

2020-12-18 17:39:58 9285 12

原创 MySQL数据库(七)事务

参考基于:【狂神说Java】MySQL最新教程通俗易懂1 四大特性原子性,一致性,隔离性,持久性;2 mysql事务--手动处理事务,关闭自动提交Set autocommit = 0--设置保存点savepoint p0--标记事务start transaction--执行事务相关insert XXXinsert XXXdelete XXX--提交commit--要是失败就回滚回到保存点,删除保存点rollback to p0release p0...

2020-12-18 10:53:37 385

原创 java异常和错误

目录1 继承关系1 继承关系都继承自java.lang.Throwable,注意public class Throwable extends Object implements Serializable,这是一个实体类。检查性异常:从程序语法角度讲是必须进行处理的异常,如果不处理,程序就不能编译通过;运行时异常:指的是已经编译完成,在程序运行过程中所产生的异常,如空指针、下标越界、类型强转等;错误:错误不是异常,常出现在JVM中,而是脱离程序控制的问题,如栈溢出,JVM一般会选择线程终止;

2020-12-17 19:42:35 94

原创 Spring框架(六)事务

基于:【狂神说Java】Spring5最新完整教程IDEA版通俗易懂目录1 事务2 Spring中的事务管理2.1 声明式事务2.1.1 待添加事务方法2.1.2 引入tx命名空间2.1.3 声明式事务配置2.2 编程式事务2.2.1 配置transactionManager即可2.2.2 transactionManager依赖注入2.2.3 编写事务方法3 总结1 事务一组业务当做一个业务来做,要么全做,要么全不做。原子性:整个一组业务是一组原子操作;一致性:一致性是指事务必须使数据库从一个

2020-12-17 14:45:06 92

原创 Spring框架(五)实战Spring整合Mybatis

基于:【狂神说Java】Spring5最新完整教程IDEA版通俗易懂目录1 Mybatis回顾2 Spring使用Mybatis2.1 spring-dao.xml配置2.1.1 dataSource2.1.2 sqlSessionFactory2.1.3 sqlSession2.2 测试使用2.2.1 接口实现类2.2.2 注册bean2.2.3 测试使用1 Mybatis回顾可以参考:MyBatis(一)第一个MyBatis程序(idea+maven)使用原生mybatis的一般性流程:使用

2020-12-17 09:51:09 523

原创 Spring框架(四)AOP面向切面编程

基于:【狂神说Java】Spring5最新完整教程IDEA版通俗易懂目录1 xml配置2 @Component3 一般规范4 生命周期@Scope要使用注解开发,必须导入Aop的包;1 xml配置<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSch

2020-12-16 14:33:18 194 1

原创 Spring框架(三)Bean的自动装配

基于:【狂神说Java】Spring5最新完整教程IDEA版通俗易懂目录1 autowire1 autowire<bean id="user" class="xyz.cqulwj.pojo.User" autowire="byName">byName寻找容器中id和类中setName方法中Name一致的自动装配进去;byType对象属性类型相同的自动装配(需要类型唯一);...

2020-12-15 10:00:46 379 2

原创 Spring框架(二)DI依赖注入

基于:【狂神说Java】Spring5最新完整教程IDEA版通俗易懂目录1 简介2 例子实体类3 注入3.1 基本数据类型+String3.2 引用类型3.3 数组类型3.4 List列表3.5 Map类型3.6 Set集合3.7 空值3.8 properties类型3.9 运行结果4 p命名空间(property注入)5 c命名空间(constructor注入)1 简介当使用bean创建对象的时候,可以使用构造器注入参数值、set方法注入参数值。还可以使用其他第三方注入。依赖注入(Dependen

2020-12-14 16:21:57 104

原创 Spring框架(一)初始IoC和Spring

基于:【狂神说Java】Spring5最新完整教程IDEA版通俗易懂目录1 简介2 IoC理论3 第一个Spring程序3.1 创建maven项目添加依赖3.2 创建pojo下的实体类3.3 配置beans.xml3.4 测试获取对象3.5 原理4 有参构造4.1 按参数序号4.2 按参数类型匹配4.3 按参数名(常用)5 Spring配置5.1 别名alias5.2 import1 简介Spring是一个轻量级**控制反转(IoC)和面向切面(AOP)**的容器框架。历史:2002年,interfa

2020-12-14 15:20:12 104

原创 CSS3基础入门知识(一)语法和选择器

基于:【狂神说Java】CSS3最新教程快速入门通俗易懂目录1 简介2 语法1 简介CSS(cascading style sheet)层叠样式表,美化HTML的标签。CSS2.0加入了DIV块,提出了HTML和CSS分割的思想;CSS2.1浮动和定位;CSS3圆角、阴影、动画。所以显示需要浏览器兼容。2 语法选择器{ 声明1; 声明2; 声明3;}建议单独开css文件夹,在里面写.css文件,然后在html中引入<link rel="stylesheet" href="css/

2020-12-13 16:26:30 156

原创 HTML5基础入门相关知识

基于【狂神说Java】HTML5完整教学通俗易懂目录1 介绍2 第一个HTML文件3 网页基本标签3.1 标题标签3.2 段落标签3.3 换行标签(单标签)3.4 水平线3.5 特殊符号4 图像标签5 链接(a)标签6 列表标签6.1 有序列表order list6.2 无序列表6.3 自定义列表7 表格标签1 介绍Hyper Text Markup Language(HTML)超文本标记语言;超文本的意思:文字、图片、音频、视频、动画等。W3C(World Wide Web Consortium万

2020-12-12 21:24:07 119

原创 java注解与反射

基于:【狂神说Java】注解和反射目录1 注解1.1 内置注解1.2 元注解1 注解注解是java5开始引入的新基础,注解不是程序本身,但是注解可以被其他程序读取,注释不能。形式上@注解名(value),可以在里面加入参数值;可以附加在package、class、method、field上面,相当于额外添加辅助信息,可以通过反射机制实现对元素的访问;1.1 内置注解@Override:定义在java.lang.Override中,此注释只能修饰方法,表示一个方法声明打算重写父类的方法声明

2020-12-11 22:10:21 202 2

原创 java I/O流(字节流、字符流)

基于白嫖:2020最新版 Java基础-IO框架1 概述流:内存和存储设备之间传输数据的通道;输入流:将存储设备中的内容读入到内存中;输出流:将内存中的内容写入到存储设备中;字节流:以字节为单位,可以读写所有数据;字符流:以字符为单位,只能读写文本数据;节点流:具有实际传输数据的读写功能;过滤流:在节点流的基础之上增强功能;2 继承关系...

2020-12-10 17:35:35 292

原创 MySQL数据库(六)多表查询

这里写目录标题1 问题定义1.1 用户表1.2 货物表1.3 购买记录2 问题2.1 查询每个人购买的总数量2.2 查询每个人花费总金额2.3 查询比张三消费金额高的人3 总结1 问题定义一般把生活中的具体要实现数据库的问题,抽象成实体、属性、关系。实体做成表,属性做成列,关系一般包括一对一、一对多、多对一、多对多。其中多对多是较为常见的,一般将多和多做成两张表,对应关系再做成一张表。相应的对于多表之间查询也变得有趣起来。下面都是以用户、货物、购买记录为例子进行的多表查询的例子。1.1 用户表+--

2020-12-09 16:13:13 825

原创 MyBatis(九)缓存

基于白嫖:【狂神说Java】Mybatis最新完整教程IDEA版通俗易懂目录1 简介2 mybatis缓存3 一级缓存4 二级缓存1 简介每一次查询都需要去数据库取,消耗较大;将数据库部分数据放到内存中暂存,称之为缓存;经常查询并且不经常改变的数据可以建议使用缓存;2 mybatis缓存Mybatis系统中默认定义了两级缓存:一级缓存和二级缓存。默认情况,开启一级缓存。(SQLSession级别,也被称为本地缓存);二级缓存需要手动开启配置,基于namespace级别的缓存;为了提高扩展性

2020-12-08 20:30:50 68

原创 MyBatis(八)动态SQL

基于白嫖:【狂神说Java】Mybatis最新完整教程IDEA版通俗易懂目录1 简介2 if2.1 接口2.2 接口配置2.3 测试方法3 where4 choose-when-otherwise5 set6 foreach1 简介根据不同的条件生产不同的SQL语句。在JDBC中要根据条件不停的对sql字符串进行处理,里面的空格,尾巴的逗号等等,都非常麻烦。以下实验以一个blog为数据库去实现。+-------------+--------------+--------+-------+------

2020-12-08 17:29:41 247

原创 MyBatis(七)一对多和多对一之resultMap

基于白嫖:【狂神说Java】Mybatis最新完整教程IDEA版通俗易懂目录11

2020-12-08 10:46:59 289

原创 MyBatis(六)日志

基于白嫖:【狂神说Java】Mybatis最新完整教程IDEA版通俗易懂目录1 配置日志2 Log4j2.1 配置文件2.2 父项目配置log4j2.3 资源目录下新建log4j.properties1 配置日志在mybati-config.xml中配置日志类型;<!--设置--><settings> <setting name="logImpl" value="STDOUT_LOGGING"/></settings>常见的有标准日志文

2020-12-07 09:40:20 154

原创 MyBatis(五)实体类属性名和数据字段不匹配

基于白嫖:【狂神说Java】Mybatis最新完整教程IDEA版通俗易懂目录1 问题2 解决思路2.1 利用SQL中的AS关键字2.2 resultMap1 问题由于一些原因,实体类的属性名和数据库的列名可能会不一致。例如数据库字段:+---------+-----------------+--------+-------+-----------+----------------+| Field | Type | Null | Key | Default |

2020-12-06 20:43:06 302

原创 MyBatis(四)配置文件解析

基于白嫖:【狂神说Java】Mybatis最新完整教程IDEA版通俗易懂目录1 核心配置文件1.11 核心配置文件mybatis-config.xml里面的相关配置;1.1

2020-12-06 19:32:09 98

原创 MyBatis(三)Map参数和模糊查询

基于白嫖:【狂神说Java】Mybatis最新完整教程IDEA版通俗易懂目录1 通过Map参数传递1.1 新建接口方法1.2 添加接口映射1.3 测试方法2 模糊查询2.1 创建接口2.2 映射2.3 测试方法2.4 通配符1 通过Map参数传递1.1 新建接口方法//插入学生(map法)int addStudentByMap(Map<String,Object> map);1.2 添加接口映射<insert id="addStudentByMap" parameterTy

2020-12-06 15:28:50 375

空空如也

空空如也

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

TA关注的人

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