自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

好运哥的博客

每天进步一点,一年获益良多!

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

原创 整理的,最全Nginx 配置文件详解及安装

当在FreeBSD使用系统PCRE库时,需要指定 --with-cc-opt="-I /usr/local/include"。--pid-path=path — 设置nginx.pid文件的完整路径,该文件存储了主进程的进程ID。当在FreeBSD使用系统PCRE库时,需要指定 --with-ld-opt="-L /usr/local/lib"。--sbin-path=path — 设置nginx可执行文件的完整路径,该路径仅在安装期间使用, 默认路径为prefix/sbin/nginx。

2022-09-20 11:07:41 4351 1

原创 Nginx简介

将两台tomcat解压出来,配置完毕相应的端口,然后在webapps目录下创建test目录,然后在test目录中创建index.html文件,随便写入一些内容,两台tomcat中test目录下的index.html文件内容要区分开来,例如写入1111111 / 222222222,如下图所示。如用户需要分片上传文件到服务器下,然后再由服务器将分片合并,这时如果用户的请求到达了不同的服务器,那么分片将存储于不同的服务器目录中,导致无法将分片合并,该场景则需要使用ip hash策略。

2022-09-09 10:20:35 153

转载 Linux chown命令详解使用格式和方法

指令名称 : chown 使用权限 : root 使用方式 : chown [-cfhvR] [--help] [--version] user[:group] file… 利用 chown 可以将档案的拥有者加以改变。这个指令只有是由系统管理者(root)所使用,一般使用者没有权限可以改变别人的档案拥有者,也没有权限可以自己的档案拥有者改设为别人。只有系统管理者(root)才有这样的权限...

2018-04-02 15:58:02 6187

转载 Java回调机制解读

模块间调用在一个应用系统中,无论使用何种语言开发,必然存在模块之间的调用,调用的方式分为几种:(1)同步调用同步调用是最基本并且最简单的一种调用方式,类A的方法a()调用类B的方法b(),一直等待b()方法执行完毕,a()方法继续往下走。这种调用方式适用于方法b()执行时间不长的情况,因为b()方法执行时间一长或者直接阻塞的话,a()方法的余下代码是无法执行下去的,这样会造成整个流

2018-01-04 17:15:58 340

原创 Appium使用教程_Android篇

一、Appium介绍Appium是一个开源的自动化测试工具,其支持iOS和安卓平台上的原生的,基于移动浏览器的,混合的应用。1、Appium 理念Appium是基于以下的四个理念设计来满足移动平台测试自动化的要求的:1)您不应该因为需要自动化测试您的应用而不得不以任何形式去重新编译或者修改你的app2)您不应该把自己固定在一门特定的语言和一个特定的框架上去实现和运行你的测试

2018-01-04 16:38:07 1433

原创 什么是域名?什么网站名?什么是URL?

什么是域名?现实中,域名使用的实在太多了,但域名的详细含义你理解么?你知道域名是什么吗?下面,小编将带你详解域名的含义!方法/步骤域名,相信大家都不默认,也使用过无数次!比如:google.com、baidu.com、163.com等。这时候,你可能要奇怪了,为什么小编没有在前面加上www?因为正常情况下,不应该是www.baidu.com之类的吗?这里,小编可以明确的告诉你,加上www,就不再是

2018-01-02 15:18:09 990

原创 Java中的split函数的用法

Java中的 split  函数是用于按指定字符(串)或正则去分割某个字符串,结果以字符串数组形式返回;例如:[java] view plain copy String str="1234@abc";  String[] a = str.split("@");  System.out.println("处理结果: "+a[0]+","+a[1]);   //

2017-12-29 16:55:45 420

原创 Spring MVC 解读——@Autowired、@Controller、@Service从原理层面来分析

Spring MVC 解读——@Autowired一、@Autowired    作为一个Spring开发者对@Autowired注解必定是非常了解了, 顾名思义自动装配,应该是Spring会自动将我们标记为@Autowired的元素装配好,与其猜测不如看看它的定义:[java] view plain copy @Target({ElementT

2017-12-26 20:09:38 1542

原创 注解@Slf4j

如果不想每次都写private  final Logger logger = LoggerFactory.getLogger(XXX.class);可以用注解@Slf4j一、在pom文件加入依赖   org.projectlombok   lombok二、代码package com.sell;import lombok.extern.slf4j.Slf4j;

2017-12-26 19:55:59 31286 12

原创 tomcat端口被占用了怎么办

学习网页设计的同学都会用到tomcat这个软件,在安装的时候我们一般都会选择端口为8080端口,这个端口一般情况下是不会有程序占用的,所以我们运行tomcat不会出现什么问题,但是如果一旦别占用,我们的tomcat就无法启动了,本次经验就来大家一起分享一下如何解决这个问题。工具/原料tomcat检测正在使用的端口

2017-12-07 17:05:44 2238

原创 jenkins安装部署全过程

基本配置:1、Linux安装配置jdk环境1.1、上传到 Linux 服务器;例如:上传至: cd /usr/local1.2、解压:rpm -ivh jdk-8u111-linux-x64.rpm1.3、环境变量配置cd /etc在etc下,找到 profile文件,增加如下如下配置:#set java environmentJAVA_HOME=/usr/

2017-10-19 17:33:27 672

原创 持续集成工具集之四 Jenkins+Maven+Git+Tomcat 项目构建和自动部署

安装和配置好Jenkins之后,就可以开始配置构建项目了新建因为需要构建的项目是maven项目,所以这里填好项目的名称之后选择“构建一个maven项目”,然后点左下的ok如果这里没有这个构建maven项目的选项的话,安装一个Maven Integration plugin的插件即可然后就会转到构建项目的配置页面需要配置的地方:源码管理因为我们的项目是由git

2017-10-19 16:55:05 621

转载 Jenkins入门系列之—Jenkins安装与配置

第二章 Jenkins安装与配置2 Jenkins安装在最简单的情况下,Jenkins 只需要两个步骤:1.下载最新的版本(一个 WAR 文件)。Jenkins官方网址: http://Jenkins-ci.org/2.运行 java -jar jenkins.war注意:Jenkins 需要运行 Java 5以及以上的版本。还有一种安装方式就是将下载的war包文件部署到 

2017-10-16 20:05:34 38310 3

原创 在tomcat中部署静态资源访问

如果你想让你的服务器直接能访问某一个目录,不需要经过servlet,也不需要用ftp。在tomcat下conf文件夹中修改server.xmlHost name="localhost"  appBase="webapps"            unpackWARs="true" autoDeploy="true">        <!-- SingleSignOn valve, s

2017-10-16 17:57:58 11347

原创 怎么将静态网页放到tomcat服务器,并绑定域名,提供访问?

通过tomcat的配置来实现这样的需求,首先打开tomcat目录下的conf/中的server.xml,在中可以看到原来是这样的: <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redi

2017-10-16 17:40:01 8280

原创 Linux下安装Tomcat服务器和部署Web应用

一、上传Tomcat服务器    二、安装Tomcat服务器2.1、解压tomcat服务器压缩包    2.2、配置环境变量  tomcat服务器运行时是需要JDK支持的,所以必须配置好JDK用到的那些环境变量    编辑/etc下的profile文件,加上如下内容:    2.3、修改tomcat服务器的启动端口    修改将Tomca

2017-10-16 14:23:51 412

原创 Linux安装配置Tomcat教程

本文为大家分享了Linux安装配置Tomcat,供大家参考,具体内容如下1、下载 tomcat Linux 版本  oracle 官网下载地址:http://tomcat.apache.org/download-80.cgi  百度云盘链接:http://pan.baidu.com/s/1eSekADs 密码: 5inw2、在 usr 目录下新建 tomcat 目录,然后将 下载的

2017-10-16 11:32:52 12102

原创 eclipse如何导出WAR包

WAR包是用于将java项目部署在中间件上的,例如部署在Tomcat,Weblogic,WebSphere等等,那么如何使用eclipse导出WAR包呢?工具/原料eclipse方法/步骤注意:本经验采用的Eclipse版本为Eclipse Java EE IDE for Web Developers.

2017-10-12 14:51:09 12714

原创 如何将Eclipse中Web项目打成war包

war包即Web归档文件,将Web项目打成war包可以直接拷贝到Web服务器发布目录(例如Tomcat服务器webapps目录 ),当Tomcat启动后该压缩文件自动解压,war包方便了web工程的发布,那么在Eclipse中如何将Web项目打成war包呢?          1、有如下venus工程:          2、鼠标选中venus工程并点击鼠标右键,出现下图:

2017-10-12 14:47:32 381

原创 高并发Java(7):并发设计模式

1. 什么是设计模式在软件工程中,设计模式(design pattern)是对软件设计中普遍存在(反复出现)的各种问题 ,所提出的解决方案。这个术语是由埃里希·伽玛(Erich Gamma)等人在1990年代从建筑设计领 域引入到计算机科学的。著名的4人帮: Erich Gamma,Richard Helm, Ralph Johnson ,John Vlissides (Gof)《设计

2017-10-12 11:11:13 375

原创 高并发Java(6):JDK并发包2

1. 线程池的基本使用1.1.为什么需要线程池平时的业务中,如果要使用多线程,那么我们会在业务开始前创建线程,业务结束后,销毁线程。但是对于业务来说,线程的创建和销毁是与业务本身无关的,只关心线程所执行的任务。因此希望把尽可能多的cpu用在执行任务上面,而不是用在与业务无关的线程创建和销毁上面。而线程池则解决了这个问题,线程池的作用就是将线程进行复用。1.2.JDK为我们提供了哪些支持

2017-10-12 11:09:58 330

原创 高并发Java(5):JDK并发包1

在高并发Java(2):多线程基础中,我们已经初步提到了基本的线程同步操作。这次要提到的是在并发包中的同步控制工具。1. 各种同步控制工具的使用1.1 ReentrantLockReentrantLock感觉上是synchronized的增强版,synchronized的特点是使用简单,一切交给JVM去处理,但是功能上是比较薄弱的。在JDK1.5之前,ReentrantLock的性能要

2017-10-12 11:08:41 646

原创 高并发Java(4):无锁

在高并发Java(1):前言中已经提到了无锁的概念,由于在jdk源码中有大量的无锁应用,所以在这里介绍下无锁。1 无锁类的原理详解1.1 CASCAS算法的过程是这样:它包含3个参数CAS(V,E,N)。V表示要更新的变量,E表示预期值,N表示新值。仅当V值等于E值时,才会将V的值设为N,如果V值和E值不同,则说明已经有其他线程做了更新,则当前线程什么都不做。最后,CAS返回当

2017-10-12 11:06:53 276

原创 高并发Java(3):Java内存模型和线程安全

网上很多资料在描述Java内存模型的时候,都会介绍有一个主存,然后每个工作线程有自己的工作内存。数据在主存中会有一份,在工作内存中也有一份。工作内存和主存之间会有各种原子操作去进行同步。下图来源于这篇Blog但是由于Java版本的不断演变,内存模型也进行了改变。本文只讲述Java内存模型的一些特性,无论是新的内存模型还是旧的内存模型,在明白了这些特性以后,看起来也会更加清晰。1.

2017-10-12 11:05:19 227

原创 高并发Java(2):多线程基础

1. 什么是线程线程是进程内的执行单元某个进程当中都有若干个线程。线程是进程内的执行单元。使用线程的原因是,进程的切换是非常重量级的操作,非常消耗资源。如果使用多进程,那么并发数相对来说不会很高。而线程是更细小的调度单元,更加轻量级,所以线程会较为广泛的用于并发设计。在Java当中线程的概念和操作系统级别线程的概念是类似的。事实上,Jvm将会把Java中的线程映射到操作系统

2017-10-12 11:03:34 201

原创 高并发Java(1):前言

1、关于高并发的几个重要概念1.1 同步和异步首先这里说的同步和异步是指函数/方法调用方面。很明显,同步调用会等待方法的返回,异步调用会瞬间返回,但是异步调用瞬间返回并不代表你的任务就完成了,他会在后台起个线程继续进行任务。1.2 并发和并行并发和并行在外在表象来说,是差不多的。由图所示,并行则是两个任务同时进行,而并发呢,则是一会做一个任务一会又切换做另一个任务。所以

2017-10-12 11:00:51 202

转载 Maven的本地仓库、中心仓库、私服

本地仓库设置本地仓库到指定目录,而不使用Maven默认的配置(默认放在C:/user/m2.目录下)打开Maven的解压目录E:\soft\apache-maven-3.1.0\conf,修改settings.xml配置localRepository即可完成本地仓库的设置:Xml代码  localRepository>E:/repository/maven/

2017-10-12 10:39:34 3439 1

转载 maven仓库--私服(Nexus的配置使用)

maven--私服的搭建(Nexus的使用)和注意的问题私服是什么私服,私有服务器,是公司内部Maven项目经常需要的东东,不总结一下,不足以体现出重视。Nexus是常用的私用Maven服务器,一般是公司内部使用。下载地址是http://www.sonatype.org/nexus/go。默认端口8081,这里我选择最新版nexus-2.5.0-04。常用功能N

2017-10-11 11:50:07 197

转载 [Java] 静态方法与非静态方法的区别

生命周期(Lifecycle): 静态方法(Static Method)与静态成员变量一样,属于类本身,在类装载的时候被装载到内存(Memory),不自动进行销毁,会一直存在于内存中,直到JVM关闭。非静态方法(Non-Static Method)又叫实例化方法,属于实例对象,实例化后才会分配内存,必须通过类的实例来引用。不会常驻内存,当实例对象被JVM 回收之后,也跟着消失。在内

2017-08-28 19:35:55 386

转载 静态方法与非静态方法的区别

首先,两者本质上的区别是:静态方法是在类中使用staitc修饰的方法,在类定义的时候已经被装载和分配。而非静态方法是不加static关键字的方法,在类定义时没有占用内存,只有在类被实例化成对象时,对象调用该方法才被分配内存。       其次,静态方法中只能调用静态成员或者方法,不能调用非静态方法或者非静态成员,而非静态方法既可以调用静态成员或者方法又可以调用其他的非静态成员或者方法。例子

2017-08-28 18:26:48 400

转载 IntelliJ IDEA 14 注册码

IntelliJ IDEA 14 下载地址:IntelliJ IDEA 14 下载 分享几个license:(1)key:IDEAvalue:61156-YRN2M-5MNCN-NZ8D2-7B4EW-U12L4 (2)key:huangweivalue:97493-G3A41-0SO24-W57LI-Y2UGI-JGTU2

2017-08-24 20:14:12 3359

转载 java--对象引用与对象的区别

一、前言       在java学习中,理解对象以及对象的引用是万里长征的第一步。但是,现在大量的java学习书籍都将对象以及对象的引用混为一谈,然而实际上它们有着本质的区别。为了帮助更多的java学者更好的理解,我将自己的学习理解记录下来。如有理解不全或者错误的地方,欢迎大家批评指正。二、分析对象引用与对象的区别       为了接下来进行更好的分析,我先建立一个Demo类,用于后面

2017-08-24 14:38:56 691 2

转载 java IO流文件的输入流具体实例解析(一)

这里是在网上找来的几个关于 IO流文件的输入流具体实例代码,接下来试着将其解析得更清楚明白一些,希望初学者看完能有所收获,这篇这个例子的代码是把文件上的字符一个个连续输出方法/步骤网上找来的实例import java.io.*;public class ReadFile{

2017-08-23 20:05:22 856

原创 IO流常用方法,流的用法,代码例子

/** * 一个汉字是一个字符,就是2个字节,就是16位,所以,要读取汉字,还得用字符流 *-------------------------------------- 基础流---------------------------------------------- */FileInputStream ://(字节输入流,一次读取1个字节(就是8位))     FileI

2017-08-23 19:04:51 434

原创 Java中Date各种相关用法

Java中Date各种相关用法(一)1.计算某一月份的最大天数Java代码Calendar time=Calendar.getInstance(); time.clear(); time.set(Calendar.YEAR,year); time.set(Calendar.MONTH,i-1);//注意,Calendar对象默认一月为0 int day=time.getActu

2017-08-23 18:32:33 403

转载 java IO流文件的读写具体实例

IO流的分类:1、根据流的数据对象来分:高端流:所有的内存中的流都是高端流,比如:InputStreamReader  低端流:所有的外界设备中的流都是低端流,比如InputStream,OutputStream 如何区分:所有的流对象的后缀中包含Reader或者Writer的都是高端流,反之,则基本上为低端流,不过也有例外,比如PrintStream就是高端流2、根据数据

2017-08-23 16:22:44 5356 1

原创 HTTP协议中的短轮询、长轮询、长连接和短连接

序言最近刚到公司不到一个月,正处于熟悉项目和源码的阶段,因此最近经常会看一些源码。在研究一个项目的时候,源码里面用到了HTTP的长轮询。由于之前没太接触过,因此LZ便趁着这个机会,好好了解了一下HTTP的长长短短。了解的方式主要都是LZ在网络上获取的,这里只是谈一下LZ对于这四种叫法最直观的理解。如果你之前不懂的话,可以帮你普及一下,如果你之前就懂得话,可以互相对照一下。以前的误解

2017-08-22 17:49:22 259

原创 聊天程序(基于Socket、Thread)

聊天程序简述1、目的:主要是为了阐述Socket,以及应用多线程,本文侧重Socket相关网路编程的阐述。如果您对多线程不了解,大家可以看下我的上一篇博文浅解多线程 。2、功能:此聊天程序功能实现了服务端跟多个客户端之间的聊天,可以群发消息,选择ip发消息,客户端向服务端发送文件。 (例子为WinForm应用程序)Socket,端口,Tcp,UDP。 概念 1、So

2017-08-22 17:46:27 676 1

原创 浅解多线程

多线程的相关概念1.进程:是操作系统结构的基础;是一个正在执行的程序;计算机中正在运行的程序实例;可以分配给处理器并由处理器执行的一个实体;由单一顺序的执行显示,一个当前状态和一组相关的系统资源所描述的活动单元。2.线程:线程是程序中一个单一的顺序控制流程。是程序执行流的最小单元。另外,线程是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点在运行中

2017-08-22 17:42:59 197

原创 Nginx代理功能与负载均衡详解

序言Nginx的代理功能与负载均衡功能是最常被用到的,关于nginx的基本语法常识与配置已在上篇文章中有说明,这篇就开门见山,先描述一些关于代理功能的配置,再说明负载均衡详细。Nginx代理服务的配置说明1、上一篇中我们在http模块中有下面的配置,当代理遇到状态码为404时,我们把404页面导向百度。error_page 404 https://www.baidu.com;

2017-08-22 17:39:40 396

空空如也

空空如也

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

TA关注的人

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