积微成著 不积跬步,无以至千里

[java] 相关的文章

web开发

mybatis中foreach的变量名和if的变量名相同

mybatis中foreach的变量名和if的变量名相同

在mybatis中,为我们提供了一个foreach标签,可以很方便的用来实现in语句,今天在使用的时候,碰到了一个细节问题,foreach标签中的变量名称和if条件中的变量名称一模一样,导致最后生成的sql出了问题。需求是要能够根据标签做出批量查询和单独查询,所以写了两个if标签,查询的时候,传递了批量查询的参数,但是单独查询的sql也被生成出来了,而且值还是批量查询的最后一个。不太好描述,还是直接上图片:大家可以看到上图中,第一个and中是根据tags做一个in查询,第二个and中是根据tag做一个like查询,但是问题来了,第二个and……

不忘初心  发布于 2018-02-26 浏览(117) 赞 (0)

web开发

SwingQQ消息来了好友头像闪动

SwingQQ消息来了好友头像闪动

在使用QQ的时候,当有人给我们发消息,好友列表里面,他(她)的头像就会开始闪烁,如果收起了分组,那么好友分组又会开始闪烁,这个功能非常的强大,也非常的实用和人性化,能够第一时间通知用户,极大的提升了用户体验。之前在iteye上发表的SwingQQ项目中已经有这个功能了,但是杂糅在了一起,看起来不太方便,今天来单独就这个功能写一篇文章,方便大家更清晰的学习如何实现这个功能,来几张效果图看看:上图中,是展开状态下,我点击消息来啦的按钮之后,好友1-1的头像就会开始来回闪动,向右偏移了1个单位,看起来不太明显,大家以那个企鹅的眼睛来做对比,就会发现……

不忘初心  发布于 2017-12-18 浏览(109) 赞 (0)

web开发

java实现系统托盘图标

java实现系统托盘图标

我们在使用各类软件的时候,启动了之后,在电脑右下角会生成一个小图标,当软件最小化以后,点击这个小图标就可以再次将软件主界面调出来,这个小图标,专业术语就叫做“系统托盘图标”,今天就来教大家如何来给我们自己的swing程序设置一个托盘图标。单独给系统托盘截图,看起来太小了,所以连着微信一起截个图吧,看起来也更清晰,上面是微信的主窗体,下面红色框里面的是系统托盘图标。这个功能,官方已经提供了现成的API,主要用到两个类:SystemTray、TrayIcon,非常简单,没多少可说的,直接给代码了:packagecom.wolffy.frame;……

不忘初心  发布于 2017-12-14 浏览(127) 赞 (0)

web开发

Swing界面优化JProgressBar详细图文教程

Swing界面优化JProgressBar详细图文教程

在swing中,大部分控件都丑的不行,进度条控件jprogressbar,这个还算说得过去,就是默认颜色不咋的好看。今天的优化,还是一贯的风格,简单大方就好,先来张图片感受一下上图中,分别有背景色和前景色,这个设置起来很容易,有现成的API,直接setBackground和setForeground,我们来测试一下jProgressBar.setBackground(newColor(209,206,200));//背景色jProgressBar.setForeground(newColor(172,168,163));//前景色(……

不忘初心  发布于 2017-11-17 浏览(59) 赞 (0)

web开发

JComboBox的第三次优化图文教程

JComboBox的第三次优化图文教程

上次优化的时候,遗漏了一个点,在下拉项很多的时候,那个很丑的原生滚动条又蹦出来作妖了,当时写教程的时候,只放了三个下拉项,没有呈现出来这个问题。真的是丑炸天,问题知道了,那就来看一下,其实也很简单,之前也有讲过JScrollPane的优化,这个其实就是一个JScrollPane,我们将之前优化的UI给他套进去就行了。这个下拉框的专业术语叫“popup”,在JCombobox的优化教程中有提到,当时写了一个MyComboBoxUI类,为了将它的边框颜色统一起来,我们写了这样一段代码@OverrideprotectedComboPopupc……

不忘初心  发布于 2017-11-15 浏览(52) 赞 (0)

web开发

linux环境下jdk安装图文教程

linux环境下jdk安装图文教程

一直以为关于jdk的安装,已经都写过文章了,今天回头一看,竟然把linux环境下的jdk安装教程给漏了,今天就来补上!linux环境中就简单很多了,直接下载一个二进制的jdk安装包,然后配置一下环境变量就行了。直接去官网下载一个,前面已经说过了,大家直接去前面的帖子中看:windows环境下jdk安装图文教程上图中有很多的版本,大家根据自己需要下载,我因为之前下载过一个jdk-8u112-linux-x64.tar.gz,所以就直接用这个来演示了。首先,我们使用tar来解压包,建议还是放到/usr/local下面[root@VM_41……

不忘初心  发布于 2017-11-13 浏览(59) 赞 (0)

web开发

JTabbedPane第二次优化,添加关闭按钮

JTabbedPane第二次优化,添加关闭按钮

上一篇文章中,我们优化了JTabbedPane的UI,对比原生组件来说,外观是好看了很多,但是这个组件在设计之初,貌似就没有考虑到关闭的情况,所以也没有设计关闭按钮,这个功能还是很有需要的,今天就来教大家如何在JTabbedPane的tab上添加可以关闭的按钮。在开始这个功能的实现之前,我第一反应是重写它的paintTab方法来实现,可是太麻烦了,所以就放弃了,后来查阅资料发现了一个API能够实现,猜想可能是官方后来得到市场建议了,出的一个补救措施,毕竟重写一套完善的UI还是相当耗费人力和时间的。API的名字叫做:setTabComponent……

不忘初心  发布于 2017-11-10 浏览(190) 赞 (0)

web开发

Swing界面优化JTabbedPane详细图文教程

Swing界面优化JTabbedPane详细图文教程

在使用一些聊天软件的时候,如果打开了多个好友窗口,就会被整合到一起,有一个tab页签用来切换,这个功能在swing中对应的就是JTabbedPane组件,沿袭了swing一贯的风格,这个组件的原生UI简直丑的不能看,今天就来教大家如何定制自己的UI。没错,上面这个图就是原生UI,不知道大家能不能忍,反正我是忍不了。图片中,我已经做了标注,它大体就分为两块儿,上面的tab,加上下面的一个pane,内容区域每次只能展示一个,点击哪个tab就展示对应的pane,目测是一个卡片布局,所以就算是自己来实现一个,也不是不可能的事情,只不过要花费很多的时间……

不忘初心  发布于 2017-11-09 浏览(84) 赞 (0)

web开发

Swing界面优化JScrollPane详细图文教程

Swing界面优化JScrollPane详细图文教程

关于JScrollPane的UI优化,之前在iteye上已经发过一篇帖子了,Swing界面优化进阶四,素材找的不是很好,而且还有一个隐藏的小bug,现在来重新优化一版。Chrome浏览器的滚动条,前端的同学可能都优化过,用css样式就可以控制,由于我对“扁平化”有着近乎痴迷的喜好,所以这次也打算优化成扁平化的滚动条。上图(已经有扁平化的效果了)就是这次发现的bug,给thumb设置的颜色是灰色,点击滑道的时候,下面就出现了一块儿灰蓝色。优化思路:1、去掉上下的按钮;2、去掉thumb的边框;3、填充颜色,平滑渲染;相关的概念,在it……

不忘初心  发布于 2017-11-08 浏览(67) 赞 (0)

web开发

JTree的第三次优化详细教程

JTree的第三次优化详细教程

关于jtree的代码二次优化,开始觉着很完美,可是后来仔细一想,好像还是没有脱离第一次优化时的思路,在渲染当前节点时,恢复之前的节点,为什么非要循环jtree来处理呢?如果说jtree有成百上千个节点,那么每次循环,性能肯定好不到哪里去,所以还需要第三次优化。思路:定义变量来记录之前的节点,每次变动,只更新这两个指定的节点好处:不用每次都刷新整颗jtree,也不需要在自定义node中增加字段来标记选中(这个字段开始设计就是为了在循环刷新整颗jtree的时候使用)前两次优化中,描述已经说得很多了,这次就不再赘述,直接贴代码;由于只是精简了代……

不忘初心  发布于 2017-11-08 浏览(59) 赞 (0)