2012:末日前的起舞

这不过只是一个普通的下午,北京刮着大风,出去几分钟就瑟瑟发抖。

2012年终于还是要过去了,即使有玛雅人的预言,即使21日也被玛雅人的预言所笼罩。但,不可否认,我们都坚强的走过来了。

“Hello World”

在每个程序员眼中,可能学习的每一门编程语言第一堂课都是怎么输出“Hello World”。记不起当初怎样就步入了编程的道路,一走便是这大半年。只是,表叔说,你的路还很长。站在一个菜鸟的角度,或许不能去评论什么。记得没遇到一个新的语法,遇到一种更简单,更快捷的程序代码,总是会莫名的兴奋,像对世界充满幻想的孩子,发现了新大陆。

java代码运行正常
image-1648

学了编程之后,渐渐的也很少写文字了。对身边的大部分事物也渐渐失去了关注,变得更加闭塞,很少与人交流。最多的时候都是QQ,G+,Twitter(荒草遍地了),Facebook(也是荒草丛生)上面打个招呼,表达能力也慢慢退化。看到这些变化,有时候又会想,真如那句话吧,得到一些,就会失去另一些。

接近一年的时间,总算了解了变量,循环,运算符,数组……这些词汇,还有他们的用法。这或许是我这一年最大的收获,过去的那些风风雨雨,即便再苦,在现在看起来,又算的了什么?任何事,都有会过去的那一天。而往往,在当下,却难以看清自己。很多时候,总是在迷茫,在寻找,寻找心底的那个愿望。可,始终却不知道心底的那个愿望到底是什么?有时候,也会这样安慰自己:看,那个是你写的。换个地方,看到一个技术大牛,发现自己不过是冰山一角罢了,顿觉惭愧。一年的时间,不短,亦不长。技术的进步,却是缓慢的蜗牛,甚至在某一刻有过这样的想法:没日没夜的去写,拼命的写,写那些没写过的语句,读那些没看过的代码,忘记疲惫,忘记喧闹,忘记一切!

到目前为止,我并未那么做。我知道,那么做,会有效果,但那样的效果是我想要的吗?不,一口终究吃不了个胖子。于是,生活依然如前。上班,敲代码,睡觉。这是我在许久之后的发现:电脑里,满满的资料书,视频,竟然将我想电影埋没了!曾经的我,只会聊天,只会看电影,只会写博客。真的。

可现在,我满脑子都是技术,满脑子都是资料,视频。人生似乎变成了机器思维>>>机动的去执行一些操作。

2012是玛雅预言的世界末日,而偏偏这个世界末日没有到来。我开始了一个新的生活,万物有利有弊。在这里,我会谢谢世界末日,谢谢!有人说,只有将一个人逼到绝路才会改变,呵呵,现在想想的确如此。

<title>重生</title>

html
在2010年,我开始接触HTML,一种我喜欢的超文本标记协议。

在那之后,我也只是偶尔去写HTML,几乎没有认真的去写过一个网站,最多也只是知道<p>,<b>…这些简单的标签。甚至连div+css是什么都不知道,或许你会觉得悲哀。的确,现在看来我也觉得那时很悲哀。可那时,依旧懵懂,依旧幻想着美好的明天。

2009年触网时,被朋友介绍到5d6d(原康盛创想旗下的一个论坛,可注册自己的论坛),申请了自己的论坛。便使劲往里面拉人。每天拼命的去做论坛,发帖,拉人注册,甚至花了300去一个威客网站做了推广,人气上来了,知道了原来还有一个叫pr的东东。当时,每个论坛都会有一些falsh在首页的顶部或者底部,人家有,咱们也不能示弱啊。于是也学着放,发现需要一些代码(那时候连什么是HTML都不知道)。只好找朋友帮忙,于是就慢慢接触了HTML。

现在回想起来,2010,2011两年我都在看HTML啊!可是到现在,我的HTML水平也不咋的啊!元芳,这事,你怎么看?

接触了HTML之后,在2012年初的时候,总觉得“世界末日”都过去了(意味着毁灭),那么是不是该重生了?当时,Android很火,于是风风火火的想去学Android,查了一大遍资料之后,才发现需要编程基础。

好吧,哥不会告诉你们,哥真的去学基础了。。

Java.lang.Character

你没猜错,我的确是学Java基础去了。而且到现在,也不过是基础水平。但咱总不能一直在基础水平上徘徊,于是开始拼命的窜出基础,却又不能忘了基础(好纠结的句子)。

java
image-1649

一开始我这个段落名是:Java.lang.Object,为什么这么写?Object多牛啊,Java所有类的根类(也可以叫父类),但瞬间觉得这个太广泛了。于是换成了Char的包装类——Character.喜欢Char,或许只是单纯的认为它的专一。仅此而已。

对于Java,就不在赘述了,毕竟我还是Java菜鸟一枚。

Update  life set power = 8 ;

SQL是在后来学的,刚开始接触的时候,觉得很别扭,总觉得很难,怕学不会。

慢慢的也就适应了(不适应能怎么办?o(╯□╰)o),可理解不了的东西还是太多,太多。

database
image-1650

比如在Linux上利用Mysql创建一个表设置约束,真的,现在总算理解了,离开了图形化界面简直是举步维艰啊,我是一个被图形化怪坏了的孩子!

悲催之,很多东西,无异于重新学一遍(insert,update,delete,select不用了)。

这个简短的标题大意是:将(人生)表中,(动力)列的所有值更新成8(8/10).

echo “This is my favorite”;

php是我喜欢的一门语言,可能我不会做PHP程序员。

php

只是淡淡的喜欢而已(有点像女神的赶脚),远远的,只是淡淡的喜欢。

这个简短的标题大意是:输出一句话在网页或者其他可以让人看见的地方,这句话是:”This is my favorite”(这是我喜欢的)。

这不是总结

写了这么多,都有点累了,随笔写的,看到错误还望见谅一下。很久没写过这么多字了。

2012这一年,并不平静,装了Windows8,换了工作…………(#404 …….话太多了.)

好吧。不说了,上菜!!

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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
import java.util.Scanner;

/**
 * 人生=动力+时间.
 *
 * @author Ruidong_pu
 * @version 2012.12.23
 */

/*
 * 梦想
 */
interface Dream{
   
    int MAXTIME=100;
    /*
     * 人生
     */
    String life(int power,int time);
   
    /*
     * 动力
     */
   
    int power(int powers);
   
    /*
     * 时间
     */
   
    int time(int times);
}

public class Me2013 implements Dream  {
   
   
    /*
     * 人生
     * (non-Javadoc)
     * @see Dream#life()
     */
   
     public String life(int time,int power){
        return "人生=用>"+time+"年[+]这>"+power+"分动力:>>去实现梦想!";
    }
     
     /*
      * 动力
      * (non-Javadoc)
      * @see Dream#power()
      */
    public int power(int powers){
        //动力,8分(8/10)就好.
        return powers*0+8 ;
    }
   
    /*
     * 时间
     * (non-Javadoc)
     * @see Dream#time()
     */
   
    public int time(int times){//超过100,就重新算起.
        if(times<MAXTIME){
            return times;
        }else{
            return 1;
        }  
    }
   
    public static void main(String []args) {
        // TODO Auto-generated method stu
        Me2013 m =new Me2013();
        Scanner sc = new Scanner(System.in);
        try {
            System.out.println("努力时间(Year)[1...100之间的数字]?");
            int time=m.time(sc.nextInt());
            System.out.println("动力(8/10)?[1...10之间的数字]");
            int power=m.power(sc.nextInt());
            System.out.println(m.life(time, power));
        } catch (Exception e) {
            // TODO: handle exception
            System.err.println("请确认输入的是数字!");
        }
    }
}

Oracle,启动!

记录第一次启动

不知等了多久,遇到多少错误,多少异常,但总算没有放弃。

这时,我想起了马云的一句话:今天很残酷,明天更残酷,后天很美好,但绝大部分人死在明天晚上,看不到后天的太阳。

说实话,我对电子商务不感冒,但是对于Oracle却是着实的喜欢。

oracle第一次启动
image-1644
oracle第一次启动

沉浸了这么久之后的Oracle,总算可以发挥自己的作用了。

未来之路

这个未来之路说的是,我的学习之路。

不宣誓,认真的学,力求做到问心无愧。

已经在博文目录中创建了Oracle学习笔记,也就是以后所有与Oracle相关的文章,会放在这个目录下面。

在看到启动成功的那一刻,我忽然有种想哭的冲动!

仅仅是因为,这一刻,我已等了太久。

java:判断是否为数字

上次C#考试的时候,遇到了判断输入的是否为数字。于是,今天写出了java版本的判断方法。

使用正则表达式

说实话,正则表达式绝非一般人能懂。于是,我只好偷懒了,去网上找了一个比较精准的,至于正则的意思,我也懒得解释了。

不说了,上代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
        /*
     * 需要导入包:
     * import java.util.regex.Matcher;
         * import java.util.regex.Pattern;
     */

public boolean findNuminRegex(String s){
        /*
         * 使用正则表达式去匹配正浮点数.
         */
        Pattern p = Pattern.compile("^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$");//设置正则表达式
        Matcher m = p.matcher(s);//匹配
        return m.find();
    }

使用try-catch

不瞒大家,这个是最简单的,我在考试的时候就是用的这个。
思路是:把一个String转换成Double(在不用区分整数与浮点数的情况下),如果报错就可以用catch捕获.

不说,上代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
public boolean findNuminTryCatch(String s){
        /*
         * 使用try-catch判断是否为数字.
         */
        boolean find = true;
        try {
            double dNum = Double.parseDouble(s);
        } catch (Exception e) {
            // TODO: handle exception
            find=false;
        }
        return find;
    }

很简单吧..哈哈……

测试类,及所有代码

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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
 * 测试.
 *
 * @author Ruidong_pu
 * @version 2012.12.21
 */

public class TestTop  {

    public boolean findNuminRegex(String s){
        /*
         * 使用正则表达式去匹配正浮点数.
         */
        Pattern p = Pattern.compile("^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$");//设置正则表达式
        Matcher m = p.matcher(s);//匹配
        return m.find();
    }
   
    public boolean findNuminTryCatch(String s){
        /*
         * 使用try-catch判断是否为数字.
         */
        boolean find = true;
        try {
            double dNum = Double.parseDouble(s);
        } catch (Exception e) {
            // TODO: handle exception
            find=false;
        }
        return find;
    }

    public static void main(String []args) {
        // TODO Auto-generated method stu
        TestTop t =new TestTop();
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一个数字:");
        Object o=scanner.next();
        /*使用正则表达式部分.
        System.out.println(t.findNuminRegex(o.toString()));
        */
        /*
         * 使用try-catch部分.
         */
        System.out.println(t.findNuminTryCatch(o.toString()));
    }
}

常用的部分正则表达式

17种常用正则表达式

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
"^\\d+$"    //非负整数(正整数 + 0)
"^[0-9]*[1-9][0-9]*$"    //正整数
"^((-\\d+)|(0+))$"    //非正整数(负整数 + 0)
"^-[0-9]*[1-9][0-9]*$"    //负整数
"^-?\\d+$"        //整数
"^\\d+(\\.\\d+)?$"    //非负浮点数(正浮点数 + 0)
"^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$"    //正浮点数
"^((-\\d+(\\.\\d+)?)|(0+(\\.0+)?))$"    //非正浮点数(负浮点数 + 0)
"^(-(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*)))$"    //负浮点数
"^(-?\\d+)(\\.\\d+)?$"    //浮点数
"^[A-Za-z]+$"    //由26个英文字母组成的字符串
"^[A-Z]+$"    //由26个英文字母的大写组成的字符串
"^[a-z]+$"    //由26个英文字母的小写组成的字符串
"^[A-Za-z0-9]+$"    //由数字和26个英文字母组成的字符串
"^\\w+$"    //由数字、26个英文字母或者下划线组成的字符串
"^[\\w-]+(\\.[\\w-]+)*@[\\w-]+(\\.[\\w-]+)+$"        //email地址
"^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$"    //url

更新了一些外观

修改的一些部分

  • 修改文章宽度
  • 在边栏增加“简单网址”【不定期更新IT方面实用网址】
  • 修改文章内页顶部的AD
  • 修改h2的样式
  • 修改blockquote的样式

修改后首页

 

更新后的首页截图
image-1636
更新后的首页截图

下次可能会更新的地方

  • 在每个文章之间添加文章简介
  • 修复文章过长的问题
  • 修复头部单一样式
旧版截图
image-1637
旧版截图

 

“崎岖”的域名转移之路

两年前的尴尬

在2010年的时候,我曾从一个朋友的手中买过一个域名。当时的注册商是国内某大型论坛程序供应商下属的注册商(很长吧,哈哈),感觉还是挺信任的那种。偶然的一个机会,我发现了Godaddy,于是义无反顾的想把域名转移过去。自此,便开始了3个月的域名转移之路,一开始,好好的跟他们配合,邮寄资料,等,问,等。。。悄无声息的半月多过去了,后来只要问我那朋友有什么方法能加快转移不?他直接给了提示让投诉他们(顶级注册商,而非代理商)。于是,便开始投诉他们,发邮件给了ICANN,等了一星期,ICANN受理了投诉,开始三方协调。一周之后,转移码到手。【想转出而又拿不到转移码的朋友,可以参考:投诉获得域名转移码

对此,我不知道,是我悲催,还是他们悲催?如此多的朋友不约而同的将域名转移到国外,证明了什么?

域名
image-1630
域名

信誉!=一文不值

其实信誉对于大部分国内注册商来说,真的可以算是一文不值。

至少,他们不会像Godaddy那样一封接着一封的优惠码席卷而来。。。

至少,他们不会像Godaddy那样域名转移码只需要点几下鼠标。。。

至少,他们不会像Godaddy那样给予你完整的控制权。。。

至少,他们的眼中,你不是上帝。。。

有感而发,前几天看到有几个Godaddy的域名快要过期了,想到的一个捷径就是转到一个注册商,然后过60天之后(ICANN规定,转移到一个注册商之后,60天内不能再次转移,特殊情况除外)再转回Godaddy,个人还是比较喜欢Godaddy的。当然不仅仅是因为,他们喜欢在首页放美女(哈哈)。

今天转移的时候,遇到一个奇怪的现象,1AND1(较知名注册商)有一个$0.99的域名转入活动,在选择国家的时候,我竟然找不到China或者Chinese!!后来Google之,才发现1AND1拒绝中国用户已经不新鲜了。究其原因并不难想到。但更让人觉得悲愤的是:台湾居然可以!!!

唉。。。如何的曾经造就了今天的局面?

在国内注册商不景气的前提下,国外注册商却又在将我们拒之门外。

要求的多吗?

很多时候,可能我以及很多朋友都会问,要是国内的域名环境变得好一些了,还会转移到国外吗?

而我们要求的真的不多,真的,不多。

  1. 完整的域名控制权[修改资料,设置DNS等]
  2. 便利的域名转出,转入
  3. 优惠的价格
  4. ZF的监管更加合理
  5. 更加人性化的客户服务

多吗?真的不多。

但做到这5条,有那么难吗?