TruthBean

斌君執筆詩為璩

IDEA 更改toString 默认格式

1、按组合键 Alt + Ins,弹出对话框。如图1

输入图片说明
图1

2、 单击 “toString()”,弹出对话框; 单击 “settings”。如图2

输入图片说明
图2

3、单击“templates ”。如图3

输入图片说明
图3

4、单击“+”选项。如图4

输入图片说明
图4

5、在弹出的对话框中,填入名称,如:“String toJsonString”,点击“ok”。如图5

输入图片说明
图5

6、在空白处填入如下代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
public java.lang.String toString() {
#if ( $members.size() > 0 )
#set ( $i = 0 )
return "$classname:{" +##
#foreach( $member in $members )
#if ( $i == 0 )#else
"," +##
#end
#if ( $member.objectArray )
#if ($java_version < 5)
"$member.name:" + ($member.accessor == null ? null : java.util.Arrays.asList($member.accessor)) +##
#else
"$member.name:" + java.util.Arrays.toString($member.accessor) +##
#end
#elseif ( $member.primitiveArray && $java_version >= 5)
"$member.name:" + java.util.Arrays.toString($member.accessor) +##
#elseif ( $member.string )
"$member.name:\'" + $member.accessor + '\'' +##
#else
"$member.name:" + $member.accessor +##
#end
#set ( $i = $i + 1 )
#end
'}';
#else
return "$classname:{}";
#end
}

7、点击”ok”完成并关闭对话框。

Windows 2008 使tomcat 与 iis 共用 80 端口

不论服务器是否有多个网卡,都可以绑定多个ip,具体过程不必赘述,请自行百度。
下面的操作则很明显了,将iis与tomcat分别绑定不同的ip。

1、iis绑定ip

想必windows 2003下使用 httpcfg.exe 大家已经都知道了。那么,win 2008 呢,很简单,使用 netsh.exe ;
绑定过程:(来自 http://support.microsoft.com/kb/954874)

将 IP 地址添加到 IP 侦听列表

单击开始,单击运行,键入cmd,然后单击确定。打开一个命令提示符窗口。
在命令提示符下,键入下面的命令:
netsh http add iplisten xxx.xxx.x.x
注意:xxx.xxx.x.x表示您想要添加的 IP 地址。

如果已成功添加的 IP 地址,您将收到以下消息:
成功添加 IP 地址
要列出的 IP 地址,请键入以下命令后添加的 IP 地址:
netsh http show iplisten

Netsh 实用程序将返回以下信息:
在 IP 侦听列表中显示的 IP 地址: xxx.xxx.x.x
停止 HTTP 服务及相关服务。若要执行此操作,请键入以下命令:
net stop http
重新启动 HTTP 服务及相关服务。若要执行此操作,请键入以下命令:
net start http
重新启动 W3SVC 服务。若要执行此操作,请键入以下命令:
net start w3svc

注意:在将 HTTP 服务启动时读取 IP 侦听列表。如果修改了列表,必须重新启动 HTTP 服务。

2、更改tomcat server.xml 配置文件,将address 中的值改为要绑定的ip地址

markdown快速上手

标题

一级标题

1
行首加 "# " (井号加空格)或者文字的第二行加两个等于号("==")

二级标题

1
行首加 "## " (两个井号加空格)或者文字的第二行加两个减号("--")

三四五六级标题

1
跟前面类似,都是在行首前加多个"#"(三级标题加三个,四级标题加四个...)

块区域

1
2
3
4
5
由两行“```”组成,中间为快区域内容,如:
"```"
"块区域"
"```"
注意:没有双引号

代码块

1
2
代码块是文字前加">",如
> console.log("hello")

分割线

1
2
第一种: ***
第二种: ---

强调

1
2
**强调**
效果跟CSS样式“font-weight:bold”效果一样

超链接

[1]:truthbean.com printf('truthbean')


表格

“|”作为垂直列的board, “—“作为表头与表体的分割,”:”作为对其的方式,“:—:” 这种两边同时写的就是居中对其,eg:

1
2
3
4
5
| Tables        | Are           | Cool  |
| ------------- |:-------------:| -----:|
| col 3 is | right-aligned | here |
| col 2 is | centered | here |
| zebra stripes | are neat | here |

效果如下:

Tables Are Cool
col 3 is right-aligned here
col 2 is centered here
zebra stripes are neat here

学习docker

安装docker

参照docker官方文档 https://docs.docker.com/

搭建私有仓库

1、sudo docker pull registry
2、sudo docker run -d -p 5000:5000 registry
3、sudo docker run -d -p 5000:5000 -v /opt/data/registry:/tmp/registry registry
4、sudo docker build -t demo-nginx .
5、sudo docker tag demo-nginx 192.168.1.250:5000/demo-nginx
6、sudo docker push 192.168.112.136:5000/demo-nginx

启动docker

sudo docker run –name 192.168.112.136:5000/demo-nginx

CentOS/Redhat 7 破解root密码

1、重启系统,按任意键打断机器加载启动器,选择最上面的linux内核,按e键进行编辑
2、在linux16那行的行尾处添加 rd.break,按ctrl+x继续
3、使用命令行:mount -oremount,rw /sysroot 以可读写形式挂载/sysroot目录
4、使用命令:chroot /sysroot 切换至系统根目录
5、设置新密码 :passwd root
6、新建 /.autorelabel 确保所有文件都被重新加载,命令为:touch /.autorelabel
7、敲两次exit退出

利用native2ascii 实现 文件字符转码

native2ascii 是 jdk提供的应用程序,它可以用来实现文件的字符转码。
如,将A.properties文件转换为utf8格式并另存为B.properties,可以在终端上输入

1
native2ascii -encoding utf-8 A.properties B.properties

注:jdk自带了很多应用程序,在JAVA_HOME/bin目录下可以查看

jsf2.2的标签库uri的变化

旧 URI 新 URI
Composite Components http://java.sun.com/jsf/composite http://xmlns.jcp.org/jsf/composite
Faces Core http://java.sun.com/jsf/core http://xmlns.jcp.org/jsf/core
HTML_BASIC http://java.sun.com/jsf/html http://xmlns.jcp.org/jsf/html
JSTL Core http://java.sun.com/jsp/jstl/core http://xmlns.jcp.org/jsp/jstl/core
JSTL Functions http://java.sun.com/jsp/jstl/functions http://xmlns.jcp.org/jsp/jstl/functions
Facelets Templating http://java.sun.com/jsf/facelets http://xmlns.jcp.org/jsf/facelets
Pass Through Attributes http://java.sun.com/jsf/passthrouth http://xmlns.jcp.org/jsf/passthrough
Pass Through Elements http://java.sun.com/jsf http://xmlns.jcp.org/jsf

CSS选择器

  1. *通用选择器:选择所有元素,不参与计算优先级,兼容性IE6+

  2. #X id选择器:选择id值为X的元素,兼容性:IE6+

  3. .X 类选择器: 选择class包含X的元素,兼容性:IE6+

  4. X Y后代选择器: 选择满足X选择器的后代节点中满足Y选择器的元素,兼容性:IE6+

  5. X 元素选择器: 选择标所有签为X的元素,兼容性:IE6+

  6. :link, :visited, :focus, :hover, :active链接状态: 选择特定状态的链接元素,顺序LoVe HAte,兼容性: IE4+

  7. X + Y直接兄弟选择器:在X之后第一个兄弟节点中选择满足Y选择器的元素,兼容性: IE7+

  8. X > Y子选择器: 选择X的子元素中满足Y选择器的元素,兼容性: IE7+

  9. X ~ Y兄弟: 选择X之后所有兄弟节点中满足Y选择器的元素,兼容性: IE7+

  10. [attr]:选择所有设置了attr属性的元素,兼容性IE7+

  11. [attr=value]:选择属性值刚好为value的元素

  12. [attr~=value]:选择属性值为空白符分隔,其中一个的值刚好是value的元素

  13. [attr|=value]:选择属性值刚好为value或者value-开头的元素

  14. [attr^=value]:选择属性值以value开头的元素

  15. [attr$=value]:选择属性值以value结尾的元素

  16. [attr*=value]:选择属性值中包含value的元素

  17. [:checked]:选择单选框,复选框,下拉框中选中状态下的元素,兼容性:IE9+

  18. X:after, X::after:after伪元素,选择元素虚拟子元素(元素的最后一个子元素),CSS3中::表示伪元素。兼容性:after为IE8+,::after为IE9+

  19. :hover:鼠标移入状态的元素,兼容性a标签IE4+, 所有元素IE7+

  20. :not(selector):选择不符合selector的元素。不参与计算优先级,兼容性:IE9+

  21. ::first-letter:伪元素,选择块元素第一行的第一个字母,兼容性IE5.5+

  22. ::first-line:伪元素,选择块元素的第一行,兼容性IE5.5+

  23. :nth-child(an + b):伪类,选择前面有an + b - 1个兄弟节点的元素,其中n>= 0, 兼容性IE9+

  24. :nth-last-child(an + b):伪类,选择后面有an + b - 1个兄弟节点的元素其中n >= 0,兼容性IE9+

  25. X:nth-of-type(an+b):伪类,X为选择器,解析得到元素标签,选择前面有an + b - 1个相同标签兄弟节点的元素。兼容性IE9+

  26. X:nth-last-of-type(an+b):伪类,X为选择器,解析得到元素标签,选择后面有an+b-1个相同标签兄弟节点的元素。兼容性IE9+

  27. X:first-child:伪类,选择满足X选择器的元素,且这个元素是其父节点的第一个子元素。兼容性IE7+

  28. X:last-child:伪类,选择满足X选择器的元素,且这个元素是其父节点的最后一个子元素。兼容性IE9+

  29. X:only-child:伪类,选择满足X选择器的元素,且这个元素是其父元素的唯一子元素。兼容性IE9+

  30. X:only-of-type:伪类,选择X选择的元素,解析得到元素标签,如果该元素没有相同类型的兄弟节点时选中它。兼容性IE9+

  31. X:first-of-type:伪类,选择X选择的元素,解析得到元素标签,如果该元素是此此类型元素的第一个兄弟。选中它。兼容性IE9+

补充:
js中可以使用html5的新API document.querySelectorAll 或者 document.querySelector 来通过选择器获取对应的节点,当然也可以使用jQuery的选择器