<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[水丸的博客]]></title><description><![CDATA[基本是一些看书的笔记]]></description><link>https://blog.youkuaiyun.com/int__double</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; int__double]]></copyright><item><title><![CDATA[python numpy array]]></title><link>https://blog.youkuaiyun.com/int__double/article/details/89788724</link><guid>https://blog.youkuaiyun.com/int__double/article/details/89788724</guid><author>int__double</author><pubDate>Fri, 03 May 2019 16:21:55 +0800</pubDate><description><![CDATA[两篇好文章，以下附上地址

numpy.array 基本操作

numpy.array 的tile操作

numpy.array argsort操作


]]></description><category></category></item><item><title><![CDATA[crontab 莫名报错]]></title><link>https://blog.youkuaiyun.com/int__double/article/details/89761713</link><guid>https://blog.youkuaiyun.com/int__double/article/details/89761713</guid><author>int__double</author><pubDate>Thu, 02 May 2019 15:09:23 +0800</pubDate><description><![CDATA[如下crontab命令
30 8-23/1 * * * /bin/ping -c 4 www.baidu.com &gt;&gt; /var/ftp/$(date "+%Y-%m-%d").log
作用即在8点30分到23点30分，每隔一小时，就ping4次www.baidu.com，并把输出内容追加到/var/ftp目录下的，年-月-日.log文件中。
但是发现，此命令总是报错，发送到邮箱的报错...]]></description><category></category></item><item><title><![CDATA[java.lang.IllegalStateException: Not on FX application thread]]></title><link>https://blog.youkuaiyun.com/int__double/article/details/89458911</link><guid>https://blog.youkuaiyun.com/int__double/article/details/89458911</guid><author>int__double</author><pubDate>Mon, 22 Apr 2019 19:24:27 +0800</pubDate><description><![CDATA[问题描述


运行javaFX程序，系统会自动创建一个FX application thread线程，用于更新界面的组件信息，例如ListView的items、Label的text。当我们想运用多线程实现业务，而自己创建的线程又直接导致了界面组件信息的更新时，控制台就会抛出java.lang.IllegalStateException异常。

完整异常栈如下
Exception in thre...]]></description><category></category></item><item><title><![CDATA[Windows 2012 R2 服务器 搭FTP 无法在 windows资源管理器 打开]]></title><link>https://blog.youkuaiyun.com/int__double/article/details/89354202</link><guid>https://blog.youkuaiyun.com/int__double/article/details/89354202</guid><author>int__double</author><pubDate>Wed, 17 Apr 2019 13:28:29 +0800</pubDate><description><![CDATA[如题，可以在浏览器打开，但是无法在资源管理器打开。虽然这不会影响文件的浏览与下载，但这样就无法进行上传操作了。

无法在资源管理器打开FTP站点

网上的解决方案基本是关闭被动模式，强制使用主动模式，我没有采纳这样的方案，也没有检验方案是否可行。最终发现是FTP网站防火墙问题。


解决方案如下


在服务器控制台，打开TCP协议下的20和21端口，以及大于1024的端口，这是被动模式和主动模式需...]]></description><category></category></item><item><title><![CDATA[运行  pyinstaller 打包成的exe 闪退]]></title><link>https://blog.youkuaiyun.com/int__double/article/details/89290249</link><guid>https://blog.youkuaiyun.com/int__double/article/details/89290249</guid><author>int__double</author><pubDate>Sat, 13 Apr 2019 22:40:58 +0800</pubDate><description><![CDATA[问题一
在控制台运行pyinstaller bayes.py打包文件，发现控制台除info外，还有Traceback，发现是缺少模块，安装模块解决。

问题截图




解决办法







问题二
得到exe文件后，双击运行，弹出控制台后闪退，用录屏方式获取控制台的输出内容，发现是找不到依赖的外部文件（我的这个py文件运行时，要读取的一个文本文件），搜集网上资料，发现要将依赖的外部文件放在...]]></description><category></category></item><item><title><![CDATA[@PostConstruct 和 @PreDestroy 的坑]]></title><link>https://blog.youkuaiyun.com/int__double/article/details/88855040</link><guid>https://blog.youkuaiyun.com/int__double/article/details/88855040</guid><author>int__double</author><pubDate>Wed, 27 Mar 2019 20:48:11 +0800</pubDate><description><![CDATA[本人用的jdk10 学习spring时，发现@PostConstruct 和 @PreDestroy两个注解注释的方法不执行，后上网查找发现是JDK版本问题，切换到jdk1.8后即可。
]]></description><category></category></item><item><title><![CDATA[idea 常用快捷键]]></title><link>https://blog.youkuaiyun.com/int__double/article/details/88412509</link><guid>https://blog.youkuaiyun.com/int__double/article/details/88412509</guid><author>int__double</author><pubDate>Mon, 11 Mar 2019 23:39:27 +0800</pubDate><description><![CDATA[ctrl+n 
			全局搜索类，范围包括导入的jar包
		ctrl+alt+v
			
			自动补齐=左边
			
		

ctrl+h
			查看子类
		
			
			
			
		
]]></description><category></category></item><item><title><![CDATA[spring-mybatis-xxx.jar下载地址]]></title><link>https://blog.youkuaiyun.com/int__double/article/details/88291446</link><guid>https://blog.youkuaiyun.com/int__double/article/details/88291446</guid><author>int__double</author><pubDate>Thu, 07 Mar 2019 11:03:56 +0800</pubDate><description><![CDATA[https://mvnrepository.com/artifact/org.mybatis/mybatis-spring/2.0.0
]]></description><category></category></item><item><title><![CDATA[CentOS6.5 x86_64 编译 openJDK8u]]></title><link>https://blog.youkuaiyun.com/int__double/article/details/86766491</link><guid>https://blog.youkuaiyun.com/int__double/article/details/86766491</guid><author>int__double</author><pubDate>Tue, 05 Feb 2019 20:50:20 +0800</pubDate><description><![CDATA[
前期根据网上教程以及书籍资料，编译openJDK一直碰壁，编译错误层出不穷，迫于无奈，只能直面自己的懒惰，自己亲自阅读官网资料。
官方编译JDK的教程
官方编译JDK8的教程


编译环境
操作系统：CentOS6.5 x86_64 (带桌面版)
编译目标
openJDK 8u


一、获取源码
推荐获取源码网站，可以直接选择自己预编译的jdk版本下载。例如，下载JDK8u源码时，应该进入的最终...]]></description><category></category></item><item><title><![CDATA[linux vim简单使用]]></title><link>https://blog.youkuaiyun.com/int__double/article/details/82950799</link><guid>https://blog.youkuaiyun.com/int__double/article/details/82950799</guid><author>int__double</author><pubDate>Sun, 27 Jan 2019 20:57:10 +0800</pubDate><description><![CDATA[1.vim三种模式
命令模式：打开文件默认进入的模式，在该模式下不能对文件直接编辑，可以输入快捷键进行一些操作，如删除行，复制行，移动光标，粘贴等。
编辑模式：在该模式下，可以对文件内容进行编辑。
末行模式：在该模式下，可以在末行输入命令对文件进行操作，如搜索，替换，保存，退出，撤销，高亮等。


2.vim打开文件的方式
①#vim 文件路径
②#vim +数字  文件路径         光标...]]></description><category></category></item><item><title><![CDATA[linux CentOS6.5 安装JDK1.8]]></title><link>https://blog.youkuaiyun.com/int__double/article/details/86668637</link><guid>https://blog.youkuaiyun.com/int__double/article/details/86668637</guid><author>int__double</author><pubDate>Sun, 27 Jan 2019 19:16:09 +0800</pubDate><description><![CDATA[1.下载JDK
前往JDK官网下载所需tar包，本人下载的版本为jdk-8u201-linux-i586.tar.gz

2. 解压
将tar包解压到/opt目录下
tar -zxvf jdk-8u201-linux-i586.tar.gz -C /opt

3. 配置环境变量


打开环境变量配置文件 /etc/profile
vim /etc/profile


在文件末尾追加以下三行
JAV...]]></description><category></category></item><item><title><![CDATA[CentOS6.5 编译安装MySQL]]></title><link>https://blog.youkuaiyun.com/int__double/article/details/86668293</link><guid>https://blog.youkuaiyun.com/int__double/article/details/86668293</guid><author>int__double</author><pubDate>Sun, 27 Jan 2019 18:33:59 +0800</pubDate><description><![CDATA[此文分为两部分，前面是编译与安装，后面是MySQL配置。

编译与安装

准备工作

下载MySQL源码包
本文下载的是 mysql-5.6.43.tar.gz
卸载系统安装过的MySQL Server
当然前提是你曾经在这台机器安装过MySQL，如果不确定是否安装过，那么可以执行
rpm -qa | grep mysql
如果有，则卸载
rpm -e --nodeps mysql
安装编译代码所...]]></description><category></category></item><item><title><![CDATA[CentOS6 播放MP3]]></title><link>https://blog.youkuaiyun.com/int__double/article/details/86657259</link><guid>https://blog.youkuaiyun.com/int__double/article/details/86657259</guid><author>int__double</author><pubDate>Sat, 26 Jan 2019 15:00:00 +0800</pubDate><description><![CDATA[学习之余，想在虚拟机下播放MP3文件，体验一番，但发现因需要 mpeg-layer（mp3）插件而无法播放，搜索资料与践行后，以下方法实测可行。

 

 

 

原帖地址

基本操作如下：

Install Howto

                      本人下载文件，仅为预防无法访问原链接 

 

Download latest rpmforge-release rpm from...]]></description><category></category></item><item><title><![CDATA[中国象棋将帅问题 之 一个字节存储]]></title><link>https://blog.youkuaiyun.com/int__double/article/details/86592820</link><guid>https://blog.youkuaiyun.com/int__double/article/details/86592820</guid><author>int__double</author><pubDate>Tue, 22 Jan 2019 12:56:35 +0800</pubDate><description><![CDATA[一、问题引出
切入正题，如果现在需要写一段3重嵌套循环，我们会习以为常的用i、j和k三个变量，写出如下格式代码
for(int i=0; i&amp;lt;10; i++){
	for(int j=0; j&amp;lt;5; j++){
		for(int k=0; k&amp;lt;8; k++){
			
		}
	}
}

但是如果要求只用一个循环就实现以上3重循环，有一个明显的优点就是可以节省内存，本来三个变量...]]></description><category></category></item><item><title><![CDATA[struts2  AJAX]]></title><link>https://blog.youkuaiyun.com/int__double/article/details/83714461</link><guid>https://blog.youkuaiyun.com/int__double/article/details/83714461</guid><author>int__double</author><pubDate>Sun, 04 Nov 2018 12:51:03 +0800</pubDate><description><![CDATA[ 

1.导入jar包

本人使用的jdk1.8，Tomcat 9 ，struts-2.3.36，导入的jar包如下图



 

2.编写pojo和action类


public class User {
    private String name;
    private int age;

    public User(String name, int age) {
        ...]]></description><category></category></item><item><title><![CDATA[struts2 文件下载]]></title><link>https://blog.youkuaiyun.com/int__double/article/details/83688435</link><guid>https://blog.youkuaiyun.com/int__double/article/details/83688435</guid><author>int__double</author><pubDate>Sat, 03 Nov 2018 17:44:43 +0800</pubDate><description><![CDATA[提供文件下载的方式可以是通过超链接，也可以通过流。通过超链接的方式，如&amp;lt;a href=&quot;file\a.txt&quot; \&amp;gt;，代码简单，但是浏览器如果可以打开，就会直接打开，任何用户只要有链接就可以下载，无法控制下载权限。通过流的方式就能对权限进行控制。

action处理类


public class DownloadAction {
    private String fileName...]]></description><category></category></item><item><title><![CDATA[struts2 文件上传]]></title><link>https://blog.youkuaiyun.com/int__double/article/details/83687761</link><guid>https://blog.youkuaiyun.com/int__double/article/details/83687761</guid><author>int__double</author><pubDate>Sat, 03 Nov 2018 16:04:38 +0800</pubDate><description><![CDATA[struts2的文件上传功能使用的是apache下的commons-fileupload来实现。
	Jsp的表单要求是post提交，并且要求 enctype=”multipart/form-data”
 

一、单个文件上传

 

jsp表单


&amp;lt;form action=&quot;upload.action&quot; method=&quot;post&quot; enctype=&quot;multipart/form-data&quot;...]]></description><category></category></item><item><title><![CDATA[struts2 方法拦截器]]></title><link>https://blog.youkuaiyun.com/int__double/article/details/83684547</link><guid>https://blog.youkuaiyun.com/int__double/article/details/83684547</guid><author>int__double</author><pubDate>Sat, 03 Nov 2018 10:17:31 +0800</pubDate><description><![CDATA[拦截器拦截的是action中的每一个业务方法，而当我们只想让拦截器拦截特定方法，以提高效率时，使用拦截器就不是那么适合了，这时，我们可以使用方法拦截器。

1.定义方法拦截器

方法拦截器要继承 MethodFilterInterceptor 类，实现 doIntercept 方法，该方法体就是实现特定的拦截业务


public class MethodInterceptor extends M...]]></description><category></category></item><item><title><![CDATA[struts2 拦截器栈]]></title><link>https://blog.youkuaiyun.com/int__double/article/details/83684183</link><guid>https://blog.youkuaiyun.com/int__double/article/details/83684183</guid><author>int__double</author><pubDate>Sat, 03 Nov 2018 09:41:06 +0800</pubDate><description><![CDATA[当需要引用的拦截器过多时，可以把拦截器定义在一个拦截器栈里面，而在action中只引用这个拦截器栈，从而简化代码。拦截器栈可以引用另一个拦截器栈。

拦截器栈定义如下，而使用拦截器栈的语法与使用拦截器一致。


    &amp;lt;package name=&quot;default&quot; namespace=&quot;/&quot; extends=&quot;struts-default&quot;&amp;gt;
        &amp;lt;!-- 配置自定...]]></description><category></category></item><item><title><![CDATA[struts2 拦截器]]></title><link>https://blog.youkuaiyun.com/int__double/article/details/83589124</link><guid>https://blog.youkuaiyun.com/int__double/article/details/83589124</guid><author>int__double</author><pubDate>Wed, 31 Oct 2018 21:41:12 +0800</pubDate><description><![CDATA[拦截器针对的是action请求，struts2提供了众多拦截器，用户也可根据需要自定义拦截器。struts2的拦截器是通过代理（AOP）来实现的。struts2的拦截器是单例的，所有action共享，在定义常量时应注意线程安全问题。

 

一、struts2的默认拦截器

struts2的默认拦截器在struts-default.xml中的struts-default包下，所以要使用默认提供的拦...]]></description><category></category></item></channel></rss>