- 博客(42)
- 资源 (5)
- 问答 (4)
- 收藏
- 关注
原创 矩阵组合
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
2017-09-07 10:26:26
1291
转载 mysql修改root密码
如果记得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
2017-05-16 18:09:47
410
原创 基于内置锁的生产者消费者模型
这里有三个概念,生产者,消费者,仓库public class Repository { private int capability;//仓库容量 private boolean stoped=false;//生产者线程是否退出的标志,如果生产者线程退出,则消费者线程消费完所以商品后也退出,而不是等待 private List list=new ArrayList<>(
2017-05-06 16:43:14
490
原创 spring RestTemplate上传文件乱码
用页面测试表单中的中文没有乱码,初步定位是RestTemplate的问题,通过调试发现,FormHttpMessageConverter实例时,添加了其支持的转换器,ByteArrayHttpMessageConverter和StringHttpMessageConverter。ByteArrayHttpMessageConverter是用于出来文件的,StringHttpMessageCon
2017-03-24 14:18:06
3864
原创 smack使用TSL连接openfire
连接openfire服务器有三种方式纯文本starttlstls/ssl第二种是纯文本的扩展协议,如果双方都支持加密,则可将纯文本传输升级为加密传输,加密传输和非加密传输公用一个端口public XMPPConnectionFactory(@Value("${im.host}") String host,@Value("${truststore.pwd}") String
2017-01-22 11:08:45
2517
原创 xstream与resttemplate的联合使用
最近做微信支付开发,接口都是xml数据,决定应xstream。用之后发现spring的默认XStreamMarshaller不能达到要求,所以做了自定义配置如下 com.cloudolp.base.SmsResponse com.cloudolp.base.weixinpay.UnifiedorderReque
2016-10-21 10:58:20
1273
原创 ajax跨域解决方案以及spring mvc中的支持
ajax跨域问题主要有有三种解决方法1、使用代理将需要跨域的地址挂载到本域下面2、使用jsonp3、使用Access-Control-Allow-Origin响应头第一种方案需要引入代理服务器,生产环境中一般都会用nginx或者apache http做负载均衡,可以很容易实现,自己的开发环境一般都没有这东西,需要引入,增加了复杂性第二种方案需要修改返回的数据,跨域请求的
2016-10-17 18:13:15
1218
转载 mysql日期转换
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:代表月, 格式
2016-09-19 11:54:16
339
翻译 Java各版本语法增强特性
Java SE 8增强特性· Lambda 表达式可以封装一个简单的行为并把它传递到其他代码. 你可以使lambda表达式用特定的行为处理集合中的每一个元素. Lambda下面的特性使用了lambda表达式:o 方法引用 是简洁的,可读性更高的lambda表达式。它用于引用已存在的方法.o 默认方法 可以为接口添加一个新的功能,并且兼容较老的版本的接口. 他们是已
2016-08-19 10:36:30
1379
原创 keytool制作CA根证书以及颁发二级证书
keytool是jdk自带的一款ssl管理工具,jdk6和jdk7的keytool命令有些不同,jdk7的兼容jdk6的,这里用的是jdk7下的keytool。搞了两天,遇到各种问题,甚是艰难啊[root@localhost ~]# keytool -help密钥和证书管理工具命令: -certreq 生成证书请求 -changealias 更改
2016-08-12 16:05:17
21750
1
原创 httpclient4.x访问https
https有单向认证和双向认证之分,单向认证即客户端只会认证服务端,双向认证是客户端需要认证服务端,服务端也需要认证客户端。先说单向认证,浏览器访问服务端,服务端接收请求,会把证书(包含密钥和其他信息)和加密后响应返回给浏览器。如果这个证书不是向第三方权威机构申请的,浏览器会提示证书有问题(使用httpclient访问的话会报错)。如果忽略错误,则浏览器接受证书并解密响应,发送的数据也用此密钥
2016-08-11 14:51:06
2876
转载 TOMCAT-SSL双向认证-配置实例
SSL (Secure Socket Layer - 安全套接字层)功能:保障在Internet上数据传输之安全,利用数据加密(Encryption)技术,确保数据在网络上之传输过程中不会被截取及窃听,防止篡改。 如何让我们的WEB应用程序应用SSL安全保障?经过几天摸索,终于实现 TOMCAT+SSL 双向认证,也就是说,首先,客户端将要认证服务器的安全性,确保访问的是正确的服务器,
2016-08-10 17:34:45
363
原创 关于tomcat设置根目录的验证
1,设置跟路径时,三种方式 在Tomcat默认安装后,tomcat的主目录是webapps/root目录,所以如果想改变tomcat的主目录的话可以如下所做,所以 第一种方法是: 打开C:/Tomcat/conf/server.xml,在之间 加入代码: 这样重新启动tomcat,我们的主目录就被设置为dolphin这个项目了。 第二种方法是: 将tomcat安
2016-08-10 10:17:18
1000
原创 tomcat7集群(session复制)
tomcat集群的主要方法有三种:1、采用粘性会话,即某个ip只会访问集群中的某一台机器,这样就可以简单的解决session共享的问题;2、采用会话共享,目前网上较多的案例是使用memcahed作为共享容器,需要开发以memcahed作为容器的会话管理器,然后配置到tomcat中。3、采用session复制技术,tomcat本身已支持该功能。三种方案各有优缺点。第一种存在部分单点问
2016-08-09 16:15:06
11003
原创 二维码生成和解析
使用开源的二维码库zxing,需要两个依赖包core和javase,core是必须的依赖包如下:com.google.zxingjavase3.2.1代码如下:package com.xiangyi.qrcode;import java.awt.image.BufferedImage;import java.io.IOException;import j
2016-07-28 18:37:41
1456
原创 HttpClient4.5和RestTemplate使用
普通form表单提交(application/x-www-form-urlencoded)HttpPost post=new HttpPost(basePath)HttpParams params=new BasicHttpParams()params.setParameter("name",张三)params.setParameter("age",18)post.setParams(
2016-07-25 19:25:00
7959
原创 代理http请求获取客户端IP
外界流传的JAVA/PHP服务器端获取客户端IP都是这么取的:伪代码:1)ip = request.getHeader("X-FORWARDED-FOR ")2)如果该值为空或数组长度为0或等于"unknown",那么:ip = request.getHeader("Proxy-Client-IP")3)如果该值为空或数组长度为0或等于"unknown",那么:ip = r
2016-07-22 11:10:08
31270
2
原创 JDBC Class.forName引发的思考
jdbc连接的代码一般都是这样:package com.xiangyi.test;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;public class ConnectionFactory { public static Conn
2016-07-21 11:43:49
588
原创 java 图片处理
用到两个第三方库1、thumbnailator:https://github.com/coobird/thumbnailator2、TwelveMonkeys:https://github.com/haraldk/TwelveMonkeysthumbnailator是图片处理的工具类,提供了很多图片处理的便捷的方法,这样我们就不要用jdk底层的ImageIO类了TwelveMonk
2016-07-15 18:34:46
4211
原创 小白安装php(centos+nginx+php5)
工作好几年,一直做java,一直没玩过php,现在公司要搞个商城,小公司没精力重新开发,准备买个别人的,做二次开发。人家的是php,没办法,就叫我先把他们的项目跑起来。先吐槽一下,国内这些做产品的真的太他妈水了,php也水。php没有向后兼容,基本算是完全固定版本。这个做产品的也不说要什么样的版本,版本太高报错,版本太低也报错,本人外行,以为像java,弄个比较新的版本总没问题。遇到的种种
2016-07-06 16:00:37
753
原创 html5 ajax文件上传
$("#harg_file").change(function(){ var fd=new FormData(); fd.append("file",$(this).get(0).files[0]) $.ajax({ url:"/test/upload/", type:"POST", processData: false, cont
2016-06-23 16:56:52
3538
原创 nginx+tomcat负载均衡
nginx版本为1.9.15必须关闭selinux,否则做请求转发时会失败报错2016/06/22 17:11:19 [crit] 3103#3103: *1 connect() to 192.168.111.130:8080 failed (13: Permission denied) while connecting to upstream, client: 192.168.111.1
2016-06-22 17:34:01
427
原创 centos6安装nginx
下载安装包 http://nginx.org/packages/centos/6/x86_64/RPMS/ 或者 http://nginx.org/packages/mainline/centos/6/x86_64/RPMS/目录下游nginx各个版本的安装包安装 rpm -i xxx.rpm安装完之后会创建一个nginx用户,并且nginx会安装成服务切换到nginx用户,执行 se
2016-06-22 16:11:22
297
原创 CentOS Linux解决Device eth0 does not seem to be present
这个问题一般会在虚拟机复制中出现,真实的机器应该不会出现,出现的原因是系统中配置文件的mac地址(网卡硬件地址HWaddr)与真实的地址不一样。因为我们是使用的虚拟机克隆,克隆出来的机器中配置文件中的mac地址是和源主机一样的,但是当我们启动克隆主机时,虚拟机会给克隆主机生成新的mac地址,这就导致了配置文件中的mac地址和真实的不一样,从而导致网络无法使用centOs6.7是
2016-06-21 16:45:26
535
原创 htm5文件上传预览
上传预览 function preview(){ var fileEle=document.getElementById("file"); var file=fileEle.files[0]; var reader = new FileReader(); reader.onload = function(e) { var img=documen
2016-06-21 15:31:53
427
原创 git远程仓库代码回退
有时候项目运行后,发现修改产生了新的问题,这时候我们就要回退代码。如果修改的代码很少的话,可以手动修改回来,有时候修改了很多内容,甚至忘了修改了哪些内容,这时候就需要用到reset命令了,其实git提交的内容并不能真的回退,只是用以前的代码覆盖现在的代码,这样我们就不需要手动覆盖错误的代码了[root@localhost gitdemo]# echo 'hello world'>hello.t
2016-06-14 16:18:59
5690
原创 源码安装git
系统为centos6.7 x64,可以直接用yum安装git,安装后发现版本太低1.7,决定重新安装因为已安装git,git的源码放在github上,可以直接用git克隆下来git clone https://github.com/git/git下载后进入git目录cd git生成configure文件make configure设置安装目录./config
2016-06-14 10:48:26
996
原创 windows tomcat项目更新及数据库备份脚本
本人使用的是批处理,即用cmd执行的,如果用powershell执行可能会有问题我的是安装版的tomcat,tomcat已安装成服务自动更新项目并部署,删除本月之前的备份数据rem *******************************Code Start*****************************@echo offset "Ymd=%date:~,
2016-06-01 09:55:36
1787
原创 socket通过http上传下载
import java.io.*;import java.net.Socket;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;/** * Created by chao.zeng on 2016/5/30. */public class HttpClien
2016-05-31 10:54:20
839
转载 Linux注册tomcat为服务
环境:centos 6.4 tomcat 6 :我的安装目录在:/home/tomcat/apache-tomcat-6.0.41开始:(注:也可以单独下载jsvc.tar.gz)1、在/home/tomcat/apache-tomcat-6.0.41/bin中有commons-daemon-native.tar.gz 压缩包2、解压co
2016-05-23 11:48:30
4406
原创 linux中java调用matlab环境安装
下载地址:http://cn.mathworks.com/products/compiler/mcr/解压 unzip -c mcr xxx.zip 一般都是通过ssh远程服务器,所以不能用图形界面安装,选择命令行静默安装进入mcr执行./install -mode silent -agreeToLicense yes默认安装在/usr/local/MATLAB,安装后需要将matla
2016-05-23 11:42:32
2109
转载 基于JSR-WS的认证
jdk已经实现了soap webservice,其实是可以不用CXF等第三方框架的,在网上看到很多soap的认证都是基于CXF做的,有时候我们可能并不想引用这么多框架,下面是直接用jdk实现的认证
2015-08-28 14:26:17
583
转载 nginx集群客户端分配策略
1、轮询(默认)每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。 upstream backserver {server 192.168.0.14;server 192.168.0.15;}2、指定权重指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。 upstream backserver {
2015-07-28 17:18:57
649
转载 maven修改项目JDK版本
方式1、修改maven全局jdk 修改 安装目录\maven2\conf\settings.xml Xml代码 jdk-1.6 true 1.6
2015-07-10 14:30:21
428
原创 java及mysql中文按拼音排序
java汉字按拼音排序 public void test_sort_pinyin() { Collator cmp = Collator.getInstance(java.util.Locale.CHINA); String[] arr = { "张三", "李四", "王五", "赵六", "JAVA", "123", "$%$#", "哈哈
2015-07-09 09:56:12
927
转载 spring多数据源
import java.sql.Connection;import java.sql.SQLException;import java.util.Map;import java.util.Map.Entry;import java.util.concurrent.atomic.AtomicInteger;import javax.sql.DataSource;imp
2015-06-18 16:56:22
1731
原创 mybatis分页插件
import java.lang.reflect.Field;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.util.List;import java.util.Ma
2015-06-18 16:51:12
518
原创 linux ssh密钥登录
ssh localhost如果没有配置密钥登录,执行上面的命令是会要求你输入用户密码的生成密钥ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa-P代表密码,这里设置成空cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys将密钥导入SSH认证文件chmod 600 ~/.ssh/auth
2015-04-10 15:24:49
644
原创 网站哀悼变灰代码
html {filter: grayscale(100%);filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);-webkit-filter: grayscale(1);-moz-filter: grayscale(1);-ms-filter: grayscale(1);-o-filter: gr
2015-03-06 12:26:06
639
1
jacob操作word
2011-07-29
oracle 中间件ECM学习资料
2011-03-15
mysql jdbc驱动源码报错
2016-07-29
jenkins集成maven依赖问题
2015-09-06
Flex 指定区域屏幕录制 shareobject
2015-08-12
nginx+tomcat负载均衡刷新页面不会更换主机
2015-07-28
TA创建的收藏夹 TA关注的收藏夹
TA关注的人