- 博客(39)
- 资源 (3)
- 收藏
- 关注
转载 SpringBoot——》WebMvcConfigurerAdapter详解
原文:https://blog.csdn.net/weixin_43453386/article/details/83623242一、WebMvcConfigurerAdapter是什么Spring内部的一种配置方式采用JavaBean的形式来代替传统的xml配置文件形式进行针对框架个性化定制二、WebMvcConfigurerAdapter常用的方法/** 解决跨域问题 **...
2019-06-10 17:29:08 839
转载 Redis数据库-Redis高可用方案,主从复制、Sentinel 哨兵、redis-cluster集群、codis集群对比
版权声明:转载请注明原文地址 https://blog.csdn.net/Super_RD/article/details/89739477(十二)Redis数据库-Redis高可用方案,主从复制、Sentinel 哨兵、redis-cluster集群、codis集群对比主从复制Sentinel 哨兵redis-cluster集群Codis集群我的系统版本为CentOS7.5,red...
2019-05-29 19:40:58 480
转载 Spring事务为什么不会自动回滚?Spring事务怎样才会自动回滚?事务自动回滚条件及手动回滚
在此,首先我们要明确RuntimeException与Exception之间的关系与他们分别的含义: ①在Java中异常的基类为Throwable,他有两个子类Exception与Errors,同时RuntimeException就是Exception的子类; ②RuntimeException,即运行时异常,为非受检(UNCHECKED)异常; ③...
2018-11-29 11:24:43 293
转载 关于数据的事物有关概念
1.事物的特性 原子性:事务里面的操作单元不可切割,要么全部成功,要么全部失败 一致性:事务执行前后,业务状态和其他业务状态保持一致. 隔离性:一个事务执行的时候最好不要受到其他事务的影响 持久性:一旦事务提交或者回滚.这个状态都要持久化到数据库中脏读:在一个事务中读取到另一个事务没有提交的数据不可重复读...
2018-10-03 11:54:19 226
原创 linux常用命令
1.显示当前文件的大小 M ls -lh2.查找tomcat目录find / -name tomcat3.查看tomcat端口8080的连接数netstat -ano|grep 8080 |wc -l4.ps -ef|grep java、tail -f catalina.out、grep '收索的字段' catalina.out、1.grep用法 [root@www ~]# grep [-...
2018-03-30 09:31:20 170
转载 mysql存储引擎
InnoDB:支持事务处理等不加锁读取支持外键支持行锁不支持FULLTEXT类型的索引不保存表的具体行数,扫描表来计算有多少行DELETE 表时,是一行一行的删除InnoDB 把数据和索引存放在表空间里面跨平台可直接拷贝使用InnoDB中必须包含AUTO_INCREMENT类型字段的索引表格很难被压缩MyISAM:不支持事务,回滚将造成不完全回滚,不具有原子性不支持外键不支持外键支持全文搜索保存表...
2018-03-27 09:00:37 181
原创 spring常见注解
常见注解:@Controller 声明Action组件@Service 声明Service组件 @Service("myMovieLister") @Repository 声明Dao组件@Component 泛指组件, 当不好归类时. @RequestMapping("/menu") 请求映射@Resource 用于注入,( j2ee提供的 ) 默认按名称装配,@Resourc...
2018-02-11 11:17:38 176
转载 注解@Resource和@Autowired区别对比
@Resource和@Autowired都是做bean的注入时使用,其实@Resource并不是Spring的注解,它的包是javax.annotation.Resource,需要导入,但是Spring支持该注解的注入。1、共同点两者都可以写在字段和setter方法上。两者如果都写在字段上,那么就不需要再写setter方法。2、不同点(1)@Autowired@Autowired为Spring提供...
2018-02-11 10:13:54 212
原创 简单分析synchronized
简单分析synchronized:静态:全局锁 如:sychroinzed(String.class)、加在静态变量上实例:对当前实例可见 sychroinzed(this)、者加在方法上代码块:代码块的范围
2018-02-06 22:07:27 289
原创 java关键字volatile、transient
本问主要知识点: volatile 关键字transient关键字1.volatile:当多个线程进行操作共享数据时,可以保证内存中的数据可见,相对与synchronized是一种轻量级的锁 注意:1)volatile 不具有互斥性;2)不能保证变量的原子性java.util.concurrent.atomic.包下提供了常用的原子变量:1)通过volatile保证
2018-02-06 10:17:38 186
转载 Java并发编程:Lock
本文目录大纲: 一.锁的相关概念介绍二.Lock的特性: 三.java.util.concurrent.locks包下常用的类 三.锁的相关概念介绍一.锁的相关概念介绍 1.可重入锁 如果锁具备可重入性,则称作为可重入锁。像synchronized和ReentrantLock都是可重入锁,可重入性在我看来实际上表明了锁的分配机
2018-02-02 13:40:02 143
转载 Lock与synchronized 的区别
实现同步发的方法:有synchronized;jdk5之后有java.util.concurrent.locks的LockLock与synchronized 的区别:概念:如果一个代码块被synchronized修饰了,当一个线程获取了对应的锁,并执行该代码块时,其他线程便只能一直等待,等待获取锁的线程释放锁,而这里获取锁的线程释放锁只会有两种情况: 1)获取锁的线程执行
2018-02-02 13:10:43 390
原创 存储过程&函数-sql
以一下例子以mysql为例:存储过程函数函数函数创建:需要参入参数user_id是intBEGIN DECLARE ss varchar(100); set ss='aaa'; select name into ss from testuser where id=user_id; RETURN ss;ENDjava调用: Connection con
2018-02-01 16:22:45 199
转载 sql执行顺序
sql执行顺序主要包括以下:sql执行顺序where 条件的执行顺序sql的执行顺序语句: (1) FROM left_table (3) join_type JOIN right_table (2) ON join_condition (4) WHERE where_condition (5) GROUP BY
2018-01-27 15:36:30 564
原创 浅谈数据库索引的使用规则
对各位兄弟的建议:有些论坛或者帖子,若果感觉自己要掌握这些知识点,最好试试,不要随便转帖,让错误的东西误导更多的人!!!浅谈数据库索引主要包括如下几个方面索引原则所谓的最左原则(重点) 索引失效的条件1、使用不等于操作符(<>, !=);下面这种情况,即使在列dept_id有一个索引,查询语句仍然执行一次全表扫描select * from dept where staff_num &l...
2018-01-26 18:06:35 339
原创 MySQL介绍
MySQL介绍包括如下几个方面Mysql引擎索引结构分类Mysql引擎MyISAM:不支持事务、也不支持外键,优势是访问速度快,对事务完整性没有InnoDB:用于事务处理应用程序,具有众多特性,包括ACID事务支持。(提供行级锁);支持自动增长列,支持外键约束InnoDB不支持全文索引,而MyISAM支持Memory存储引擎使用存在于内存中的内容来创建表Merge存储引擎是
2018-01-26 14:40:15 259
转载 MySQL性能优化
MySQL性能优化可从如下几个方面着手SQL优化索引优化数据库(表)结构优化系统配置优化服务器硬件优化explain语句各个属性的含义SQL优化开启慢查询记录日志,查找症状(很多时候都是一些慢查询拖累了整个数据库的性能)在配置文件中配置(my.cnf),配置完毕需要重启,不适合线上数据库#path可修改为绝对或者相对路径log-slow-queries=s
2018-01-26 10:45:32 216
原创 oracle 分区创建
分区创建:分区:-- Create tablecreate table RHCJ_BILL_RELEASE_TERMINAL( ID VARCHAR2(32) not null, RECORD_T_ID VARCHAR2(32), RELEASE_TIME DATE, OPERATE_TIME DAT
2018-01-25 20:45:06 333
转载 java线程之间的通信(等待/通知机制)
线程开始运行,拥有自己的栈空间,就如同一个脚本一样,按照代码一步步的执行直到终止。但是,每个运行中的线程,如果仅仅是孤立地运行,那么没有太大的价值,但如果多个线程能够相互配合完成工作,这将会带来巨大的价值。而java多线程的等待和通知机制就是用来完成线程之间的通信。一个线程修改了一个对象的值,而另一个线程感知到了变化,然后进行相应的操作,整个过程开始于一个线程,而最终执行又是另一个线程。前
2018-01-25 09:56:55 187
转载 java线程的中断(interrupt)
一个线程在未正常结束之前, 被强制终止是很危险的事情. 因为它可能带来完全预料不到的严重后果比如会带着自己所持有的锁而永远的休眠,迟迟不归还锁等。 所以你看到Thread.suspend, Thread.stop等方法都被Deprecated了那么不能直接把一个线程搞挂掉, 但有时候又有必要让一个线程死掉, 或者让它结束某种等待的状态 该怎么办呢?一个比较优雅而安全的做法是:使用等待/通知机制
2018-01-25 09:36:45 216
原创 java 线程详情
一、Java线程的周期: 1. 线程有五个基本状态描述New: 新建线程(创建一个线程,但是没有任何可运行的实体)Runnable 线程就绪(将程序变量实体放入线程中,可执行状态)Running 运行(运行放入的程序)Blocked 阻塞(程序暂停,等待自动唤醒或者被动唤醒)Dead 结束(程序运行结束或者异常退出) 2.线程有五个基本状态的转...
2018-01-24 12:28:48 227
转载 阻塞非阻塞与同步异步
1.同步与异步同步和异步关注的是消息通信机制 (synchronous communication/ asynchronous communication)所谓同步,就是在发出一个*调用*时,在没有得到结果之前,该*调用*就不返回。但是一旦调用返回,就得到返回值了。换句话说,就是由*调用者*主动等待这个*调用*的结果。而异步则是相反,*调用*在发出之后,这个调用就直接返回了,所以没
2018-01-24 10:53:44 139
转载 Java中的强引用,软引用,弱引用,虚引用(Java 如何有效地避免OOM:善于利用软引用和弱引用)
Object object = new Object();String s 想必很多朋友对OOM(OutOfMemory)这个错误不会陌生,而当遇到这种错误如何有效地解决这个问题呢?今天我们就来说一下如何利用软引用和弱引用来有效地解决程序中出现的OOM问题。 一. 强引用、软引用、弱引用、虚引用的概念1.强引用(StrongReference) 强引用就是指在程
2017-12-08 08:46:34 254
转载 JVM八:JVM调优总结 -Xms -Xmx -Xmn -Xss
堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m。典型设置:java -Xmx3550m -Xms355
2017-12-05 10:28:05 239
转载 jvisualvm插架安装
jdk自带jvisualvm可以对java应用进行监控。其中有个插件visualgc可以查看jvm垃圾回收的具体信息。安装插件的步骤是打开jvisualvm,点击工具->插件,在可用插件列表找到Visual GC进行安装,结果提示无法安装。在浏览器打开链接访问一下,发现java.net网站已经被Oracle关闭了。正在抓狂间,偶然发现visualvm已经迁移到了github上,地址是https:/
2017-11-29 10:23:09 295
原创 Visual GC插件「不受此JVM支持」问题
利用visual vm监控服务器上的java虚拟机, 在默认情况下, 是没有办法使用 visual vm的插件visual gc的。 安装插件后打开visual gc的页签, 会显示「不受此JVM支持」如下图要解决这个问题需要Java自带的Jstatd服务, 使用步骤如下第一, 在服务器上的java安装的bin下(如/usr/local/ja
2017-11-29 10:13:57 8470 1
原创 JVM七:jvm参数设置说明
参数说明-Xmx3550m:设置JVM最大堆内存为3550M。-Xms3550m:设置JVM初始堆内存为3550M。此值可以设置与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存。-Xss128k:设置每个线程的栈大小。JDK5.0以后每个线程栈大小为1M,之前每个线程栈大小为256K。应当根据应用的线程所需内存大小进行调整。在相同物理内存下,减小这个值能生成更多的线程。但是操作系
2017-11-28 14:53:30 330
转载 jvm四:jvm内存说明
前言:这是一篇关于JVM内存区域的文章,从网搜索大量的东西,所以会有些类同的地方,也不能保证我自己写的比其他网上的和书本上的要好, 仅仅是自己的理解和总结,所以有写错的地方希望大家多多指教。原理 JVM堆内存分为2块:Permanent Space 和 Heap Space。Permanent 即 持久代(Permanent Generation),主要存放的是J
2017-11-28 14:33:25 283
转载 JVM三(2):jmap、jstack、jstat 等jvm分析工具
1. jstat 这个命令对于查看Jvm的堆栈信息很有用。能够查看eden,survivor,old,perm等heap的capacity,utility信息 对于查看系统是不是有能存泄漏以及参数设置是否合理有不错的意义2. jstack 这个是用来查看jvm当前的thread dump的。可以看到当前Jvm里面的线程状况。 这个对
2017-11-28 14:06:09 326
转载 JVM-zero:是否需要进行GC调优
是否需要进行GC调优(从其他地方copy的感觉挺有道理的,copy一下)决定是否进行Java GC调优,前提是主要看新生代的Minor GC和老年代的FULL GC 的GC频率和每次GC停顿的时间对于业务来说是否可接受,一般满足以下条件,可不用考虑GC调优(仅参考,具体还要看业务)1 MinorGC执行的很快(小于50ms)2 MinorGC执行的并不频繁(大概
2017-11-28 14:03:58 761
转载 技术网站
技术网站InfoQ只有一些质量很高的文章才能入选,适合进阶阅读ImportNewJava入门的文章较多,毫无底线的到处爬文章,适合....能不看就不看吧并发编程网学习Java并发的好去处,当时也花了很多时间看了不少文章,适合进行系统的学习开发者头条每天会选取一些写的不错的技术文章进行推送,可以根据自己的喜欢进行阅读,适合打磨碎片时间简书 占小狼到了这里,你买
2017-11-28 12:58:43 215
转载 JVM六:查找最最耗cpu的线程或线程时间最长并定位代码
jstack可以定位到线程堆栈,根据堆栈信息我们可以定位到具体代码,所以它在JVM性能调优中使用得非常多。下面我们来一个实例找出某个Java进程中最耗费CPU的Java线程并定位堆栈信息,用到的命令有ps、top、printf、jstack、grep。第一步先找出Java进程ID,服务器上的Java应用名称为mrf-center:root@ubuntu:/# ps -ef | grep m
2017-11-28 12:50:29 2273
转载 JVM系列一:2)JVM内存组成
java内存组成介绍:堆(Heap)和非堆(Non-heap)内存 按照官方的说法:“Java 虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配。堆是在 Java 虚拟机启动时创建的。”“在JVM中堆之外的内存称为非堆内存(Non-heap memory)”。可以看出JVM主要管理两种类型的内存:堆和非堆。简单来说堆就是Java代码可及的内存,是留给开发人员
2017-11-27 22:28:42 193
转载 JVM五:Gc
jvm虚拟机管理的内存主要有:程序计数器,堆,方法区(永久代),虚拟机栈,本地方法栈。堆是jvm管理的最大的一块内存,主要的作用:存放几乎所有的类的实例对象。首先,jvm对内存分为新生代(Young)和老年代(Old).新生代又可以划分为三块,这样jvm中就有新生代,老年代,永久代几片内存,这样分区的目的就是垃圾回收时使用分代算法。新生代被划分为三个区域:1、Eden:几乎所有新诞生的java
2017-11-26 22:37:07 220
原创 JVM三(2):jstat使用方法
定义:Jstat是JDK自带的一个轻量级工具,主要用JVM内建的指令对java应用程序的资源和性能进行实时的监控。 格式:jstat [-t] [-h] 参数解释:option 可以从下面参数中选择-class 显示ClassLoad的相关信息;-compiler 显示JIT编译的相关信息;-
2017-11-24 11:27:51 302
转载 JVM二:JVM7、8详解
1. JVM堆内存划分一图读懂JVM架构解析1.1 JDK7及以前的版本其中最上一层是Nursery内存,一个对象被创建以后首先被放到Nursery中的Eden内 存中,如果存活期超两个Survivor之后就会被转移到长时内存中(Old Generation)中。永久内存中存放着对象的方法、变量等元数据信息。通过如果永久内存不够,就会得到如下错误:Jav
2017-11-24 09:52:08 1102
转载 JVM一:Java虚拟机
前言:这是一篇关于JVM内存区域的文章,从网搜索大量的东西,所以会有些类同的地方,也不能保证我自己写的比其他网上的和书本上的要好, 仅仅是自己的理解和总结,所以有写错的地方希望大家多多指教。大多数 JVM 将内存区域划分为 Method Area(Non-Heap)(方法区),Heap(堆),Program Counter Register(程序计数器), VM Stack(虚拟机栈,也有
2017-11-23 20:25:22 751
转载 jdk8新特性:Lambda表达式(也称为闭包、可传递的匿名函数)与函数式接口@FunctionalInterface
1) 一个lambda可以由用逗号分隔的参数列表、–>符号与函数体三部分表示。例如:ex.1Arrays.asList( "a", "b", "d" ).forEach( e -> System.out.println( e ) );ex.2 (Computer c1, Computer c2) -> c1.getPrice().compareTo(c2.getPrice(
2017-11-12 16:31:53 2234
Activiti5-lib
2017-09-17
Activiti6-lib
2017-09-17
mysql主从同步
2016-04-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人