自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

wanghaoxin的博客

莫笑雏龙麟窄,敢于鲲鹏夺海,万般回首化尘埃,看我昆仑不改

  • 博客(51)
  • 收藏
  • 关注

原创 java基础知识-面试(二)

Collections和Collection有何区别?java.util.Collection是一个集合接口,它提供了对集合对象进行基本操作的通用接口方法,Connection接口在java类库中有很多具体的实现,Connection的意义是为各种具体的集合提供了最大化的同一操作方式List 、Set、Queue接口都继承CollectionAbstractConnection —实现了Collection接口,并对简单一些方法做了实现比如isEmpty();java.util.Collectio

2021-06-23 16:09:20 280

原创 Kafka消息中间件(一)

Kafka消息中间件Kafka消息组件简介 Kafka可以说是现在所有开源消息组件之中性能最高的产品,但是同时也需要认识到一个问题:Kafka是一项不断继续发展的技术,所以来说对于其的稳定性永远无法评估。Kafka官网地址: http://kafka.apache.org/Kafka是分布式发布-订阅消息系统(主题)。它最初由LinkedIn公司开发,之后成为Apache项目的一部...

2018-12-14 09:58:01 15112 1

原创 Spring(二)

Spring-AOPAOP思想概述 AOP面向切面编程,AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间耦合度降低,提高程序的可重用性,同时提高了开发效率:主要功能:日志记录。性能统计,安全控制,事务处理,异常处理AOP:分离业务代码,提高程序的可用性把各个业务逻辑的相同部分抽离出来,作为公共部分使用AOP底层实现技术 关键词代理模式: 代理模...

2018-08-24 23:52:02 456

原创 Spring(一)

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I...

2018-08-22 20:54:52 410 1

原创 Struts2(二)

ContextMap(值栈)与OGNL表达式OGNL基本语法 OGNL—强大的表达式语言,类似于jsp中的el表达式,可以存取对象的任意属性,调用对象的 方法,实现字段类型的转换OGNL表达式的特点: 1)是一门功能强大的表达式语言,可以存取对象的属性,调用对象的方法 2)OGNL是struts2默认支持的语言 3)在Struts2的程序中,必须使用struts2标签来使用OG...

2018-08-19 21:38:22 267 1

原创 Struts2(一)

Struts入门 Struts2的概念和作用: Struts概念:是Apache下的java开源框架,基于MVC设计模式的应用框架,本质上相当于Servlet(用来处理页面传送参数,处理响应),Struts最为MVC中的控制器来建立模型和视图的数据交互,是一个基于MVC的web应用框架,是解决表现层的逻辑框架,Web层:Servlet+JSP、Struts2、SpringMVC Se...

2018-08-19 12:33:25 291 1

原创 Java多线程与并发(三)

Condition等待和唤醒在我们的并行程序中,避免不了某些写成要预先规定好的顺序执行,例如:先新增后修改,先买后卖,先进后出,对于这些场景,使用JUC的Conditon对象再合适不过了。JUC中提供了Condition对象,用于让指定线程等待与唤醒,按预期顺序执行。它必须和ReentrantLock重入锁配合使用Condition用于代替wait()/notify()方法 wa...

2018-08-16 20:55:49 361 1

原创 Java多线程与并发(二)

Synchronized线程同步机制 很多线程同时对同一个数据或者文件进行访问的时候,对于这个文件如果进行并发读写可能会产生问题。 多线程机制来保证同一个时间,只有一个线程对这个资源进行读写,来保证多线程环境下是健壮的。代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl ...

2018-08-15 00:24:01 370 1

原创 Java多线程与并发(一)

多线程与并发的基础问题并发就是指程序同时处理多个任务的能力(一个程序被多个用户访问都能看到自己预期的结果) 并发的根源在于对多任务情况下访问资源的有效控制!并发背后的问题public class DownloadSimple { private static int user = 1;//同时模拟的并发用户访问数量 //private static int ...

2018-08-12 23:35:55 468

原创 java基础知识-面试(四)

输入输出流java.io.Serializable接口? java序列化:java提供了一种对象序列化的机制,该机制中,一个对象可以被表示为一个字节序列(字节流),将序列化对象写入文件,也可以从文件中读取出来,并且对它进行反序列化,对象的类型信息,对象的数据还有对象数据类型可以用来在内存中新建对象简单来说:java中对象的序列化是指将一个java对象写入IO流中,于此对应的是,对象的...

2018-08-05 00:49:03 943 1

原创 java基础知识-面试(三)

线程创建线程有几种不同的方式 java创建线程有三种方式: 1.继承Thread类创建线程类 2.通过Runnable接口创建线程类 3.通过Callable和FutureTask创建线程,支持返回值,封装在FutureTask中实现Runnable和Callable接口的方式基本相同,不过是后者执行call方法有返回值 1.如果要访问当前线程,必须调用Thread....

2018-08-04 23:58:37 1316

原创 java基础知识-面试(一)

java基础知识-面试面向对象的三大特性 1)封装 就是把同一类事物的属性和方法归到同一个类中,方便使用 防止该类的代码和数据被外部类定义的代码随意访问 要访问该类的数据和代码必须通过严格的方法控制 封装的主要功能在于我们能修改自己的实现代码,而不用修改哪些调用程序的代码片段。优点:减少耦合,类内部自由修改,可以对类成员变量进行更精确的控制,隐藏信息、实现细节。最佳实践:...

2018-07-30 22:07:03 49833 5

原创 Maven配置和使用(三)- 依赖包管理

Maven配置和使用(三)- 依赖包管理依赖包管理 对于Maven项目而言,依赖包是它的绝对核心所在,所有的开发项目所需要的*.jar文件都需要通过依赖包的形式来实现相关的配置,但是对于依赖包也需要注意两点问题:包的作用域、包的排除问题1.包的作用域: 在一般进行WEB项目开发的时候,往往都会将所有的开发程序打包为一个*.war文件。那么在这个war文件里面就会存在有lib的目录保存所...

2018-07-10 00:18:57 11608

原创 Maven配置和使用(二)-核心讲解

Maven-pom.xml文件详解pom.xml作用分析 现在已经实现了Maven的基本配置,但是这个时候的配置会存在以下问题: 1)当前情况下,对于Maven项目中使用的JDK都是通过了Eclipse自身的配置完成的,这样的配置根本就没有任何实际的意义,因为在真正使用Maven进行部署的时候,这样的配置是会被Maven忽略掉的。 2)如果要使用开发框架,例如:现在最为流行的Sprin...

2018-07-08 19:17:54 359 2

原创 Maven配置和使用(一)

Maven配置和使用Maven简介 如果我要是进行归类的,也会把Maven规划为SCM软件的一种,它也属于一种项目的管理工具,但是与传统的SVN等工具不同的是,Maven主要是进行开发包的管理。 现在的软件项目的开发绝对不可能自己从头写到尾,因为在这之中需要引入大量的第三方开发工具包,而我们对于这些开发包的引用,最初的做法:下载下来*.jar文件,而后在需要的地方拷贝到项目的WEB-IN...

2018-07-08 15:24:57 37324 4

原创 Redis数据分片处理(六)

Redis分片处理(twemproxy代理机制)代理组件:twemproxy 不管你现在的电脑性能有多好,只要你运行了Redis,那么就有可能造成一种可怕的局面,你电脑的内存将立刻被占满。而且一台Redis数据库的性能终归是有限制的,那么现在如果要保证用户的执行速度快,就需要使用集群的设计。而对于集群的设计,主要的问题就是解决单实例Redis的性能瓶颈。twemproxy代理机制 T...

2018-06-30 13:12:55 3504

原创 Redis集群架构概述(五)

Redis集群架构概述单实例Redis问题分析 首先Redis是一个缓存数据库,而且可以承受每秒10w的访问量,同时Redis数据库还可以将数据进行持久化存储,这样即使在Redis关闭之后数据也可以被保存下来。 但是除了这些基本知识之外,在整个系统的开发架构之中,Redis也有着非常重要的地位。应用场景: 在进行web项目开发的时候,为了保证性能高效,往往会使用大量的web服...

2018-06-23 10:44:46 346

原创 java-代理设计模式(四)

代理设计模式代理模式的基本结构 代理设计模式的核心思想就是:一个接口有若干个子类,其中有一个是真实主题类,负责真实的操作,要想完成这一功能必须有代理类负责,以学生上课和看门大爷为例: 观察程序的执行:package com.csii.wanghaoxin.demob;interface Subject{ public void study();}class ...

2018-06-16 23:08:00 256

原创 java-Annotation操作

Annotation操作Annotation操作:减少配置的出现 Annotation的开发与定义在程序中有所支持取得配置的Annotation 在Class AccessibleObject类(java.lang.reflect)里面提供有取得一个结构(构造、方法、成员)的所有Annotation定义 方法:public Annotation[] getAnnotati...

2018-06-16 16:50:26 195

原创 java-Web对于反射的支持+ClassLoader(三)-非重点

Web对于反射的支持非重点: 在我们现在的开发之中,假设回归到模式一的时代,那么这个过程里面重点就是JSP+JavaBean的时代,那么在这种模式下,用户需要接受请求的参数,然后将其变成简单java类,而这一过程JSP本身就已经做了优化。l在JSP里面提供有三类标签指令: 1.定义Bean操作(自动利用反射实例化对象):将自动调用无参构造实例化对象<jsp:useBean i...

2018-06-16 14:34:16 340

原创 java反射操作类结构(二)

java反射操作类结构反射操作构造方法 Class只是作为反射的操作源头,但是严格来讲,反射还有其他内容。反射给用户最大的方便有三点: 1.构造调用 2.方法调用 3.属性调用 在反射机制里面提供有java.lang.reflect包,包中最重要的三个类: Constructor、Method、Field构造方法调用 利用Class类中的forName()方法可以取得Cl...

2018-06-16 10:56:05 322

原创 java反射思想以及工厂设计模型(一)

反射实例化Class类对象 所谓的框架开发 :本质就是==Java可重用性设计思想+反射机制+XML配置(Annotation配置)1.Class类: Class是一切反射的源头,但是如果要想取得Class类的对象,在java中存在有三种做法: 1.利用Object类中的getClass()方法: 方法:public final Class<?> getCla...

2018-06-13 10:00:14 341

原创 java程序执行过程的 运行时数据的内容

java程序执行过程以及程序执行过程的 Runtime Data Area(运行时数据)的五大内容Java程序的执行过程: Java源代码文件(.java)→→ Java Compiler(java编译器)→→Java字节码(.class文件)→→类加载器加载(Class Loader)→→Run Data Area(运行时数据)→→Execution Engine(执行引擎)运行时数...

2018-06-12 11:16:47 1262

原创 懂架构-有未来!写给未来的java架构师

分析 对于企业的开发资格要求: 经验足,项目多,自身条件够硬。 从技术角度上: 如果你的建立还只是停留在所谓的SSH技术层次上,那么这类人基本找不到工作。 当前的就业环境是需要开发人员掌握大量的架构知识。 如果你先在不懂分布式开发,那么也是没有机会的。 如果你不具备良好的业务分析能力也是不行的。 好处:高工资。对于java学习的几点概念 基本概念:JDK,JVM、数据类型、方...

2018-06-12 00:47:29 645 1

原创 JVM内存模型与垃圾收集

JVM内存模型与垃圾收集JVM堆内存模型 JVM的垃圾收集主要指的是堆内存空间,那么在每一次执行GC的时候需要区分出哪些堆内存空间需要被回收,哪些不需要被回收,所以为了整体的回收处理方便,JVM将堆内存分为如下的几个组成部分,而这几个组成部分还需要去考虑JDK版本,现在的JVM内存划分就必须考虑JDK1.8之前和JDK1.8之后的问题了jdk1.8之前主要分为 新生代、Eden...

2018-06-11 11:05:32 216

原创 Java引用类型分类以及详解

Java引用类型分类以及详解- Java引用类型概述在JVM之中再好的算法,也敌不过一个好烂的程序员。一个程序要想写好有两点:按照开发标准进行、请写有用代码。 而对于垃圾的产生与回收的处理之中,要想进行更好的控制,就必须清楚的掌握Java中的四种引用方式。 强引用(Strong Reference):即使进行了多次的GC回收,即使JVM真的已经不够用了,即使JVM最终不得已抛出了O...

2018-06-11 00:10:46 8005 2

原创 JVM垃圾收集策略(包含G1垃圾回收器和传统GC)

JVM垃圾回收- jvm垃圾回收策略概述JVM会自己选择合适的垃圾收集策略,而用户也可以自己来设置所需要的垃圾收集策略,但是就个人而言,强烈建议采用默认的垃圾收集处理机制。垃圾的收集一定要分两个空间考虑:年轻代、老年代。老年代的内存空间要大于年轻代的内存空间,所以老年代的对象每一次执行GC都会消耗更多的时间。同一种垃圾收集的策略,有可能会根据触发内存代的不同有不同的效果,所...

2018-06-10 14:30:35 2369

原创 JVM执行分析

jvm详解概述对于java程序而言,现在应用的范围越来越广泛,那么对于从业者就不再只是单单能够实现项目需求就够了,除了这些之外,还需要对程序的调优具有一定的能力。 类加载器(ClassLoader),用户可以实现自定义的类加载器的处理操作,那么对于类加载器本身就属于JVM的重要组成范畴。java程序的执行流程: 每当使用了类加载器进行类加载之后实际上都表示启动了一个JVM的进程,那...

2018-06-09 15:26:54 742

原创 Redis数据库(四)

Redis主从配置- 主从模式概述Redis数据库与传统数据库属于并行关系,也就是说传统的关系型数据库保存的是结构化数据,而Redis保存的是一些所谓的“临时”数据,因为Redis具备一项很强的功能,“持久化数据”,发现Redis好像也可以做一些传统数据库的开发。但是现在Redis除了可以进行数据的存储之外,实际上也可以在一些系统的架构设计中作为作为数据的缓冲点:1.数据缓存 2...

2018-06-09 00:56:38 322

原创 Redis(三)进阶操作

Redis进阶操作Redis事务处理 Redis本身支持事务处理,但是这种支持的事务处理本身是存在设计缺陷的,而且与传统的关系型数据库的事务处理有些不同,首先先来看一下Redis中的事务支持命令:1.打开事务:multi 2.取消事务:discard 3.提交事务:exec范例:观察Redis中的事务: 设置一个数据:set age 30 打开事务支持:multi 执...

2018-06-08 23:28:20 741

原创 Redis数据库(二)

Redis数据操作redis-benchmark测试以及操作命令 Redis支持各种的数据类型,而且Redis操作数据的速度很快的。在Redis数据库里面有一个“redis-benchmark”性能测试工具,可以直接使用这个工具来观察Redis使用:/usr/local/redis/bin/redis-benchmark –help该命令所需要的参数如下: -h <...

2018-06-03 11:16:42 724

原创 Redis数据库(一)

Redis数据库NoSql介绍 对于数据库的认识,从传统的做法来讲,最初只有关系型数据库,关系型数据库并不是数据库一直以来的持续发展。 关系型数据库的操作核心语法:SQL,但是SQL语法要求太严格了,而且在进行SQL处理的时候一旦处理不当就会产生大量的笛卡儿积,所以很多人不认可SQL操作,而一部分人就主张使用命令来完成数据库的操作 例如:微软在90年代有一个数据库 ForPro,这个数...

2018-05-29 00:41:33 6568 1

原创 Maven主要功能以及概念介绍

Maven主要功能以及概念介绍Maven的主要功能 Maven是一种构建工具(打包项目)、依赖管理工具(资源依赖管理工具:主要用于集成资源)、项目信息聚合工具项目的开发环境(eclipse中包含jre包、 j2ee包)、测试环境的部署(Tomcat部署)是不一样的,主要体现在包的结构等 之前是通过Ant进行打包部署,在其中写相应的脚本,告诉需要引用哪些包。 Maven...

2018-05-22 00:48:27 20010 4

原创 WebLogic集群配置(三)

WebLogic集群配置weblogic创建代理服务器代理服务器仅仅用来转发请求,但是其本身也受主服务器的控制和管理,启动需要主服务器来启动创建Proxy服务器(代理服务器本身不需要部署项目,它仅仅用来转发用户请求) 所以直接创建并启动 代理服务服务器应该掌握子服务器server-2和server-3的资源和配置新建集群: 239.192.0.0 多点传送地...

2018-05-20 16:44:26 2972 1

原创 Weblogic基本配置-目录介绍(二)

weblogic目录详解1. 目录结构 user_projects:存放域的文件夹(必须要创建域后才可以产生) logs :存放日志信息 wlserver_10.3:weblogic目录 默认域的目录:Middleware\use_projects\domains\base_domains下边的 autodeploy: 部署项目的文件位置,用于存储主服务器部署的项目(在web...

2018-05-20 14:56:03 16416 1

原创 Weblogic基本配置(一)

Weblogic基本配置介绍了目前最常用的weblogic 11g 的使用, 包括安装、目录讲解、配置、MyEclipse中配置。 - Weblogic介绍 1.中间件 中间件(middleware)是基础软件的一大类, 属于可复用软件的范畴. 顾名思义,中间件处于操作系统软件与用户的应用软件的中间. Apache专门开发中间件的组织(可以推动整个行业技术的发展和应用) 每个中...

2018-05-20 00:34:13 16839 1

原创 JSON的配置和使用

Josn的配置和使用JSON的基本概念1.JSON(JavaScript Object Natation) —-javascript的对象表现形式,但是目前已经发展成为一种轻量级的数据交换格式最大特点:完全独立于语言的文本格式(跨平台数据格式)不依赖于任何语言、有结构的、方便人和机器解析使用场景: 1):不同语言之间的数据传递(Json的本质就是String,但是它是有格式的...

2018-05-19 21:26:48 13393 1

原创 RegExp过滤非法标签&正则匹配IP地址

RegExp过滤非法标签&正则匹配IP地址采用正则表达式防止前端html注入 如果文本域中包含html标签内容 ,进行非法攻击<body> <!-- --> html注入演示<script type="text/javascript">window.open("http://www.baidu.com","_bla...

2018-05-19 15:59:00 1200

原创 RegExp抓取图片

RegExp抓取图片Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl + Q插入链接 Ctrl + L插入代码 Ctrl + K插入图片 ...

2018-05-19 14:15:50 237 1

原创 正则表达式语法介绍

正则表达式用来匹配字符串的一系列匹配符,具有简洁、高效的特点(java、javascript、php都有应用): 在dos命令框中也应用匹配字符 dir *.doc dir ?.* (?代表一个字符)能够看懂 能够理解普通匹配符介绍 说明: 正则在不同语言的支持方法语法略有不同 js、java、php … 1:在js中如果要引入正则表达式,则需要:/…/(即以/...

2018-05-16 22:09:29 1000

空空如也

空空如也

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

TA关注的人

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