自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(58)
  • 资源 (3)
  • 收藏
  • 关注

转载 浅谈JAVA序列化和反序列化

任何序列化该类的尝试都会因NotSerializableException而失败,但这可以通过在 Java中 为 static 设置瞬态(transient)变量来轻松解决。Java 序列化相关的常见问题 Java 序列化是一个重要概念, 但它很少用作持久性解决方案, 开发人员大多忽略了 Java 序列化 API。根据我的经验, Java 序列化在任何 Java核心内容面试中都是一个相当重要的话题, 在几乎所有的网面试中, 我都遇到过一两个 Java 序列化问题, ...

2020-05-15 14:42:07 516

原创 weblogic 异常之 ClassNotFoundException: org.hibernate.hql.ast.HqlToken 和 java.lang.NoSuchMethodError

一:weblogic 异常之 org.hibernate.QueryException: ClassNotFoundException: org.hibernate.hql.ast.HqlToken 项目之前在 Tomcat 环境下和 webLogic 12下,运行正常,现在换成weblogic 10部署后发现了这个报异常org.hibernate.QueryException:...

2020-04-30 15:08:07 1158

原创 深入理解JVM内存模型和JVM参数配置

前言对于大多数应用来说,Java 堆(Java Heap)是Java 虚拟机所管理的内存中最大的一块。Java 堆是被所有线程共享的一块内存区域,在虚拟机启动时创建。JVM分代思想目前主流的虚拟机实现都采用了分代收集的思想,把整个堆区划分为新生代和老年代;新生代又被划分成Eden 空间、 From Survivor 和 To Survivor 三块区域。 我们把Eden : From ...

2019-11-21 19:22:36 507

转载 程序员该掌握的性能优化原则

一般性原则 性能优化的层次 一般性方法 缓存 并发 惰性 批量,合并 更高效的实现 缩小解空间 性能优化与代码质量 总结 作为一个程序员,性能优化是常有的事情,不管是桌面应用还是web应用,不管是前端还是后端,不管是单点应用还是分布式系统。本文从以下几个方...

2019-11-21 18:46:28 561

转载 IntelliJ IDEA 最常用配置 ,适合新手

刚刚使用 IntelliJ IDEA 的时候,会有很多设置,会方便以后的开发,磨刀不误砍柴工。比如:设置文件字体大小,代码自动完成提示,版本管理,本地代码历史,自动导入包,修改注释,修改tab的显示的数量和行数,打开项目方式,等等一大堆东西。总结一下,免得下次换了系统,还得再找一遍配置。设置外观和字体大小这个呢是设置一下外观。和字体大小。放在第一个...

2019-11-21 18:40:00 261

转载 MySQL高性能优化规范建议,值得收藏

原文地址:https://www.cnblogs.com/huchong/p/10219318.html数据库命令规范•所有数据库对象名称必须使用小写字母并用下划线分割•所有数据库对象名称禁止使用 MySQL 保留关键字(如果表名中包含关键字查询时,需要将其用单引号括起来)•数据库对象的命名要能做到见名识意,并且最后不要超过 32 个字符•临时库表必须以 tmp_为前缀并以日期为后缀...

2019-08-21 17:46:06 215

原创 ExtJs入门学习

本人软件工程师一名,从事企业应用的前后台开发,因为最近项目上涉及到extJs,之前从没用到过,所以接下来开始学习ext,结合项目总结一些常用的组件,本文为第一篇,从认识extJs开始!什么是Ext JSExtJS的前身是YUI(Yahoo User Interface)。经过不断的发展与改进,ExtJS现在已经成功发布到了ExtJS 6版本,是一套目前最完整和最成熟的javas...

2019-08-01 11:05:02 533

原创 Tomcat详解

一、前言小伙伴们在网上看到的很多文章,都是对Tomcat的一些介绍,什么配置啊,怎么启动。其实在生产环境中怎么部署,和网上介绍的有很大区别!这篇文章老顾就带着大家分享一些如何在生产环境下部署。这里不介绍Tomcat的一些线程数的配置了,网上一大堆,核心介绍网上没有的。另外,每个公司的业务场景不一样,Tomcat的部署方案可能有所不能,所以请大家轻喷!二、Tomcat组件我们先回...

2019-06-25 11:48:31 237

原创 Mysql慢查询日志以及优化

慢查询日志设置当语句执行时间较长时,通过日志的方式进行记录,这种方式就是慢查询的日志。1、临时开启慢查询日志(如果需要长时间开启,则需要更改mysql配置文件)set global slow_query_log = on;注:如果想关闭慢查询日志,只需要执行 set global slow_query_log = off; 即可2、临时设置慢查询时间临界点 查询时间高于...

2019-06-11 15:01:16 5570 1

原创 mybatis一级缓存和二级缓存

mybatis 为我们提供了一级缓存和二级缓存,可以通过下图来理解:    ①、一级缓存是SqlSession级别的缓存。在操作数据库时需要构造sqlSession对象,在对象中有一个数据结构(HashMap)用于存储缓存数据。不同的sqlSession之间的缓存数据区域(HashMap)是互相不影响的。  ②、二级缓存是mapper级别的缓存,多个SqlSession去操作同一个Ma...

2019-06-04 09:38:29 500

转载 Quartz定时任务执行原理

1、原理分析在java中常见的定时调度方案有:ScheduledExecutorService和quartz两种方案。其本质上都是通过native的wait方法来实现的.quartz定时调度是通过Object.wait方式(native方法)实现的,其本质是通过操作系统的时钟来实现的。Quartz主要的执行类和执行方法。其主要流程如下:public class QuartzSche...

2019-05-27 18:19:22 5901 4

原创 js、jquery中的get post ajax汇总

get和post的区别1.安全性:get是通过http协议的header发送请求,所以会将参数拼接在地址栏中,所以安全性很差;post是通过http协议的body发送请求,地址栏中并不会出现,所以相对安全;还有一点,用get方法发送请求会被客户端浏览器缓存,通过查看历史记录可以查看到用户信息,所以非常不安全。2.传送大小:get只能传送2kb,而post一般不受限制3.效率:get效率高,...

2019-05-27 15:09:16 410

转载 Spring之BeanFactory与ApplicationContext

文章转载于 https://www.cnblogs.com/xiaoxi/p/5846416.html一、BeanFactoryBeanFactory 是 Spring 的“心脏”。它就是 Spring IoC 容器的真面目。Spring 使用 BeanFactory 来实例化、配置和管理 Bean。BeanFactory:是IOC容器的核心接口, 它定义了IOC的基本功能,我们看到它主...

2019-05-23 11:54:36 190

原创 深入了解 Spring AOP

前言使用了这么久spring,会发现,凡是java面试基本会被问到spring原理,源码,同时就会问到IOC和AOP这两大概念,下文主要讲解AOP的概念, AOP 的概念比较多, 而且这些概念经过了中文翻译后, 变得面目全非, 鉴于此, 在本章的开头, 着重整理一下Spring AOP 的各项术语的基本含义。什么是 AOPAOP(Aspect-Oriented Programming)...

2019-05-21 17:52:09 298

转载 spring的@Transactional注解

概述事务管理对于企业应用来说是至关重要的,即使出现异常情况,它也可以保证数据的一致性。Spring Framework对事务管理提供了一致的抽象,其特点如下:为不同的事务API提供一致的编程模型,比如JTA(Java Transaction API), JDBC, Hibernate, JPA(Java Persistence API和JDO(Java Data Objects) 支持...

2019-05-21 16:02:56 235

转载 深究Spring中Bean的生命周期

一、Bean 的完整生命周期在传统的Java应用中,bean的生命周期很简单,使用Java关键字 new 进行Bean 的实例化,然后该Bean 就能够使用了。一旦bean不再被使用,则由Java自动进行垃圾回收。相比之下,Spring管理Bean的生命周期就复杂多了,正确理解Bean 的生命周期非常重要,因为Spring对Bean的管理可扩展性非常强,下面展示了一个Bean的构造过程...

2019-05-21 11:46:58 323

原创 Ribbon源码深度解析

什么是RibbonRibbon是Netflix公司开源的一个负载均衡的项目,它属于上述的第二种,是一个客户端负载均衡器,运行在客户端上。它是一个经过了云端测试的IPC库,可以很好地控制HTTP和TCP客户端的一些行为。 Feign已经默认使用了Ribbon。能够实现负载均衡、容错、多协议(HTTP,TCP,UDP)支持异步和反应模型、缓存和批处理。在Spring Cloud 中,作为开发者,做...

2019-05-16 16:02:50 575

原创 Eureka源码深度解析(3)

Eureka Server启动过程同Eureka Client启动一样,需要添加@EnableEurekaServer注解。在该类中用@Import(EurekaServerMarkerConfiguration.class)表明了程序在启动时会先加载EurekaServerMarkerConfiguration配置类中的配置,而在该配置类中,发布了一个标记类 EurekaServerMark...

2019-05-13 16:09:48 256

原创 Eureka源码深度解析(2)

DiscoveryClient 核心方法解析1)服务注册(发送注册请求到注册中心)boolean register() throws Throwable { ... EurekaHttpResponse<Void> httpResponse; try { //主要的注册功...

2019-05-13 14:32:31 670

原创 sqoop使用与原理

简介sqoop:sql-to-hadoop。Sqoop是一个用来将Hadoop和关系型数据库中的数据相互转移的工具,可以将一个关系型数据库中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。sqoop架构图Sqoop原理(以import为例)Sqoop在import时,需要制定split-by参数。Sqoop根据不同的split-by参数值...

2019-05-09 11:14:23 408

转载 Oracle系统表整理+常用SQL语句收集

Oracle系统表整理+常用SQL语句收集转载于:博客园地址: http://www.cnblogs.com/jiangxinnju-- DBA/ALL/USER/V_$/GV_$/SESSION/INDEX开头的绝大部分都是视图-- DBA_TABLES意为DBA拥有的或可以访问的所有的关系表。-- ALL_TABLES意为某一用户拥有的或可以访问的所有的关系表。-- USER_...

2019-05-09 10:58:14 230

原创 Eureka源码深度解析(1)

Eureka的高可用架构如图为Eureka的高级架构图,该图片来自于Eureka开源代码的文档,地址为https://github.com/Netflix/eureka/wiki/Eureka-at-a-glance 。从图可以看出在这个体系中,有2个角色,即Eureka Server和Eureka Client。而Eureka Client又分为Applicaton Service和...

2019-05-07 18:01:06 522 1

原创 数组和链表的区别

为什么数组查询比链表要快?而插入删除比链表效率低问:为什么数组查询比链表要快?而插入删除比链表效率低已知: 1、数据存储结构分为顺序存储、链接存储、索引存储、散列存储。 2、数组属于顺序存储,用一段连续的内存位置来存储。 3、链表属于链接存储,用一组任意的存储单元来存储,不要求物理上相邻。抽象: 1、顺序存储可以想象成吃饭排队,每个人领的号都是按顺序来...

2019-04-23 16:02:27 298

转载 springboot常见面试题

文章转载于 https://blog.csdn.net/zl1zl2zl3/article/details/837156331、什么是 Spring Boot?Spring Boot 是 Spring 开源组织下的子项目,是 Spring 组件一站式解决方案,主要是简化了使用 Spring 的难度,简省了繁重的配置,提供了各种启动器,开发者能快速上手。更多 Spring Boot 详细...

2019-04-23 15:54:56 4694

转载 数据结构中常见的树(BST二叉搜索树、RBT红黑树、B-树、B+树、mysql索引实现原理)

BST树即二叉搜索树: 1.所有非叶子结点至多拥有两个儿子(Left和Right); 2.所有结点存储一个关键字; 3.非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树;如: BST树的搜索,从根结点开始,如果查询的关键字与结点的关键字相等,那么就命中;否则,如果查询关...

2019-04-23 15:39:40 600

转载 Redis数据丢失及解决方案

Redis的数据回写机制Redis的数据回写机制分同步和异步两种,同步回写即SAVE命令,主进程直接向磁盘回写数据。在数据大的情况下会导致系统假死很长时间,所以一般不是推荐的。 异步回写即BGSAVE命令,主进程fork后,复制自身并通过这个新的进程回写磁盘,回写结束后新进程自行关闭。由于这样做不需要主进程阻塞,系统不会假死,一般默认会采用这个方法。个人感觉方法2采用fork主进程的方...

2019-04-18 15:36:01 3812

原创 rabbitmq常见面试题

1、使用RabbitMQ有什么好处?1.解耦,系统A在代码中直接调用系统B和系统C的代码,如果将来D系统接入,系统A还需要修改代码,过于麻烦!2.异步,将消息写入消息队列,非必要的业务逻辑以异步的方式运行,加快响应速度3.削峰,并发量大的时候,所有的请求直接怼到数据库,造成数据库连接异常2、RabbitMQ 中的 broker 是指什么?cluster 又是指什么?bro...

2019-04-10 15:06:02 121772 17

原创 SpringCloud面试常见问题

1.SpringCloud和DubboSpringCloud和Dubbo都是现在主流的微服务架构SpringCloud是Apache旗下的Spring体系下的微服务解决方案Dubbo是阿里系的分布式服务治理框架从技术维度上,其实SpringCloud远远的超过Dubbo,Dubbo本身只是实现了服务治理,而SpringCloud现在以及有21个子项目以后还会更多所以其实很多人都会说Du...

2019-04-09 10:46:03 29740

转载 HashMap底层源码分析

JDK1.7中HashMap底层实现原理一、数据结构HashMap中的数据结构是数组+单链表的组合,以键值对(key-value)的形式存储元素的,通过put()和get()方法储存和获取对象。(方块表示Entry对象,横排表示数组table[],纵排表示哈希桶bucket【实际上是一个由Entry组成的链表,新加入的Entry放在链头,最先加入的放在链尾】,)二、实现原理...

2019-04-08 11:12:57 413

转载 flume原理解析

一、Flume简介  flume 作为 cloudera 开发的实时日志收集系统,受到了业界的认可与广泛应用。Flume 初始的发行版本目前被统称为 Flume OG(original generation),属于 cloudera。  但随着 FLume 功能的扩展,Flume OG 代码工程臃肿、核心组件设计不合理、核心配置不标准等缺点暴露出来,尤其是在 Flume OG 的最后一个发...

2019-04-02 18:12:16 374

转载 shell定时任务

crontab的介绍linux内置的cron进程能帮我们实现这些需求,cron搭配shell脚本,非常复杂的指令也没有问题。cron介绍我们经常使用的是crontab命令是cron table的简写,它是cron的配置文件,也可以叫它作业列表,我们可以在以下文件夹内找到相关配置文件。/var/spool/cron/ 目录下存放的是每个用户包括root的crontab任务,每个任务以...

2019-04-02 11:59:13 6474

转载 mysql之my.conf详解

#*** client options 相关选项 ***##以下选项会被MySQL客户端应用读取。注意只有MySQL附带的客户端应用程序保证可以读取这段内容。如果你想你自己的MySQL应用程序获取这些值。需要在MySQL客户端库初始化的时候指定这些选项。[client]port = 3309socket = /usr/local/mysql/tmp/mysql.sock[mysqld...

2019-04-01 10:11:57 4698

原创 flume环境部署和配置案例详解

安装配置 1、将下载的flume包,解压到/usr/local/flume目录中 2、修改 flume-env.sh 配置文件,主要是JAVA_HOME变量设置 3、验证是否安装成功 flume-ng version常见的几种Flume日志收集案例案例1:Avro Avro可以发送一个给定的文件给Flume,Avro 源使用AVRO R...

2019-03-26 16:53:24 497

转载 干货!!史上最全Java学习视频

史上最全Java学习视频下载地址分享一、java基础1.毕向东基础,这个最有名了,毕老师还是毕姥爷?链接:https://pan.baidu.com/s/17bL6ZzegNsUNkM4aBQB_GA 密码:5y2t毕姥爷的源码链接:https://pan.baidu.com/s/10bnTm2n6eVDmu4fDPPiv1g 密码:lufp2.黑马基础班,这个也不错...

2019-03-19 16:03:57 3800 5

原创 mysql表损坏 Incorrect key file for table ‘xxxx‘; try to repair it 解决方法

数据损坏原因MySQL表损坏一般是数据损坏,引起损坏的原因可能是由于磁盘损坏、系统崩溃或者MySQL服务器被崩溃等外部原因。例如有人使用kill -9终止进程,导致MySQL进程未能正常关闭,那么就很有可能导致数据损坏。对于不同的引擎,数据损坏修复的方式不一样,作为一般情况可以尝试使用CHECK TABLE和REPAIR TABLE命令修复。MyISAM损坏 两种修复方式:1.通过SQ...

2019-03-15 16:10:16 5671

原创 sqoop数据迁移 mysql导入Hive hive导出到mysql

导入模板sqoop import \--connect jdbc:mysql://ip:3306/test \--username root \--password 123456\--table users\--fields-terminated-by '\t' \--delete-target-dir \--num-mappers 1 \--hive-import \--h...

2019-03-15 15:21:10 1089

原创 sqoop使用以及常见问题

1、hdfs文件的权限问题问题分析与解决:根据报错信息是hdfs文件的权限问题,命令进入集群执行的用户为null,而hdfs文件所有者为hdfs。要么以用户hdfs执行命令,要么调整hdfs文件的权限,因为我只是使用hdfs文件的其中之一,暂时考虑:以hdfs用户执行命令。在~/.bash_profile文件增加:export HADOOP_USER_NAME=hdfs...

2019-03-13 11:13:10 5446 1

转载 Linux查看磁盘和系统资源占用

Linux查看系统资源命令在系统维护的过程中,随时可能有需要查看 CPU和内存的使用率,并根据相应信息分析系统状况的需求。本文介绍一下几种常见的Linux系统资源查看命令。1、总体内存占用的查看命令:free图1 free命令查看内存占用(1) free命令默认是以kb为单位显示的,可以用free -m 用Mb单位来显示。(2) Mem行 : total = use...

2019-03-08 15:34:14 6133

转载 史上最全mysql面试大全

1、MySQL的复制原理以及流程(1)、复制基本原理流程1. 主:binlog线程——记录下所有改变了数据库数据的语句,放进master上的binlog中;2. 从:io线程——在使用start slave 之后,负责从master上拉取 binlog 内容,放进 自己的relay log中;3. 从:sql执行线程——执行relay log中的语句;(2)、MySQL复制的线程...

2019-03-08 15:25:20 654

转载 redis 精讲(面试常问)

转载于:https://www.cnblogs.com/rjzheng/p/9096228.html本文围绕以下几点进行阐述1、为什么使用redis2、使用redis有什么缺点3、单线程的redis为什么这么快4、redis的数据类型,以及每种数据类型的使用场景5、redis的过期策略以及内存淘汰机制6、redis和数据库双写一致性问题7、如何应对缓存穿透和缓存雪崩问题8、如何...

2019-01-14 16:54:58 347

java面试大全-黑马

黑马 Java面试大全2018最新,高清,带书签 2网上流传的一个叫做《Java面试题大全》的东西,认真的阅读了以后发现里面的很多题目是重复且没有价值的题目,还有不少的参考答案也是错误的,在修订的过程中,参照了当时JDK最新版本(Java 7)给出了题目的答案和相关代码,去掉了EJB 2.x、JSF等无用内容或过时内容,补充了数据结构和算法、大型网站技术架构、设计模式、UML、Spring MVC等内容并对很多知识点进行了深入的剖析,例如hashCode方法的设计、垃圾收集、并发编程、数据库事务等。当时我甚至希望把面试中经常出现的操作系统、数据库、软件测试等内容也补充进去

2019-01-10

黑马Activiti全套源码

黑马Activiti全套源码 亲测能用,其中包括activiti基础篇,进阶篇,项目demo,适合初学者学习

2018-08-29

SSM+Redis项目整合

1.注意修改db.properties中的数据库配置信息,保持和自己的一致 2.建表语句在com.briup.sql包里面 3.运行项目之前,要先开启Redis服务器 4.register.jsp页面中可以测试ssm整体的框架搭建以及事务是否可以回滚 5.success.jsp页面中可以测试Redis是否配置成功,多次点击按钮查询观察select的执行情况 6.压缩包里有三个demo1,分别是mybatis二级缓存版、spring4.0版、spring3.0版。

2017-07-24

空空如也

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

TA关注的人

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