自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 解决 Maven 本地仓库有jar包,但是不读取,因为这个包是私服

解决 Maven 本地仓库有jar包,但是不读取,因为这个包是私服的。步骤介绍解决方案命令解决方案步骤介绍问题描述:发现问题:maven项目,且配置了公司内网搭建的私服地址一旦离开私服所在的公司网络,install项目的时候就会失败,问题是会连接私服读取jar,即使本地maven仓库已经包含了该jar解决方案仔细查看maven clean install的日志,找出那些明明本地有jar包却还要去读取私服的jar包,然后逐个去这些jar包在本地maven仓库的目录中删除 _remote.

2022-02-28 09:55:45 5781

原创 double类型数据加减操作精度丢失问题

double类型数据加减操作精度丢失问题精度丢失新的改变解决方法精度丢失今天在项目中用到double类型数据加减运算时,遇到了一个奇怪的问题,比如1+20.2+300.03,理论上结果应该是321.23,其实结果并不是这样。public double add() { double number1 = 1; double number2 = 20.2; double number3 = 300.03; double result = num

2021-12-02 17:35:11 1697

原创 AtomicReference与AtomicStampedReference

AtomicReference与AtomicStampedReference以下模拟一个情景,一家商铺要做一个活动,对那些账户余额小于10的用户,充值20元礼金,促进消费。使用AtomicReference来实现这个逻辑的demo:import java.util.concurrent.TimeUnit;import java.util.concurrent.atomic.AtomicReference;public class AtomicReferenceTest { //设置一个

2021-09-10 17:07:52 158

原创 SQL中sum()和count()的区别

在sql语句中我们经常用到统计数据,sum()用于求和,count()用于行数的统计。sum()列值为空时不计算,count()为空时认为没有这一行。sum()为空时返回结果为nullSELECT COUNT(id) FROM dgztc.user where id="";count()为空时返回结果为0SELECT COUNT(id) FROM dgztc.user where id="";所有防止使用sum()时为null,使用ifnull进行判断处理SELECT IFNULL(sum

2021-05-25 19:47:07 1868

原创 Java8 list to Map (key 重复 value合并到Collection)

Java8 list to Map (key 重复 value合并到Collection)[想要保证顺序](https://blog.csdn.net/qq_43599835/article/details/90339813):方案: Map<String, List<GeneralVO>> groupMap2 = generalVOS.stream().collect(Collectors.groupingBy(GeneralV

2021-05-06 16:37:45 1805

原创 oracle、mysql等多种数据源切换

超简单多数据源集成!MybatisPlus集成多数据源(oracle&mysql)依赖所需依赖:com.baomidou.dynamic-datasource-spring-boot-starter这是mybatisPlus官房提供一个多数据源的配置方案;<dependency> <groupId>com.baomidou</groupId> <artifactId>dynamic-datasource-spring-boot-st

2021-04-25 20:18:21 882

原创 list转map,key相同,值要逗号拼接的集合

List集合转Map,用到的是Stream中Collectors的toMap方法:Collectors.toMap具体用法实例如下:person:private String id; private String name;//声明一个List集合List<Person> list = new ArrayList(); list.add(new Person("1001", "小A")); list.add(new Person("1

2021-04-20 17:22:23 1255 1

原创 分页

当前页2 private int pageNum;3 每页的数量4 private int pageSize;5 当前页的数量6 private int size;7 //由于startRow和endRow不常用,这里说个具体的用法8 //可以在页面中"显示startRow到endRow 共size条数据"910 当前页面第一个元素在数据库中的行号11 private int startRow;12 当前页面最后一个元素在数据库中的行号13 private int endRow;1

2021-02-19 19:35:48 97

原创 Maven删除lastupdatedjar

Maven删除未下载完的jar脚本for /r %i in (*.lastUpdated) do del %i

2020-10-23 16:07:36 134

原创 为什么Netty使用NIO而不是AIO?

1. 前言AIO是异步非阻塞的,NIO是同步非阻塞的。理论上讲,AIO的吞吐量肯定比NIO的要大。两种IO的概念如下:1,NIO模型: 同步非阻塞。服务器实现模式为一个请求一个线程,但客户端发送的连接请求都会注册到多路复用器上,多路复用器轮询到连接有I/O请求时才启动一个线程进行处理。2,AIO模型: 异步非阻塞。服务器实现模式为一个有效请求一个线程,客户端的I/O请求都是由OS先完成了再通知服务器应用去启动线程进行处理。注:AIO又称为NIO2.0,在JDK7才开始支持。2. 为什么Netty使用

2020-10-12 21:08:37 1615 2

原创 MyBatis的一二级缓存原理

MyBatis的一二级缓存原理Mybatis的一级缓存:MyBatis的一级缓存指的是在一个Session域内,session关闭前执行的查询会根据SQL为key被缓存(跟mysql缓存一样,修改任何参数的值都会导致缓存失效),用来保存用户对数据库的操作信息(sql)和数据库返回的数据,如果下一次用户再执行相同的请求,那么直接从内存中读数数据而不是从数据库读取。Mybatis的一级缓存的作用域是在同一个SqlSession中,而且一级缓存在spring中是没有作用的;‘单独使用MyBatis而不继承

2020-10-03 13:28:33 159

原创 为什么数据库不建议用外键约束

为什么数据库不建议用外键约束其实这个话题是老生常谈,很多人在工作中确实也不会使用外键。包括在阿里的JAVA规范中也有下面这一条:【强制】不得使用外键与级联,一切外键概念必须在应用层解决。但是呢,询问他们原因,大多是这么回答的:每次做DELETE 或者UPDATE都必须考虑外键约束,会导致开发的时候很痛苦,测试数据极为不方便。坦白说,这么说也是对的。但是呢,不够全面,所以开一文来详细说明。正文首先我们明确一点,外键约束是一种约束,这个约束的存在,会保证表间数据的关系“始终完整”。因此,外键约

2020-07-29 19:31:20 1857

原创 ssm整合

SSM整合1. web工程搭建初始化1.1创建webapp工程[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QguhZdIr-1595636771137)(.\img\image-20200722174349545.png)]1.2 编写工程信息[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MwtVCIO0-1595636771151)(.\img\image-20200722174544315.png)]1.3POM文件 &lt

2020-07-25 08:27:06 142

原创 SpringMVC进阶

SpringMVC进阶一,异步调用1,接收异步请求参数[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-W067j28J-1595503697081)(C:\Users\HUANGHAI\AppData\Roaming\Typora\typora-user-images\1595331917074.png)]名称:@RequestBody类型:形参注解位置:处理器类中的方法形参前方作用:将异步提交数据组织成标准请求参数格式,并赋值给形参@R

2020-07-23 19:29:28 123

原创 SpringMVC基础

SpringMVC基础一,入门案例1,Springmvc概述和用户交互的组件(获取用户传递参数,响应数据给用户)三层架构表现层:负责数据展示业务层:负责业务处理数据层:负责数据操作[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bJ5jalFW-1595503482967)(E:\每日讲课笔记\Spring\springMVCmd笔记\img\1595122243122.png)]MVC(Model View Co...

2020-07-23 19:27:48 203

原创 Spring事务

Spring事务一,事务管理1,事务基础概念回顾⚫ 事务指数据库中多个操作合并在一起形成的操作序列事务的作用当数据库操作序列中个别操作失败时,提供一种方式使数据库状态恢复到正常状态**(A)**,保障数据库即使在异常状态下仍能保持数据一致性(C)(要么操作前状态,要么操作后状态)。当出现并发访问数据库时,在多个访问间进行相互隔离,防止并发访问操作结果互相干扰**(I)**。⚫ 事务特征(ACID)◆ 原子性(Atomicity)指事务是一个不可分割的整体,其中的操作要么全执行或

2020-07-18 18:58:15 97

原创 SpringAOP

AOP一,AOP概念及作用1,概念作用[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SDFvsXFd-1595069781332)(E:\每日讲课笔记\Spring\img\1594862540226.png)][外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-90WZbO4P-1595069781334)(E:\每日讲课笔记\Spring\img\1594862623416.png)]AOP概念(不修改源代码进行功能增强)

2020-07-18 18:57:27 177

原创 Spring合集

Spring一,spring简介1,框架的概念软件工程框架:经过验证的,具有一定功能的,半成品软件框架的作用:提高开发效率,提供编写规范,增强可重用性,解耦底层实现原理,方便程序测试,方便集成各种优秀框架。2, spring概念与体系结构Spring是分层的JavaSE/EE应用 full-stack(一站式)轻量级开源框架。体系结构:两大主要核心AOP:面向切面编程,不修改源代码的情况下进行功能增强IOC:控制反转,方便解耦,简化开发(之前的是自己new对象,现在创建对象,对象与

2020-07-18 18:56:00 343

原创 Spring_IoC注解

Spring注解开发一,注解驱动的意义1,注解开发的作用与弊端⚫ 为了达成注解驱动的目的,可能会将原先很简单的书写,变的更加复杂⚫ XML中配置第三方开发的资源是很方便的,但使用注解驱动无法在第三方开发的资源中进行编辑,因此会增大开发工作量二,常用注解1,bean定义常用注解(定义,作用范围,生命周期)启动注解功能⚫先启动注解扫描,加载类中配置的注解项<context:component-scan base-package="packageName"/><!--

2020-07-18 18:54:31 299 1

原创 Maven基础

Maven基础一,Maven简介1,Maven的概念与作用传统项目管理状态分析jar包不统一,jar包不兼容工程升级维护过程操作繁琐Maven是什么Maven的本质是一个项目管理工具,将项目开发和管理过程抽象成一个项目对象模型(POM)POM(项目对象模型)[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vf3wWwe2-1593826750512)(E:\每日讲课笔记\WEB_new\16-Maven基础(双元)\day01\img\15936981

2020-07-04 09:39:24 124

原创 Redis数据库

Redis数据库一,Redis入门1,NoSQL概念cpu读取磁盘数据很慢,大部分数据放(mysql)cpu读取内存数据更快,少部分热点数据放(内存)问题现象海量用户高并发罪魁祸首——关系型数据库NoSQL:即 Not-Only SQL( 泛指非关系型的数据库),作为关系型数据库的补充。 虽然是数据库,但没有表结构(对数据没有硬性结构规定)作用:应对基于海量用户和海量数据前提下的数据处理问题。特征:⚫ 可扩容,可伸缩⚫ 大数据量下高性能⚫ 灵活的数据模型

2020-07-04 09:17:34 138

原创 Vue和综合案例

Vue和综合案例一,Vue高级使用1,自定义组件学完了 Element 组件后,我们会发现组件其实就是自定义的标签。例如 就是对的封装。本质上,组件是带有一个名字且可复用的 Vue 实例,我们完全可以自己定义。定义格式:Vue.component(组件名称,{ props:组件的属性, data:组件的数据函数, template:组件解析的标签模板})代码[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-j2Em2xX8-

2020-07-04 09:05:15 226

原创 Vue和Element基础

Vue和Element基础回顾:jquery变量选择器:$("#div :eq("+index+")")一,Vue快速入门1,Vue的介绍(面向数据编程)Vue是一套构建用户界面的渐进式前端框架。(面向数据编程,更多的是操作数据,而jquery是操作dom,这就是两者的区别)只关注视图层,并且非常容易学习,还可以很方便的与其它库或已有项目整合。通过尽可能简单的 API 来实现响应数据的绑定和组合的视图组件。特点易用:在有 HTML CSS JavaScript 的

2020-07-04 09:04:06 371

原创 Ajax-课堂笔记

Ajax-课堂笔记jQuery是简化了js,主要是简化了dom操作找它(选择器)搞它(dom操作方法)选择器基本选择器$("div")$("#div")$(".cls")层级选择器$("div span"):使用空格连接的选择器,表示找后代$("div>span"):使用>连接的选择器,表示找子元素属性选择器$("a[class]"):含有class属性的a元素$("a[class='btn']"):class属性值为btn的a元素$("

2020-06-28 09:29:39 207

原创 jQuery

jQuery-课堂笔记ECMAScript:基本语法BOM:操作浏览器的window弹窗:alert()普通弹窗confirm()确认弹窗prompt()输入弹窗window定时器执行一次的let timer = setTimeout(函数对象, 延迟毫秒值)clearTimeout(timer)执行多次的let timer = setInterval(函数对象,间隔毫秒值)clearInterval(timer)location:网址跳转 loc

2020-06-28 09:25:38 252

原创 js高级-课堂笔记

js高级-课堂笔记变量定义:let常量定义:const数据类型:boolean:布尔类型number:数字类型string:字符串类型,单引号和双引号都可定义object:对象类型undefined:未定义类型运算符:和Java的非常相似,不同的有:-,*,/:如果有字符串,js会尝试转换成数字再运算如果转换不成功,结果是NaN如果除以0,结果是Infinity==:比较值。只要值相等,结果就是true===:比较值和类型。只有值和类型都一样,结果才是

2020-06-22 19:41:08 219

原创 js基础-课堂笔记

JavaScript-课堂笔记表单【重点】<form name="名称" action="提交路径" method="提交方式get/post"> <!-- 任何表单项的数据,如果想要提交,就必须有name属性 --> 文本框:<input type="text" name="username" value="默认值"> 密码框:<input type="password" name="password" value="默认值"&

2020-06-22 19:40:40 402

原创 MyBatis高级

MyBatis高级一,MyBatis注解开发1,常用注解介绍我们除了可以使用映射配置文件来操作以外,还可以使用注解形式来操作。常用注解@Select(“查询的 SQL 语句”):执行查询操作注解@Insert(“新增的 SQL 语句”):执行新增操作注解@Update(“修改的 SQL 语句”):执行修改操作注解@Delete(“删除的 SQL 语句”):执行删除操作注解2,注解实现查询操作创建接口和查询方法,在方法上加上对应注解(就不需要映射文件了)在核心配置

2020-06-20 18:39:08 125

原创 Mybatis进阶

Mybatis进阶一,接口代理方式实现Dao层1,实现规则介绍传统方式实现 Dao 层,我们既要写接口,还要写实现类。而 MyBatis 框架可以帮助我们省略编写 Dao 层接 口实现类的步骤。程序员只需要编写接口,由 MyBatis 框架根据接口的定义来创建该接口的动态代理对象。实现规则映射配置文件中的名称空间(namespace)必须和 Dao 层接口的全类名相同。eg:<mapper namespace="com.itheima.mapper.StudentMap

2020-06-20 18:38:39 162

原创 jdbc高级,mybatis初级

今日内容自定义数据库连接池mybatis自定义数据库连接池实现DataSource接口(这是JDBC定义的规范)用什么集合来存储链接(Connection),List什么时候创建链接存放到datasources集合里面如何从自定义连接池中获取链接,getConnection关闭链接不是将链接归还到连接池,而是直接关闭装饰者模式作用:在不改变原有类的情况下增强原有类的功能原有类:ALoggingA:装饰者类‘KTV: 唱歌HeimaKTV: 实现了KTV的基础功能,

2020-06-16 21:43:33 91

原创 JDBC-数据库连接池

数据库连接池数据库连接是一种关键的、有限的、昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出作用: 避免重复创建链接, 提升程序的执行效率C3P0数据库链接池使用步骤:导包c3p0-0.9.5.2.jarmchange-commons-java-0.2.12.jar配置信息(c3p0-config.xml)<c3p0-config> <!-- 使用默认的配置读取连接池对象 --> <default-config>

2020-06-15 13:11:09 178

原创 jdbc

上午JDBC作用:通过java操作数据库解耦:JDBC规范(接口)(DB2,sqlserver,Oracle,mysql,maridb)JDBC HelloWorld导包注册驱动建立连接获取语句执行对象获取ResultSet解析结果关闭资源协议什么情况会触发类加载new使用静态方法加载子类的时候父类被加载DriverManager(驱动管理器,Driver驱动,Manager管理者)加载驱动作用:告诉JDBC真正的JDBC规范实现类是谁//告诉JD

2020-06-13 23:38:33 164

空空如也

空空如也

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

TA关注的人

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