<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[fengwind1的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/fengwind1</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; fengwind1]]></copyright><item><title><![CDATA[矩阵组合]]></title><link>https://blog.youkuaiyun.com/fengwind1/article/details/77878045</link><guid>https://blog.youkuaiyun.com/fengwind1/article/details/77878045</guid><author>fengwind1</author><pubDate>Thu, 07 Sep 2017 10:26:26 +0800</pubDate><description><![CDATA[public class Main {
    public static void main(String[] args){
        String[][] xx={{"A1","A2","A3","A4"},{"B1","B2","B3"},{"C1","C2","C3"}};
        int total=1;
        //所有组合的计数
        for(Stri]]></description><category></category></item><item><title><![CDATA[mysql修改root密码]]></title><link>https://blog.youkuaiyun.com/fengwind1/article/details/72320649</link><guid>https://blog.youkuaiyun.com/fengwind1/article/details/72320649</guid><author>fengwind1</author><pubDate>Tue, 16 May 2017 18:09:47 +0800</pubDate><description><![CDATA[如果记得root密码，可用如下方法
1、登录mysql客户端，执行set password for root@localhost = password('123');
2、登录mysql客户端，切换到mysql数据库,mysql5.6及以前版本执行update
 user set password=password('123') where user='root' and host='loc]]></description><category></category></item><item><title><![CDATA[基于内置锁的生产者消费者模型]]></title><link>https://blog.youkuaiyun.com/fengwind1/article/details/71271559</link><guid>https://blog.youkuaiyun.com/fengwind1/article/details/71271559</guid><author>fengwind1</author><pubDate>Sat, 06 May 2017 16:43:14 +0800</pubDate><description><![CDATA[这里有三个概念，生产者，消费者，仓库
public class Repository {
    private int capability;//仓库容量
    private boolean stoped=false;//生产者线程是否退出的标志，如果生产者线程退出，则消费者线程消费完所以商品后也退出，而不是等待
    private List list=new ArrayList<>(]]></description><category></category></item><item><title><![CDATA[spring RestTemplate上传文件乱码]]></title><link>https://blog.youkuaiyun.com/fengwind1/article/details/65630274</link><guid>https://blog.youkuaiyun.com/fengwind1/article/details/65630274</guid><author>fengwind1</author><pubDate>Fri, 24 Mar 2017 14:18:06 +0800</pubDate><description><![CDATA[用页面测试表单中的中文没有乱码，初步定位是RestTemplate的问题，通过调试发现，FormHttpMessageConverter实例时，添加了其支持的转换器，ByteArrayHttpMessageConverter和StringHttpMessageConverter。
ByteArrayHttpMessageConverter是用于出来文件的，StringHttpMessageCon]]></description><category></category></item><item><title><![CDATA[smack使用TSL连接openfire]]></title><link>https://blog.youkuaiyun.com/fengwind1/article/details/54667208</link><guid>https://blog.youkuaiyun.com/fengwind1/article/details/54667208</guid><author>fengwind1</author><pubDate>Sun, 22 Jan 2017 11:08:45 +0800</pubDate><description><![CDATA[连接openfire服务器有三种方式
纯文本
starttls
tls/ssl
第二种是纯文本的扩展协议，如果双方都支持加密，则可将纯文本传输升级为加密传输，加密传输和非加密
传输公用一个端口
public XMPPConnectionFactory(@Value("${im.host}") String host,@Value("${truststore.pwd}") String ]]></description><category></category></item><item><title><![CDATA[xstream与resttemplate的联合使用]]></title><link>https://blog.youkuaiyun.com/fengwind1/article/details/52880799</link><guid>https://blog.youkuaiyun.com/fengwind1/article/details/52880799</guid><author>fengwind1</author><pubDate>Fri, 21 Oct 2016 10:58:20 +0800</pubDate><description><![CDATA[最近做微信支付开发，接口都是xml数据，决定应xstream。用之后发现spring的默认XStreamMarshaller不能达到要求，所以做了自定义
配置如下


    
        
            com.cloudolp.base.SmsResponse
            com.cloudolp.base.weixinpay.UnifiedorderReque]]></description><category></category></item><item><title><![CDATA[ajax跨域解决方案以及spring mvc中的支持]]></title><link>https://blog.youkuaiyun.com/fengwind1/article/details/52840436</link><guid>https://blog.youkuaiyun.com/fengwind1/article/details/52840436</guid><author>fengwind1</author><pubDate>Mon, 17 Oct 2016 18:13:15 +0800</pubDate><description><![CDATA[ajax跨域问题主要有有三种解决方法
1、使用代理将需要跨域的地址挂载到本域下面
2、使用jsonp
3、使用Access-Control-Allow-Origin响应头


第一种方案需要引入代理服务器，生产环境中一般都会用nginx或者apache http做负载均衡，可以很容易实现，自己的开发环境一般都没有这东西，需要引入，增加了复杂性
第二种方案需要修改返回的数据，跨域请求的]]></description><category></category></item><item><title><![CDATA[mysql日期转换]]></title><link>https://blog.youkuaiyun.com/fengwind1/article/details/52584510</link><guid>https://blog.youkuaiyun.com/fengwind1/article/details/52584510</guid><author>fengwind1</author><pubDate>Mon, 19 Sep 2016 11:54:16 +0800</pubDate><description><![CDATA[mysql日期和字符相互转换方法

date_format(date,'%Y-%m-%d') -------------->oracle中的to_char();

str_to_date(date,'%Y-%m-%d') -------------->oracle中的to_date();




%Y：代表4位的年份

%y：代表2为的年份



%m：代表月, 格式]]></description><category></category></item><item><title><![CDATA[Java各版本语法增强特性]]></title><link>https://blog.youkuaiyun.com/fengwind1/article/details/52248434</link><guid>https://blog.youkuaiyun.com/fengwind1/article/details/52248434</guid><author>fengwind1</author><pubDate>Fri, 19 Aug 2016 10:36:30 +0800</pubDate><description><![CDATA[Java SE 8增强特性
·        Lambda 表达式可以封装一个简单的行为并把它传递到其他代码. 你可以使lambda表达式用特定的行为处理集合中的每一个元素. Lambda下面的特性使用了lambda表达式:
o   方法引用 是简洁的，可读性更高的lambda表达式。它用于引用已存在的方法.
o   默认方法 可以为接口添加一个新的功能，并且兼容较老的版本的接口. 他们是已]]></description><category></category></item><item><title><![CDATA[keytool制作CA根证书以及颁发二级证书]]></title><link>https://blog.youkuaiyun.com/fengwind1/article/details/52191520</link><guid>https://blog.youkuaiyun.com/fengwind1/article/details/52191520</guid><author>fengwind1</author><pubDate>Fri, 12 Aug 2016 16:05:17 +0800</pubDate><description><![CDATA[keytool是jdk自带的一款ssl管理工具，jdk6和jdk7的keytool命令有些不同，jdk7的兼容jdk6的，这里用的是jdk7下的keytool。搞了两天，遇到各种问题，甚是艰难啊
[root@localhost ~]# keytool -help
密钥和证书管理工具

命令:

 -certreq            生成证书请求
 -changealias        更改]]></description><category></category></item><item><title><![CDATA[httpclient4.x访问https]]></title><link>https://blog.youkuaiyun.com/fengwind1/article/details/52181850</link><guid>https://blog.youkuaiyun.com/fengwind1/article/details/52181850</guid><author>fengwind1</author><pubDate>Thu, 11 Aug 2016 14:51:06 +0800</pubDate><description><![CDATA[https有单向认证和双向认证之分，单向认证即客户端只会认证服务端，双向认证是客户端需要认证服务端，服务端也需要认证客户端。
先说单向认证，浏览器访问服务端，服务端接收请求，会把证书(包含密钥和其他信息)和加密后响应返回给浏览器。如果这个证书不是向第三方权威机构申请的，浏览器会提示证书有问题(使用httpclient访问的话会报错)。如果忽略错误，则浏览器接受证书并解密响应，发送的数据也用此密钥]]></description><category></category></item><item><title><![CDATA[TOMCAT-SSL双向认证-配置实例]]></title><link>https://blog.youkuaiyun.com/fengwind1/article/details/52174579</link><guid>https://blog.youkuaiyun.com/fengwind1/article/details/52174579</guid><author>fengwind1</author><pubDate>Wed, 10 Aug 2016 17:34:45 +0800</pubDate><description><![CDATA[SSL (Secure Socket Layer - 安全套接字层)
功能：保障在Internet上数据传输之安全，利用数据加密(Encryption)技术，确保数据在网络上之传输过程中不会被截取及窃听，防止篡改。
 
如何让我们的WEB应用程序应用SSL安全保障？经过几天摸索，终于实现 TOMCAT+SSL 双向认证，也就是说，首先，客户端将要认证服务器的安全性，确保访问的是正确的服务器，]]></description><category></category></item><item><title><![CDATA[关于tomcat设置根目录的验证]]></title><link>https://blog.youkuaiyun.com/fengwind1/article/details/52165379</link><guid>https://blog.youkuaiyun.com/fengwind1/article/details/52165379</guid><author>fengwind1</author><pubDate>Wed, 10 Aug 2016 10:17:18 +0800</pubDate><description><![CDATA[1,设置跟路径时，三种方式 

在Tomcat默认安装后，tomcat的主目录是webapps/root目录，所以如果想改变tomcat的主目录的话可以如下所做，所以 
第一种方法是： 
打开C:/Tomcat/conf/server.xml，在之间 
加入代码： 
这样重新启动tomcat，我们的主目录就被设置为dolphin这个项目了。 

第二种方法是： 
将tomcat安]]></description><category></category></item><item><title><![CDATA[tomcat7集群(session复制)]]></title><link>https://blog.youkuaiyun.com/fengwind1/article/details/52163096</link><guid>https://blog.youkuaiyun.com/fengwind1/article/details/52163096</guid><author>fengwind1</author><pubDate>Tue, 09 Aug 2016 16:15:06 +0800</pubDate><description><![CDATA[tomcat集群的主要方法有三种：
1、采用粘性会话，即某个ip只会访问集群中的某一台机器，这样就可以简单的解决session共享的问题；
2、采用会话共享，目前网上较多的案例是使用memcahed作为共享容器，需要开发以memcahed作为容器的会话管理器，然后配置到tomcat中。
3、采用session复制技术，tomcat本身已支持该功能。
三种方案各有优缺点。第一种存在部分单点问]]></description><category></category></item><item><title><![CDATA[二维码生成和解析]]></title><link>https://blog.youkuaiyun.com/fengwind1/article/details/52057817</link><guid>https://blog.youkuaiyun.com/fengwind1/article/details/52057817</guid><author>fengwind1</author><pubDate>Thu, 28 Jul 2016 18:37:41 +0800</pubDate><description><![CDATA[使用开源的二维码库zxing，需要两个依赖包core和javase，core是必须的
依赖包如下：

com.google.zxing
javase
3.2.1


代码如下：
package com.xiangyi.qrcode;

import java.awt.image.BufferedImage;
import java.io.IOException;
import j]]></description><category></category></item><item><title><![CDATA[HttpClient4.5和RestTemplate使用]]></title><link>https://blog.youkuaiyun.com/fengwind1/article/details/52026422</link><guid>https://blog.youkuaiyun.com/fengwind1/article/details/52026422</guid><author>fengwind1</author><pubDate>Mon, 25 Jul 2016 19:25:00 +0800</pubDate><description><![CDATA[普通form表单提交(application/x-www-form-urlencoded)
HttpPost post=new HttpPost(basePath)
HttpParams params=new BasicHttpParams()
params.setParameter("name",张三)
params.setParameter("age",18)
post.setParams(]]></description><category></category></item><item><title><![CDATA[代理http请求获取客户端IP]]></title><link>https://blog.youkuaiyun.com/fengwind1/article/details/51992528</link><guid>https://blog.youkuaiyun.com/fengwind1/article/details/51992528</guid><author>fengwind1</author><pubDate>Fri, 22 Jul 2016 11:10:08 +0800</pubDate><description><![CDATA[外界流传的JAVA/PHP服务器端获取客户端IP都是这么取的：
伪代码：
1）ip = request.getHeader("X-FORWARDED-FOR ")
2）如果该值为空或数组长度为0或等于"unknown"，那么：
ip = request.getHeader("Proxy-Client-IP")
3）如果该值为空或数组长度为0或等于"unknown"，那么：
ip = r]]></description><category></category></item><item><title><![CDATA[JDBC Class.forName引发的思考]]></title><link>https://blog.youkuaiyun.com/fengwind1/article/details/51980216</link><guid>https://blog.youkuaiyun.com/fengwind1/article/details/51980216</guid><author>fengwind1</author><pubDate>Thu, 21 Jul 2016 11:43:49 +0800</pubDate><description><![CDATA[jdbc连接的代码一般都是这样：package com.xiangyi.test;


import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;




public class ConnectionFactory {
	public static Conn]]></description><category></category></item><item><title><![CDATA[java 图片处理]]></title><link>https://blog.youkuaiyun.com/fengwind1/article/details/51919848</link><guid>https://blog.youkuaiyun.com/fengwind1/article/details/51919848</guid><author>fengwind1</author><pubDate>Fri, 15 Jul 2016 18:34:46 +0800</pubDate><description><![CDATA[用到两个第三方库
1、thumbnailator：https://github.com/coobird/thumbnailator
2、TwelveMonkeys：https://github.com/haraldk/TwelveMonkeys
thumbnailator是图片处理的工具类，提供了很多图片处理的便捷的方法，这样我们就不要用jdk底层的ImageIO类了
TwelveMonk]]></description><category></category></item><item><title><![CDATA[小白安装php(centos+nginx+php5)]]></title><link>https://blog.youkuaiyun.com/fengwind1/article/details/51838536</link><guid>https://blog.youkuaiyun.com/fengwind1/article/details/51838536</guid><author>fengwind1</author><pubDate>Wed, 06 Jul 2016 16:00:37 +0800</pubDate><description><![CDATA[工作好几年，一直做java，一直没玩过php,现在公司要搞个商城，小公司没精力重新开发，准备买个别人的，做二次开发。人家的是php,没办法，就叫我先把他们的项目跑起来。
先吐槽一下，国内这些做产品的真的太他妈水了，php也水。php没有向后兼容，基本算是完全固定版本。这个做产品的也不说要什么样的版本，版本太高报错，版本太低也报错
，本人外行，以为像java，弄个比较新的版本总没问题。遇到的种种]]></description><category></category></item></channel></rss>