自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(770)
  • 论坛 (1)
  • 收藏
  • 关注

原创 获取utc时间

1.Calendar calendar = Calendar.getInstance();calendar.setTimeZone(TimeZone.getTimeZone(“UTC”));System.out.println(“UTC时间—》”+calendar.getTime().getTime());calendar. getTime获取的还是cst的时间

2020-10-14 14:56:49 58

原创 堆栈的一些总结

1.java包装类型保存在堆中

2020-08-31 14:41:03 58

原创 多线程学习

1.interrupted会将终止标志变为false,isinterrupted不会

2020-08-21 14:21:41 42

原创 oracle使用总结

1.`A`标识符无效,表示此字段在表中不存在表视图不存在代表此表不存在2. select *from A where name like ’%s_%’escape’s’escape表示的s 后面的_号不能当做特殊字符处理, 就是查找普通的_号sql中一般情况_号代表一个字符3. Upper(’a’) 转化为大些Lower(’A’)转化为小写...

2020-07-15 17:53:55 77

原创 自定义注解简单使用

1.@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.FIELD)public @interface FieldName { String value() default "wang";}public class User { @FieldName private String name; private int age;}public static void main(Stri.

2020-06-14 21:52:27 94

转载 Java自定义注解

前言随着springboot的流行,以前基于XML的spring配置用的越来越少,JavaConfig形式使用的越来越多,类似于:复制代码@Configurationpublic class AppConfig { @Bean(name="helloBean") public HelloWorld helloWorld() { return new HelloWorldImpl(); } }可以看出更多的是基于注解(Annotation)实现

2020-06-14 18:02:12 84

转载 java – 什么是集合的视图?

在使用Guava系列并阅读其文档时,我一直在阅读术语视图.我已经寻找一个解释在这个背景下是什么意见,以及它是否在番石榴以外使用的术语.这是经常使用here.这个来自Guava的type有它的名字.我的猜测是,集合的视图是具有相同数据但结构不同的另一集合;例如,当我从java.util.HashSet中添加条目到java.util.LinkedHashSet时,后者将是前者的视图.那是对的吗?有人可以把我连接到接受的视图定义的链接,如果有一个?谢谢.最佳答案另一个对象的视图根本不包含自

2020-05-31 21:23:45 101

转载 Maven更换镜像,更换中央仓库镜像,阿里云中央仓库镜像

在此之前,如果没有通过构建Maven项目下载过相关jar包的,可以参考我这篇博客——Maven配置与下载jar包有时我们通过Maven去下载相关的依赖包时,会发现下载的速度非常慢,简直让人抓狂,而有时又下载不了,没响应。明明网络很好,为什么会这么慢呢,原因是Maven默认连接的远程仓库是国外的。如何提升下载速度,只要把Maven默认的镜像改换成国内的就行了,如阿里云的中央仓库镜像。具体步骤如下:1)找到Maven安装目录中的setting.xml, 用Eclipse打开。2)找到mirr

2020-05-29 22:02:34 354

转载 java并发编程:Executor、Executors、ExecutorService

Executors在Java 5之后,并发编程引入了一堆新的启动、调度和管理线程的API。Executor框架便是Java 5中引入的,其内部使用了线程池机制,它在java.util.cocurrent 包下,通过该框架来控制线程的启动、执行和关闭,可以简化并发编程的操作。因此,在Java 5之后,通过Executor来启动线程比使用Thread的start方法更好,除了更易管理,效率更好(用线程池实现,节约开销)外,还有关键的一点:有助于避免this逃逸问题——如果我们在构造器中启动一个线程,因...

2020-05-24 11:05:42 101

转载 浅谈Java中的hashcode方法

 哈希表这个数据结构想必大多数人都不陌生,而且在很多地方都会利用到hash表来提高查找效率。在Java的Object类中有一个方法: 1 publicnativeinthashCode();   根据这个方法的声明可知,该方法返回一个int类型的数值,并且是本地方法,因此在Object类中并没有给出具体的实现。  为何Object类需要这样一个...

2020-05-08 09:35:55 71

原创 git常用命令总结

git branch -a 查看分支git checkout 分支名 切换分支git log 查看提交记录git提交代码流程git pullgit statusgit add *git commit -m “aa”git statusgit pullgit push origin HEAD:refs/for/aaa_400git diff 文件路径 ...

2020-05-07 16:56:01 71

转载 Mybatis调用MySQL存储过程

1.存储过程的简介我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它。一个存储过程是一个可编程的函数,它在数据库中创建并保存。它可以有SQL语句和一些特殊的控制结构组成。当希望在不同的应用程序...

2020-05-07 16:52:37 109

原创 idea常用快捷键

main函数输入psvm在方法体内部有for循环,在IntellJ中是输入foriSystem.out.println();在IntellJ中是输入soutctrl+alt+t 在idea中添加try/catch的快捷键Alt+Enter可以补全实现类中实现的接口ctrl+alt+L格式化代码快捷键ctrl+x 删除一行CTRL + R 替换文本Ctr...

2020-05-07 15:53:18 96

转载 MySQL常用函数介绍

作者:MySQL技术本文为作者原创,转载请注明出处:https://www.cnblogs.com/kunjian/p/11737651.html前言:MySQL数据库中提供了很丰富的函数,比如我们常用的聚合函数,日期及字符串处理函数等。SELECT语句及其条件表达式都可以使用这些函数,函数可以帮助用户更加方便的处理表中的数据,使MySQL数据库的功能更加强大。本篇文章主要为大家介绍几类...

2020-05-07 15:45:38 75

转载 Redis技巧:有序集合(Sorted Set)的使用

有序集合(Sorted Set)是Redis一个很重要的数据结构,它用来保存需要排序的数据。例如排行榜,一个班的语文成绩,一个公司的员工工资,一个论坛的帖子等。有序集合中,每个元素都带有score(权重),以此来对元素进行排序。它有三个元素:key、member和score。以语文成绩为例,key是考试名称(期中考试、期末考试等),member是学生名字,score是成绩。有序集合有两大基本用...

2020-05-06 18:12:46 117

转载 String,StringBuffer,StringBuillder的底层结构

一:StringBuffer的底层(1)线程安全的字符串操作类(2)通过synchronized关键字声明同步方法,保证多线程环境下数据安全 public synchronized StringBuffer append(String str) { super.append(str); return this; }(3)底层存储数据的Ch...

2020-05-06 16:54:15 124

转载 Java线程面试题 Top 50 (转载)

java线程面试题 Top 50  原文链接:http://www.importnew.com/12773.html  本文由ImportNew-李 广翻译自javarevisited。欢迎加入Java小组。转载请参见文章末尾的要求。  不管你是新程序员还是老手,你一定在面试中遇到过有关线程的问题。Java语言一个重要的特点就是内置了对并发的支持,让J...

2020-05-06 11:30:57 95

转载 使用RESTful风格开发Java Web

什么是RESTful风格?REST是REpresentational State Transfer的缩写(一般中文翻译为表述性状态转移),REST 是一种体系结构,而 HTTP 是一种包含了 REST 架构属性的协议,为了便于理解,我们把它的首字母拆分成不同的几个部分:表述性(REpresentational): REST 资源实际上可以用各种形式来进行表述,包括 XML、JSON 甚至 ...

2020-04-30 11:47:12 79

转载 Java线程面试题 Top 50 (转载)

原文链接:http://www.importnew.com/12773.html本文由ImportNew-李 广翻译自javarevisited。欢迎加入Java小组。转载请参见文章末尾的要求。  不管你是新程序员还是老手,你一定在面试中遇到过有关线程的问题。Java语言一个重要的特点就是内置了对并发的支持,让Java大受企业和程序员的欢迎。大多数待遇丰厚的Java开发职位都...

2020-04-29 17:27:16 53

转载 Java线程安全的集合详解

一、早期线程安全的集合我们先从早期的线程安全的集合说起,它们是Vector和HashTable1.VectorVector和ArrayList类似,是长度可变的数组,与ArrayList不同的是,Vector是线程安全的,它给几乎所有的public方法都加上了synchronized关键字。由于加锁导致性能降低,在不需要并发访问同一对象时,这种强制性的同步机制就显得多余,所以现在Vecto...

2020-04-29 17:24:34 88

转载 ThreadPoolExecutor:线程池不允许使用Executors创建

合理利用线程池能够带来三个好处第一:降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。第二:提高响应速度。当任务到达时,任务可以不需要的等到线程创建就能立即执行。第三:提高线程的可管理性。线程是稀缺资源,如果无限制的创建,不仅会消耗系统资源,还会降低系统的稳定性,使用线程池可以进行统一的分配,调优和监控。但是要做到合理的利用线程池,必须对其原理了如指掌线程池的主要工作流程...

2020-04-29 16:38:50 118

转载 Java 线程池原理和队列详解

转载请标明出处:http://blog.csdn.net/xx326664162/article/details/51701508文章出自:薛瑄的博客你也可以查看我的其他同类文章,也会让你有一定的收货!线程池的框架图:一、ThreadPoolExecutor线程池实现类ThreadPoolExecutor是线程池的核心类。首先看一下如何创建一个ThreadPoolExecut...

2020-04-28 19:56:00 79

转载 MQ - 消息队列中点对点模型与发布/订阅模式的区别

背景知识JMS一个在 Java标准化组织(JCP)内开发的标准(代号JSR 914)。2001年6月25日,Java消息服务发布JMS 1.0.2b,2002年3月18日Java消息服务发布 1.1.Java消息服务(Java Message Service,JMS)应用程序接口是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异...

2020-04-28 19:16:09 175

转载 Spring MVC/Boot 统一异常处理最佳实践

前言在Web开发中, 我们经常会需要处理各种异常, 这是一件棘手的事情, 对于很多人来说, 可能对异常处理有以下几个问题:什么时候需要捕获(try-catch)异常, 什么时候需要抛出(throws)异常到上层. 在dao层捕获还是在service捕获, 还是在controller层捕获. 抛出异常后要怎么处理. 怎么返回给页面错误信息.异常处理反例既然谈到异...

2020-04-28 16:21:53 58

转载 mybatis的缓存机制(一级缓存二级缓存和刷新缓存)和mybatis整合ehcache

1查询缓存1.1什么是查询缓存mybatis提供查询缓存,用于减轻数据压力,提高数据库性能。mybaits提供一级缓存,和二级缓存。一级缓存是SqlSession级别的缓存。在操作数据库时需要构造 sqlSession对象,在对象中有一个(内存区域)数据结构(HashMap)用于存储缓存数据。不同的sqlSession之间的缓存数据区域(HashMap)是互...

2020-04-28 10:40:28 77

转载 MyBatis中的一级缓存和二级缓存介绍

先说缓存,合理使用缓存是优化中最常见的,将从数据库中查询出来的数据放入缓存中,下次使用时不必从数据库查询,而是直接从缓存中读取,避免频繁操作数据库,减轻数据库的压力,同时提高系统性能。一级缓存一级缓存是SqlSession级别的缓存。在操作数据库时需要构造sqlSession对象,在对象中有一个数据结构用于存储缓存数据。不同的sqlSession之间的缓存数据区域是互相不影响的。也就是他只能...

2020-04-28 10:38:43 59

原创 spring事务失效的几种情况

1.在Controller层方法级别加事务 一般都是加在service方法里2.在同一个类中其他方法中 调用(默认是失效的,当然自己通过代理的方式调也可以)3.除public权限之外的其他方法;4.spring的事务默认是对RuntimeException进行回滚,而不继承RuntimeException的不回滚; checked异常...

2020-04-27 16:55:09 150

转载 MyBatis中#{}和${}的区别

MyBatis 中 #{} 和 ${} 的区别1、在MyBatis 的映射配置文件中,动态传递参数有两种方式:(1)#{} 占位符(2)${} 拼接符2、#{} 和 ${} 的区别(1)1)#{} 为参数占位符 ?,即sql 预编译2)${} 为字符串替换,即 sql 拼接...

2020-04-27 16:35:12 127

转载 详解Redis中两种持久化机制RDB和AOF(面试常问,工作常用)

redis是一个内存数据库,数据保存在内存中,但是我们都知道内存的数据变化是很快的,也容易发生丢失。幸好Redis还为我们提供了持久化的机制,分别是RDB(Redis DataBase)和AOF(Append Only File)。在这里假设你已经了解了redis的基础语法,某字母网站都有很好的教程,可以去看。基本使用的文章就不写了,都是一些常用的命令。下面针对这两种方式来介绍一下。由浅入...

2020-04-27 15:58:29 110

转载 redis源码学习持久化

作为web开发的一员,相信大家的面试经历里少不了会遇到这个问题:redis是怎么做持久化的?不急着给出答案,先停下来思考一下,然后再看看下面的介绍。希望看了这边文章后,你能够回答这个问题。为什么需要持久化?由于Redis是一种内存型数据库,即服务器在运行时,系统为其分配了一部分内存存储数据,一旦服务器挂了,或者突然宕机了,那么数据库里面的数据将会丢失,为了使服务器即使突然关机也能...

2020-04-27 15:53:52 46

转载 关于protected权限的子类访问方式

声明为protected权限的成员变量和成员方法,可以被同一包中的所有类和不同包中的子类访问。但是,在实际使用中,不同包中的子类要访问父类中protected权限的成员,却不是那么随意的调用。看几个例子:首先在ch13Test包中定义父类Animal,包含一个protected权限的成员变量 i和成员方法eat():package ch13Test;public class A...

2020-04-24 15:57:42 107

转载 drop,delete与truncate的区别

drop直接删掉表;truncate删除的是表中的数据,再插入数据时自增长的数据id又重新从1开始;delete删除表中数据,可以在后面添加where字句。(1)DELETE语句执行删除操作的过程是每次从表中删除一行,并且同时将该行的删除操作作为事务记录在日志中保存以便进行进行回滚操作。TRUNCATE TABLE 则一次性地从表中删除所有的数据并不把单独的删除操作记录记入日志保存,删...

2020-04-23 09:58:10 81

转载 数据库隔离级别

数据库隔离级别数据库事务的隔离级别有4个,由低到高依次为Read uncommitted、Read committed、Repeatable read、Serializable,这四个级别可以逐个解决脏读、不可重复读、幻读这几类问题。√: 可能出现 ×: 不会出现脏读 不可重复读 幻读Read uncommitted √ √ √Read committed × √ √Repeatab...

2020-04-23 09:16:43 53

转载 线程的锁详解

Java 中每一个对象都有一个锁,当线程访问synchronized 的方法和代码块的时候,会获得这个锁,也可以理解为为这个对象加锁,这个锁在同一时间有且只能被一个线程访问。如果一个线程访问对象锁的时候,锁正在被其他线程访问,那么这个线程就需要等待占用锁的那个线程释放对象锁,陷入阻塞状态。当执行完synchronized方法或者代码块的时候,线程就会释放对象锁。当线程通过 sync...

2020-04-22 17:56:49 101

转载 wait() 与 notify/notifyAll()

wait() 与 notify/notifyAll() 是Object类的方法1. wait() 与notify/notifyAll方法必须在同步代码块中使用在执行以上方法时,要先获得锁。那么怎么获得锁呢?使用synchronized关键字获得锁。因此,wait() 与 notify/notifyAll() 经常与synchronized搭配使用,即在synchronize...

2020-04-22 17:42:30 43

原创 Linux查找日志常用技巧

1.linux下最强大的搜索命令为”find“。它的格式为”find <指定目录> <指定条件> <指定动作>“;比如使用find命令搜索在根目录下的所有interfaces文件所在位置,命令格式为”find / -name 'interfaces'“2.tail -f catalina.out查看实时日志3.vi 日志名 进入编辑模式 ...

2020-04-22 16:42:44 71

转载 SpringMVC执行流程及工作原理

图解SpringMVC执行流程:SpringMVC执行流程SpringMVC执行流程:1.用户发送请求至前端控制器DispatcherServlet2.DispatcherServlet收到请求调用处理器映射器HandlerMapping。3.处理器映射器根据请求url找到具体的处理器,生成处理器执行链HandlerExecutionChain(包括处理器对象和处理器拦截器)一并...

2020-04-22 10:10:18 76

转载 Spring

TOC]前言 一、基础概念 1. JavaBean 2. Bean 3. 传统Javabean与Spring中的bean的区别 4. POJO 二、Spring核心技术 1. IOC(控制反转) 1.1 什么是IOC 1.2 IoC能做什么 1.3 IoC和DI 1.4 IOC底层原理 (降低类之间的耦合度) 1.5 Spring中怎么用 ...

2020-04-21 12:45:23 55

转载 spring-aop原理讲解 JDK动态代理和CGLIB动态代理

Spring的两大特性是IOC和AOPIOC负责将对象动态的注入到容器,从而达到一种需要谁就注入谁,什么时候需要就什么时候注入的效果。理解spring的ioc也很重要。但是今天主要来和大家讲讲aop。AOP 广泛应用于处理一些具有横切性质的系统级服务,AOP 的出现是对 OOP 的良好补充,用于处理系统中分布于各个模块的横切关注点,比如事务管理、日志、缓存等等。AOP实现的关键在于A...

2020-04-21 11:22:26 71

转载 Java线程池并发执行多个任务

版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/micro_hz/article/details/73865016Java在语言层面提供了多线程的支持,线程池能够避免频繁的线程创建和销毁的开销,因此很多时候在项目当中我们是使用的线程池去完成多线程的任务。Java提供了Execut...

2020-04-21 10:58:22 380

空空如也

bingguang1993的留言板

发表于 2020-01-02 最后回复 2020-01-02

空空如也

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

TA关注的人 TA的粉丝

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