Windows下Linux安装

1. 下载Nginx for Windows压缩包

访问http://nginx.org/en/download.html ,或直接下载http://nginx.org/download/nginx-1.8.1.zip

2. 解压到特定目录,进入该目录

此处为 D:\Program Files\nginx-1.8.1

3. 运行命令行 start nginx

4. 查看状态 tasklist /fi "imagename eq nginx.exe"

5. 重新加载配置文件 nginx -s reload

nginx -s stop 强制停止
nginx -s quit "关机"

Linux下Nginx的安装:http://zhangguoli.cn/linux-nginx-install.html

Java Can't connect to X11 window server using 'localhost:11.0' as the value of the DISPLAY variable

Linux下启动Tomcat报错:

ERROR:java.lang.InternalError: Can't connect to X11 window server using 'localhost:11.0' as the value of the DISPLAY variable.

查询得知是因为linux上没有启动x server。

解决办法

1、 修改tomcat/bin/catalina.sh

在所有的-Dcatalina.home="$CATALINA_HOME" /后面增加-Djava.awt.headless=true \

 -Dcatalina.home="\"$CATALINA_HOME\"" \
 -Djava.awt.headless=true  \

2、export DISPLAY=:0

Nginx配置代理

Nginx的安装:http://zhangguoli.cn/nginx-install.html

假设有3台服务器,分别是:
A : 10.10.1.1 Nginx
B : 10.10.6.2:8090 bbb
C : 10.10.6.3:8086 ccc
没有配置Nginx代理前,B访问地址是 10.10.6.2:8090/bbb ,C的访问地址是10.10.6.3:8086/ccc
配置代理之后, B、C的访问地址分别是10.10.1.1/bbb ,10.10.1.1/ccc

修改nginx.conf

文件位置:./nginx/conf/nginx.conf

1. 在http和server节点分别include配置文件

- 阅读全文 -

Linux下Nginx安装

OS: CentOS release 6.5 (Final)

0、准备PCRE和Nginx安装包

下载pcre-8.40.tar.gz http://pcre.org
下载nginx-1.2.9.tar.gz http://nginx.org/en/download.html

1、安装依赖

yum -y install gcc openssl-devel pcre-devel zlib-devel

2、安装PCRE(使Nginx支持http rewrite的模块)

tar zxvf pcre-8.40.tar.gz
cd pcre-8.40
./configure
make
make install

3、安装Nginx

- 阅读全文 -

面向切面编程

  1. 要解决的问题(背景)

有一些功能需要应用到程序的多个地方但是又不想在每个业务点明确的调用它,比如日志,安全和事务管理.

  1. 横切关注点

散布于应用中多处的功能被称为横切关注点,简单来说就是影响应用多处的功能,比如日志.

  1. AOP可以实现横切关注点和他们所影响的对象间解耦

[图:日志系统在各个业务流程中的位置]

面向切面编程的使用步骤:

`定义通用的功能`,`定义这个功能以何方式在何处用`

横切关注点可以被模块化为特殊的类,这些类被称为切面(aspect).

这样做可以使关注点集中到一个地方,其次业务代码更简洁,主要关注点和次要关注点的代码分开在不同的位置.

AOP相关的术语

JavaScript实现iframe获取父窗口URL

    url = window.top.document.referrer ; 
    url = document.referrer;
    url = window.top.location.href;
    if (window.parent) { 
        url = window.parent.document.referrer;
    } 

Nginx配置favicon.ico

环境:Nginx日志报错说找不到favicon.ico文件

修改Nginx的配置文件nginx/conf/nginx.conf

  1. 如果原来Nginx已经配置了 root /home/wwwroot,直接把favicon.ico文件放到root对应的目录下即可
  1. 也可以单独设置 favicon.ico文件的路径
    location ~ ^/favicon\.ico$ {
        root    /home/nginx-assets/img;
    }

这样把favicon.ico放到/home/nginx-assets/img也可以实现效果,如下图:

张国利博客

Spring注解 @Profile : 多环境配置管理

运行时根据激活的Profile决定创建哪个bean

一、配置不同的profile

Spring 3.1只能用在类级别上

假设开发环境(dev)下返回10,生产环境(prod)返回1000。

@Configuration
@Profile("dev")
public class devConfig {
    @Bean
    public int num() {
        return new Integer(10);
    }
}
@Configuration
@Profile("prod")
public class prodConfig {
    @Bean
    public int num (){
        return new Integer(1000);
    }
}

- 阅读全文 -

初识JSON

1.对象:以{开始,以}结束,包含一系列非排序的名称/值对,每个非排序的名称/值对之间以,分区.
2.名称/值之间以:分开

3.可以是字符串,数值,对象,布尔值,有序列表,null
4.字符串:使用双引号括起来
5.数值:正数,负数,0,小数,用e或E表示的指数
6.布尔值:true或false
7.有序列表:用[ ]括起来,多个之间用,区分

更详细的定义可以查看RFC 4627JSON官网

上面的内容可以总结为下面这幅图

JSON-张国利博客

- 阅读全文 -

JUnit常用注解

待更新

JUnit入门JUnit运行流程中介绍了JUnit的常用注解@BeforeClass,@Before,@Test,@After,@AfterClass.

除此之外还有其他的注解:

  1. @Ignore 暂时忽略某些测试方法/测试类
    @Ignore
    @Test
    public void testXxx() throws Exception {
        
    }
    @Ignore
    public class TestJunit {

    }
  1. RunWith 运行器

- 阅读全文 -