目录

我的学习分享

记录精彩的程序人生

存档: 2020 年 04 月 (23)

How can I design explorer views in Mantisse GUI editor?

How can I design explorer views in Mantisse GUI editor? There is an open RFE [1] to include explorer views in the GUI designer palettes by default, but until it is implemented, you can follow the following procedure. (digested from the mailing list) Add explorer views to palette manually As suggested in several articles [2]/[3], adding the .jar file to the palette exposes the containers. Here the exact procedure to add the containers to the palette Right click in the Matisse palette "Add fro....

SwingX Demo

找了n久,终于找到了(狂笑三声);记得以前自己也有一个,不过找不到了。 https://swingx.java.net/ 的WebStart总是启动失败,分析jnlp下载链接,花了几小时拼装出这个可以运行的demo,方便swing开发者参考 swingxdemo.7z https://download.csdn.net/download/nanman/8933379

org.jdesktop.swingx.demos.treetable.TreeTableDemo 有更新!

How to Use Trees /* * $Id$ * * Copyright 2009 Sun Microsystems, Inc., 4150 Network Circle, * Santa Clara, California 95054, U.S.A. All rights reserved. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WAR....

把java程序作为windows服务运行

参考: https://www.jianshu.com/p/fc9e4ea61e13 https://blog.csdn.net/qq_28566071/article/details/80882503 spring官方推荐使用winsw来将springboot项目作为服务运行,参考https://docs.spring.io/spring-boot/docs/1.5.9.RELEASE/reference/htmlsingle/#deployment-windows 1.把java程序打包为jar包 2.下载winsw winsw是一款可将可执行程序安装成Windows Service的开源工具,github:https://github.com/kohsuke/winsw/releases 下载文件: 需要将winsw执行程序跟xml改成同样的名字: 修改spider-1.0.xml文件内容 <configuration> <id>SpiderService</id> <name>SpiderService</name>....

使用Apache Commons Mail 发邮件,用SSL方式

记录一下最近使用Commons Mail遇到一个小问题。服务器是阿里云的ECS,由于关闭了25端口,只能使用SSL方式发邮件。按照官方的代码试了一下,一直提示连接不上SMTP服务器。 // 这是官方的例子 Email email = new SimpleEmail(); email.setHostName("smtp.googlemail.com"); email.setSmtpPort(465); email.setAuthenticator(new DefaultAuthenticator("username", "password")); email.setSSLOnConnect(true); email.setFrom("user@gmail.com"); email.setSubject("TestMail"); email.setMsg("This is a test mail ... :-)"); email.addTo("foo@bar.com"); email.send(); 后来加了 setDebug(true) ,查看日志发现并没有使用SSL方式,提示isSS....

线上系统查看java进程是如何被杀掉的 有更新!

线上服务器部署了一个java业务系统,今天突然发现进程不在了,查看java系统错误日志、gc日志都没有发现任何问题。奇怪之下,只能查看linux的系统日志——message,在这里面找到了导致java进程被杀的真凶。 进入/var/log目录,看到了有如下的message日志: -rw------- 1 root root 11174 Sep 25 22:05 messages -rw------- 1 root root 47851 Sep 3 02:46 messages-20170903 -rw------- 1 root root 59019 Sep 10 03:04 messages-20170910 -rw------- 1 root root 45481 Sep 17 03:14 messages-20170917 -rw------- 1 root root 75629 Sep 24 03:20 messages-20170924 查看其中一天的日志(java进程杀掉的时间): # cat messages-20170924 | grep ttbrain Sep 21....

java -jar 时指定内存大小

java -jar -Xms1024m -Xmx1536m -XX:PermSize=128M -XX:MaxPermSize=256M car.jar 说明: 1、堆内存:最小1024M,最大1536M。(对象使用的内存) 2、永久内存:最小128M,最大256M。(类使用的内存,PermGen)

MariaDB 默认是禁止远程访问的 我们改掉它 有更新!

查询用户账号信息: select User, host from mysql.user; 现在只显示 root账户中的host项是localhost表示该账号只能进行本地登录,我们需要修改权限,输入命令: 运行远程访问:只需要在数据库执行这条语句,有必要重启一下服务 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'IDENTIFIED BY '你的密码' WITH GRANT OPTION; 修改权限。%表示针对所有IP,password表示将用这个密码登录root用户,如果想只让某个IP段的主机连接,可以修改为 GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.100.%' IDENTIFIED BY 'my-new-password' WITH GRANT OPTION; 保存更改。再看看用户信息: 这个时候发现相比之前多了一项,它的host项是%,这个时候说明配置成功了,我们可以用该账号进行远程访问了 输入 shell service mysql restart https://www.wand....

股票行情图的绘制,分时图和闪电图

心血来潮,想到去年独立开发的一个项目XX操盘,其中有关于个股的走势行情图是完全基于自定义view实现的,本文分析一下大致流程及部分实现代码;具体的自定义控件步骤想必大家比我还清楚的,不作详解 分时图 效果图如下(分时图暂未录制动图,闪电动图在最后哦~~~) 实现步骤: 1.自定义相关属性:attrs.xml中声明 <declare-styleable name="MinView"> <attr name="pathColor" format="reference|color"/> <attr name="textDColor" format="reference|color"/> <attr name="lineColorr" format="reference|color"/> <attr name="fillPathColorr" format="reference|color"/> <attr name="textSizz" format="dimension"/> </declare-stylea....

最全“黑名单”!某券商内部的200个上市公司黑名单你还记得吗?(附股) 有更新!

A股十多年原地踏步,归根结底还是众多上市公司上市后不务正业,不谋求发展导致的。如果上市企业都像格力电器、福耀玻璃一样把心思用在企业发展上,何愁A股长期不涨? 不过也不能怪这些上市公司,毕竟A股独特的圈钱机制诱惑力太大,大多数股东们还真抵挡不住动辄数十亿的短期巨大诱惑。 只要没有约束大股东减持套现、财务造假以及对中小投资者赔偿的长效机制,A股永远都是老样子,牛短熊长!股市本身没有造血功能,搞来搞去无非就是投资者输血、大股东抽血的游戏,短期涨涨跌跌难掩长期不断下滑的局面。 在大股东持续不断“不务正业”的努力之下,公司必然会出现各种雷,暴是迟早的事!在众多劣质公司的影响之下,A股整体总会被拖下水,大多数股票永远不缺乏踏空的风险! 名单如下: 序号名称备注 1联建光电财务造假 2海正药业财务造假 3北大荒财务造假 4汇洁股份董事长内幕交易,监管部门公开谴责 5嘉寓股份财务造假,监管部门公开谴责 6大智慧利润跨期调整 7亚太实业虚增收入 8佳电股份财务造假 9力帆股份虚增利润,大股东质押85%,主业亏损,2017年利润由房地产价值变动支撑 10明牌珠宝跨行业并购失败,毛利润很低 11尔康....

一句话说明白Java线程池中shutdown和shutdownNow的区别

一般情况下,当我们频繁的使用线程的时候,为了节约资源快速响应需求,我们都会考虑使用线程池,线程池使用完毕都会想着关闭,关闭的时候一般情况下会用到shutdown和shutdownNow,这两个函数都能够用来关闭线程池,那么他们俩之间的区别是什么呢?下面我就用一句话来说明白shutdown和shutdownNow的区别。 一、一句话说明白shutdown和shutdownNow的区别 shutdown只是将线程池的状态设置为SHUTWDOWN状态,正在执行的任务会继续执行下去,没有被执行的则中断。而shutdownNow则是将线程池的状态设置为STOP,正在执行的任务则被停止,没被执行任务的则返回。 举个工人吃包子的例子,一个厂的工人(Workers)正在吃包子(可以理解为任务),假如接到shutdown的命令,那么这个厂的工人们则会把手头上的包子给吃完,没有拿到手里的笼子里面的包子则不能吃!而如果接到shutdownNow的命令以后呢,这些工人们立刻停止吃包子,会把手头上没吃完的包子放下,更别提笼子里的包子了。 二、线程状态知识延伸 在ThreadPoolExecutor中定义了关....

WrapLayout: FlowLayout subclass that fully supports wrapping of components. 有更新!

package com.miui.theme.tool.gui; import java.awt.Component; import java.awt.Container; import java.awt.Dimension; import java.awt.FlowLayout; import java.awt.Insets; import javax.swing.JScrollPane; import javax.swing.SwingUtilities; /** * FlowLayout subclass that fully supports wrapping of components. */ public class WrapLayout extends FlowLayout { private Dimension preferredLayoutSize; /** * Constructs a new <code>WrapLayout</code> with a left alignment and a * default 5-unit horizo....

基金重仓

http://q.stock.sohu.com/cn/bk_4453.shtml 基金重仓

【股票】A股近4年(1000个交易日)日平均振幅(除ST股及上市时间短于1000个交易日的股票)

1000个交易日: 序号名称(代码)日平均振幅 1北京君正(300223)0.062 2乐视网(300104)0.059 3商赢环球(600146)0.056 4浔兴股份(002098)0.056 5新开源(300109)0.055 6芒果超媒(300413)0.055 7富春股份(300299)0.054 8当代明诚(600136)0.053 9华泽退(000693)0.053 10大连电瓷(002606)0.053 11千山药机(300216)0.053 12邦讯技术(300312)0.053 13科恒股份(300340)0.053 14华友钴业(603799)0.052 15当代东方(000673)0.052 16凯恩股份(002012)0.052 17印纪退(002143)0.052 18通达动力(002576)0.052 19西陇科学(002584)0.052 20融钰集团(002622)0.052 21坚瑞沃能(300116)0.052 22天泽信息(300209)0.052 23中际旭创(300308)0.052 24宜通世纪(300310)0.052 25光一科....

ta-lib Pattern Recognition Functions 形态识别

https://github.com/HuaRongSAO/talib-document/blob/master/func_groups/pattern_recognition.md Pattern Recognition Functions 形态识别 CDL2CROWS - Two Crows 函数名:CDL2CROWS 名称:Two Crows 两只乌鸦 简介:三日K线模式,第一天长阳,第二天高开收阴,第三天再次高开继续收阴, 收盘比前一日收盘价低,预示股价下跌。 integer = CDL2CROWS(open, high, low, close) CDL3BLACKCROWS - Three Black Crows 函数名:CDL3BLACKCROWS 名称:Three Black Crows 三只乌鸦 简介:三日K线模式,连续三根阴线,每日收盘价都下跌且接近最低价, 每日开盘价都在上根K线实体内,预示股价下跌。 integer = CDL3BLACKCROWS(open, high, low, close) CDL3INSIDE - Three Inside Up....

【100%有效】解决AndroidStudio 控制台编译输出中文乱码,亲测解决! 有更新!

背景 在AndroidStudio中新建了一个Java Module,但是点击 Run ‘app’之后,Build Output 控制台输出的中文都是乱码,都是问号一样的字符 google了很多方法,要么就是文不对题,要么就是各种抄,没有真正测试过! File Encodings 改为UTF-8?没用! build.gradle 添加如下代码?没用!这是解决System.out.print输出的中文乱码问题的! tasks.withType(JavaCompile) { options.encoding = "UTF-8" } 解决办法 双击Shift,输入vmoption,,选择Edit Custom CM Options 如果之前没有配置过,会弹出窗口问是否创建配置文件,点击Create 输入 保存,重启就可以了! 居然也不好使。。 下面这个是真正好使的。。 首先,关闭android studio,一定要先关闭 打开android studio 安装目录下的bin目录: 可以看到两个文件:studio.exe.vmoptions,studio....

Configuration file server.ini

使用名为server.ini的配置文件配置服务器。 可以使用-c命令行参数使用其他文件。 在大多数情况下,游戏将提供您应执行以生成server.ini文件的GenerateINI程序。 不过,了解存在哪些参数以及如何设置这些参数可能会很有趣。 如果您正在编写自己的游戏,则还应该查看提供的GenerateINI程序。 Database Configuration Marauroa needs access to a database. MySQL and H2 are actively supported and tested. Other database may work too, perhaps with a few tweaks. H2 is cool because it works out of the box without having to setup a database server: You just need to specify a filename which will be created automatically. In this example it....

acuigame-snake 有更新!

20200410 生成项目模板 执行gdx-setup.jar 增加server子项目 服务器和客户端有部分代码共享,服务器和客户端的代码都放到core子项目中,而server子项目中放入服务器的启动代码,与desktop和android子项目(包含客户端的启动代码)类似。 首先打开项目所在目录D:\GitHub\acuigame-snake,将desktop目录拷贝一份并重命名为server目录 project(":server") { apply plugin: "java-library" dependencies { implementation project(":core") } } 在settings.gradle中,增加server include 'desktop', 'server', 'android', 'core' 将server子项目中的DesktopLauncher重命名为ServerLauncher作为服务端的启动类,同时删掉main方法中的代码,将包结构重构为 com.acuigame.pacman.server package com.ac....

acuigame-test 有更新!

20200406 引入gdx-backend-headless同时要引入natives api "com.badlogicgames.gdx:gdx-backend-headless:$gdxVersion" api "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-desktop" 20200408 主要游戏逻辑放在服务器端,客户端仅执行一些简单的校验逻辑。客户端整个程序结构需要理一理。 服务器端使用Box2D进行物理计算,并将计算结果同步到所有客户端。 20200409 服务器端是靠IRPRuleProcessor中的 beginTurn()和 endTurn()来驱动的;通过 execute()执行action,相当于通过网络获得远程输入,从而对实体施加影响。服务端向客户端发送 Perception是自动进行的,参见 RPServerManager.run()方法。所谓感知,其实就是被改变的对象,包括 增加的RPObejct 删除的RPObject 其他 每回合的时间固定为40毫秒(每秒25帧)。 在IRPR....

android studio - can not connect to socks proxy

问题: Gradle sync failed: Can't connect to SOCKS proxy:Connection refused: connect Consult IDE log for more details (Help | Show Log) (10 s 857 ms) 分析: 乍一看是 代理问题, 但是 我在设置里面把 代理的 去掉后,还是存在这个问题,这就很尴尬了。 结果: 其实上面只是代理配置的一个地方, 还有其他方式可以配置 。。。。 比如 配置文件。 排查: settings - Build,Execu… - Gradle , 这里可以看到Gradle的本地路径, 我的是在,D:/Android/.gradle 下,该目录下 查看有无gradle.properties 文件, 此处是所有项目的配置,请确认其他项目确实不需要配置,那么就可以放心的删除或修改了。(这个文件只是配置文件,在项目中还存在缓存文件) 如果上述有的话, 一般在项目文件目录也存在,所以也需要清理下,此处是仅当前项目需要修改,可以修改此处 ———————————————— 版权声....