BoxCore

Start


  • 首页

  • 分类

  • 关于

  • 归档

  • 标签

  • 站点地图

  • 搜索

API标准

发表于 2015-02-25 | | 阅读次数

工作中会遇到许多API的工作,目前最流行的方案是使用RESTful API。

附录1:code对照表参考

仅供参考,API接口开发人员可根据实际情况自定义相应结果码或节点

  • 200 ok - 成功状态,对应,GET,PUT,PATCH,DELETE.
  • 500 faild - 失败状态
  • 304 not modified - HTTP缓存有效。
  • 400 bad request - 请求格式错误。可以标识参数错误或参数缺失
  • 401 unauthorized - 未授权。
  • 403 forbidden - 鉴权成功,但是该用户没有权限。
  • 404 not found - 请求的资源或接口不存在
  • 405 method not allowed - 该http方法不被允许。
  • 410 gone - 这个url对应的资源现在不可用。
  • 415 unsupported media type - 请求类型错误。
  • 422 unprocessable entity - 校验错误时用。
  • 429 too many request - 请求过多。

API参考说明

参考文档:

  • HTTP API 设计指南
  • 白宫API标准
  • php实现restful api有什么框架使用方便?
  • HTTP API响应数据规范整理
  • A Beginner’s Guide to HTTP and REST
  • RESTful实践总结

PHP RESTful相关项目:

  • Lysine2
  • ToroPHP
  • RESTFullYii

PhpStorm快捷键(windows)

发表于 2015-02-12 | | 阅读次数
  • CTRL + D 复制当前行或复制选中内容
  • CTRL + Y 删除当前行或选中内容所涉及的行
  • CTRL + R 查找替换
  • ALT + W 选中单词
  • ALT + 上下箭头 向上向下函数间切换
  • CTRL + SHIFT + V 显示最近粘贴板中的内容,选择后内容插入到光标位置
  • CTRL + Q 显示说明文档
  • CTRL + B 跳转到声明处
  • CTRL + N 类名查找
  • CTRL + SHIFT + N 文件名查找
  • CTRL + SHIFT + ALT + N 函数名查找
  • ALT + SHIFT + C 快速回顾最近修改的项目
  • CTRL + SHIFT + I 查看变量初始化的值
  • CTRL + ALT + T 插入环绕代码
  • CTRL + ALT + F12 跳转至当前文件所在磁盘上的位置
  • ALT + 左右键 标签切换
  • CTRL + F12 在当前类文件中快速查找方法

PHPstorm默认快捷键

  • CTRL + J 插入活动代码提示

ctrl+alt+t 当前位置插入环绕代码
alt+insert 生成代码菜单
Shift + Enter 新一行
ctrl+q 查看代码注释
ctrl+d 复制当前行
ctrl+y 删除当前行
shift+F6 重命名
ctrl+shift+u 字母大小写转换
ctrl+f 查找
ctrl+r 替换
ctrl+shift+I 查看变量或方法定义源
ctrl+g 跳转行
ctrl+alt+F12 跳转至当前文件在磁盘上的位置
alt+down 查看下一个方法
alt+up 查看上一个方法
ctrl+alt+l 重新格式化代码
ctrl+shift+down statement向下移动
ctrl+shift+up statement向上移动
alt+shift+down line向下移动
alt+shift+up line向上移动
ctrl+/ 行注释
ctrl+shift+/ 块注释

Ctrl + Shift + Z:redo

Ctrl + Shift + F:区域查找
ctrl+shift+n 打开工程中的文件
ctrl+b 跳到变量申明处
ctrl+[] 匹配 {}[]
ctrl+shift+]/[ 选中块代码

….
ctrl+x 剪切行
ctrl+shift+v 复制多个文本
alt+left/right 标签切换
ctrl+p 显示默认参数

ctrl + ‘-/+’: 可以折叠项目中的任何代码块

===================================================

2013-12-27 新增

CTRL + SHIFT + R 快速查找该关键字在整个项目中的位置,或者替换整个项目目录中的匹配字符。

这个快捷键找了好久终于发现了 ,哈哈

CTRL + T 更新当前项目的svn 代码。

CTRL + K 提交当前的目录下的svn 代码。

其实在做项目的过程中 最常用的就是 查找文件位置,类,函数,关键字符,行号。

我使用的主题 theme : Darcula

代码区主题 fonts :monospaced

(^__^) 欢迎补充……

PHP不同版本报错差异

发表于 2015-02-06 | | 阅读次数

开发和生产环境中经常会在PHP5.2、5.3和5.4版间切换,但各个版本函数和报错情况又不一样,下面发上工作中遇到报表不同后出现的各种坑。

PHP5.2升级后问题汇总

Deprecated: Assigning the return value of new by reference is deprecated in XXX

出现Deprecated: Assigning the return value of new by reference is deprecated in报错。这是因为5.3以后,不能使用”=&”符号,可以直接用”=”就可以了。 所以当出现这个问题后有两种解决方法:

  1. 把php的版本降级到5.3以下,但后退的不是明智的选择。
  2. 对程序中”=&”符号全部用”=” 代替。

示例如下:
Deprecated: Assigning the return value of new by reference is deprecated in

定位到出错的那一行: $this->_ole =& new OLERead();

我本地环境用的是PHP/5.3.8。

下面这段话引用于因思而变

解决办法:php5.3开始后,废除了php中的”=&”符号,所以要想复制,直接用=引用即可。详细如下:

1、PHP5对象复制是采用引用的方式;
2、如果不采用引用方式,则需要在复制对象时加关键字 clone;
3、如果在复制的过程中,同时要变更某些属性,则增加函数_clone();

PHP新增特性

自 PHP5.2 起,直至 PHP5.6 中增加的新特征。

  • PHP5.2 以前:autoload, PDO 和 MySQLi, 类型约束
  • PHP5.2:JSON 支持
  • PHP5.3:弃用的功能,匿名函数,
    新增魔术方法,命名空间,后期静态绑定,Heredoc 和 Nowdoc, const, 三元运算符,Phar
    
  • PHP5.4:Short Open Tag, 数组简写形式,Traits, 内置 Web 服务器,细节修改
  • PHP5.5:yield, list() 用于 foreach, 细节修改
  • PHP5.6: 常量增强,可变函数参数,命名空间增强

PHP5.2之前

1. autoload

php5.2 之前添加了__autoload()方法,使用一些类库的时候,难免会出现多个 autoload 函数的需要,于是 php5.4 后spl_autoload_register()取而代之了

PHP5.3

PHP5.4

1. Short Open Tag 自 PHP5.4 起总是可用

简写方式如<? /* Code... */ ?>或<?= $xxoo;?>.这种简写形式被称为 Short Open Tag, 在 PHP5.3 起被默认开启,在 PHP5.4 起总是可用。
使用这种简写形式在 HTML 中嵌入 PHP 变量将会非常方便。

2. 数组简写方式

简写形式如$arr = ["key" => "value", "key2" => "value2"];,在php5.4后开启支持

3. Traits

所谓Traits就是“构件”,是用来替代继承的一种机制。PHP中无法进行多重继承,但一个类可以包含多个Traits.

  • PHP手册 - Trait

4. 内置 Web 服务器

支持写法: php -S localhost:8000

5. 新增动态访问静态方法的方式

如:

1
2
$func = "funcXXOO";
A::{$func}();

6. 新增在实例化时访问类成员的特征

(new MyClass)->xxoo();

7. 新增支持对函数返回数组的成员访问解析

这种写法在之前版本是会报错的:print func()[0];, php5.4开始支持

PHP5.5

1. yield关键字

php5.5新增yield关键字,用于当函数需要返回一个迭代器的时候, 逐个返回值。

2. list() 用于 foreach

可以用 list() 在 foreach 中解析嵌套的数组

3. 不推荐使用 mysql 函数,推荐使用 PDO 或 MySQLi

4. 可用 MyClass::class 取到一个类的完整限定名(包括命名空间)

5. empty() 支持表达式作为参数

6. try-catch 结构新增 finally 块。

PHP5.6

1. 定义常量时允许使用之前定义的常量进行计算

2. 可变函数参数

函数中使用$args代理之前的用于代替 func_get_args()

3. 命名空间支持常量和函数

1
2
3
4
5
6
7
8
9
10
namespace Name\Space {
const FOO = 42;
function f() { echo __FUNCTION__."\n"; }
}
namespace {
use const Name\Space\FOO;
use function Name\Space\f;
echo FOO."\n";
f();
}

PHP7.0

PHP7.1

PHP7.2

Git如何永久删除文件(包括历史记录)

发表于 2015-02-05 | | 阅读次数
$ 步骤一: 从你的资料库中清除文件
git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch *.gz' --prune-empty --tag-name-filter cat -- --all
git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch *.tgz' --prune-empty --tag-name-filter cat -- --all
git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch *.zip' --prune-empty --tag-name-filter cat -- --all

$ 步骤二: 推送我们修改后的repo,以强制覆盖的方式推送你的repo, 命令如下:
git push origin master --force


$ 步骤三: 清理和回收空间
$ 虽然上面我们已经删除了文件, 但是我们的repo里面仍然保留了这些objects, 等待垃圾回收(GC), 所以我们要用命令彻底清除它, 并收回空间.

rm -rf .git/refs/original/
git reflog expire --expire=now --all
git gc --prune=now
git gc --aggressive --prune=now

设置完成之后, 你可以使用命令du -s .git查看仓库地址空间大小是否有明显减少了.

参考:

  • https://help.github.com/articles/remove-sensitive-data
  • http://www.cnblogs.com/shines77/p/3460274.html

MySQL基础复习

发表于 2015-02-01 | | 阅读次数

@20130611 by boxcore

约定:

tabname:表名
dbname:数据库名
fieldname 或 field+n : 字段名

一、数据库概述

  1. MySQl操作过程:MySQl 服务端,MySQl客户端;
  2. 数据库产品分类:关系型数据库 ,非关系型数据库;
  3. 数据表的字符集:Client,Conn,Server,DB
    3.1 my.ini配置默认字符串:
    • dafault-character-set=utf8 # client & Conn charset;
    • character-set-server=utf8 # server & DB charset;
      3.2 PHP语句设置客户端字符集: mysql_query(“set name utf8”);
      3.3 创建表时指定字符集方法:




















1


2








create table tab(…)engine=MyISAM DEFAULT CHARSET=utf8;


create table tabname(…)type=mysiam default character set utf8 collate utf8_general_ci;






  1. 数据表组成:表结构文件 (),表数据文件(), 表索引文件 ();
  2. 数据库引擎:InnoDB支持事务处理,但不支持全文搜索
    MyISAM支持全文搜索但不支持事务, MEMORY和MyISAM 一样,只不过它把数据保存在内存而不是磁盘中,这样速度更快。

二、数据库的常用操作:

  1. 数据库的连接:mysql -uroot -p123 -h192.168.2.2
  2. 退出MySQL:exit|quit|Ctrl+C
  3. 中断数据库的操作:\c
  4. MySQl服务器的关闭和退出:net stop mysql || net start mysql
  5. MySQl中用户的修改:set password=password("密码 ")
    创建用户: CREATE USER ‘test1’@’localhost’ IDENTIFIED BY ‘*‘;
  6. MySQl中用户授权:




















1


2








grant all on . to user1@192.168.190.20 identified by “密码”;


GRANT ALL PRIVILEGES ON test1\_% . * TO ‘test1’@‘localhost’;






  1. 刷新权限如:flush privileges;
    • 在客户端修改用户权限后需要刷新数据库缓存
  2. 查看用户授权




















1


2








use mysql


select user,password,host from user;






10.删除用户





















1


2


3


4


5








— 方法一:


drop user user1@“%”;


— 方法二:


use mysql


delete from user where user=“ 用户名”;






三、数据库的操作

  1. 创建数据库 create database dbname
  2. 查看数据库 show databases
  3. 删除数据库 drop database dbname
  4. 切换数据库 use dbname

四、表操作

  1. 查看表:show tables ;
  2. 创建表:create table tabname (field1 ,field2, fieldn);
  3. 删除表:dorp table [if exists] tabname ;
  4. 修改表名:rename table oldTabName to newTabName ;
  5. 查询表结构:desc tabname;

五、表内容管理

  1. 增加数据:insert: insert into user(name) values("user4")

2.删除数据:delete





















1


2


3








— 必须加where 条件,如果不加 where全部删除,这个时候应该用 truncate清空数据


delete from user where id>=3 and id<=5;


delete from user where id between 3 and 5;






3.修改数据:update





















1


2








update user set name=‘user5’,age=20 where id=5;


— 在mysql 中没有==,只有 =,即包含赋值,又包含比较






4.查询数据:select

六、数据字段类型

  1. 数值
    显示和大小
  • int : int数值类型的无符号取值范围: 0-42亿
  • float
  • tinyint : tinyint数值类型的无符号取值范围: 0-255
  1. 字符串
    显示和个数
  • char ·char(3)的意思是什么: 0-255
  • varchar ·varchar(3)的意思是什么: 0-65535
  • enum
  • set

3.日期和时间( 数值)

  • date
  • time
  • datetime
  • year
  • timestamp:在php中把时间加工成时间戳,放到 mysql中的int 列

七、数据字段属性

  1. unsigned
  2. zerofill
  3. auto_increment
  4. null
  5. not null # 如表中性别例子 ,如果有一列你设计成not null,那么给 default默认值
  6. default

八.数据表的类型

  1. myisam // 默认就是 myisam
  2. innodb // 事务
    创建表时指定表类型: create table t1(id int) engine=innodb;
    修改表引擎类型: alter table tablename engine=innodb;
    查看表类型: show create table tabname;

九.数据表索引设置

1.主键索引 primary key 一个表中只能有一个主键索引

添加索引 :
1).建表时就加上去
2).用alter 命令
alter table t2 add primary key(id); // 加主键
alter table t2 modify id int unsigned auto_increment; // 加无符号和自增属性

删除索引 :
alter table t2 modify id int; // 加无符号和自增属性
alter table t2 drop primary key;

2.唯一索引 unique index
// 每一列都可以是唯一索引,本列值不能重复值

3.普通索引 index

添加索引 :alter table user add index in_name(name);
删除索引 :alter table user drop index in_name;

//每一列都可以是普通索引

4.全文索引 fulltext


八.修改数据表结构 -alter

1.修改字段
1)change
·alter table user change age sex int;

把age 的字段重命名为 sex并设置字段属性为int;【更改字段名,修改字段名】

//修改字段名的时候建议带上他原有的 int或者varchar 属性,如果不写属性会报错;
2)modify
·alter table user modify age tinyint;

2.添加字段
·alter table user add age int; //默认加到最后
·alter table user add age int first; //加到最前面去
·alter table user add age int after id; //加到id 后面

3.删除字段
·alter table user drop age;

4.添加索引
·alter table tab62 add primary key(id);
·alter table tab62 modify id int unsigned auto_incrment;
·alter table tab62 add unique un_name(name);
·alter table tab62 add index in_pass(pass);

5.删除索引
·alter table tab62 modify id int;
·alter table tab62 drop primary key;
·alter table tab62 drop index in_pass;
·alter table tab62 drop unique un_name;

6.更改表名称
1)rename table tab62 to tab26; 修改表名,非字段
2)alter table user rename to user1;

7.更改auto_increment 属性的初始值
alter table user auto_increment=1;
//truncate user; 效率快,自增列表自动从 1开始(清空表中所有数据)

8.更改表名称:alter table 旧表名 rename as 新表名

9.删除表:dorp table [if exists] 表名;


结构化查询语言 sql包含四个部分:

1.DDL // 数据定义语言 ,create,drop,alter
2.DML // 数据操作语言 ,insert,update,delete
3.DQL // 数据查询语言 ,select
4.DCL // 数据控制语言 ,grant,commit,rollback


操作数据表中的数据记录 (DML)

1.insert
eg:insert into user(name) values(“user4”);

2.update
update user set name=”user4” where id=4;
//在mysql 中没有==,只有 =,即包含赋值,又包含比较
update user set name=’user5’,age=20 where id=5;

3.delete
//必须加where 条件,如果不加 where全部删除,这个时候应该用 truncate清空数据
delete from user where id>=3 and id<=5; 等同于 delete from user where id between 3 and 5;


数据查询语言( DQL)—select 使用

1.选择特定的字段
select id,name from user;
//select * from user;

2.给字段取别名-as
select id,name from user;
select id maoxian,name from user;
select id as maoxian,name from user;

3.distinct关键字的使用
//取出唯一值
select distinct age from user;

4.使用where 条件进行查询
select * from user where id>=3 and id<=5;

5.查询空值null
select from user where age is null;
select
from user where age is not null;

6.between and的使用方法
select * from user where id between 3 and 5;

7.in的使用方法
select from user where id=1 or id=2 or id=10;
select
from user where id in(1,2,10); 建议使用这个

8.like的使用方法
//模糊查询,text 类型不能加索引
% 匹配所有
_ 匹配一个字符
select * from user where name like “%mysql%”; //% 在前,name这一列的索引会失效

9.使用order by 对查询结果排序
//排序,asc 和desc,一个是升序,一个降序
select from user order by id asc; // 默认就是升序 ,数字从小到大
select
from user order by id desc; // 默认就是升序 ,数字从大到小

10.使用limit 限定输出个数 (分页实现)
select from user order by id limit 0,2;
select
from user order by id limit 5; //limit 0,5 前五个

11.concat() 连接函数
select concat(id,age) from user; # 输出的值为每一行中指点的列字符串相加。
select concat(“aaa”,”bbb”,”cccc”); # 输出连接的字符串: aaabbbccc,如果没有双引号则误认为是字段,报错。

12.rand() 随机数
eg: select * from user order by rand() limit 3;

13.使用统计函数:
count() 统计个数
sum() 求和
avg() 平均值
max() 最大值
min() 最小值
eg:
select count(id),sum(age),avg(age),max(id),min(id) from user;

14.group by分组聚合的 使用-select
结合合计函数,根据一个或多个列对结果集进行分组
//分组 聚合
//只分组没有意义,必须用函数去聚合 .
eg: select banji,sum(score),count(id) from user group by banji; // 从班级表中统计每个班的总分数和总人数

eg2:查找每个客户的总金额(总订单) :

O_Id OrderDate OrderPrice Customer
1 2008/12/29 1000 Bush
2 2008/11/23 1600 Carter
3 2008/10/05 700 Bush
4 2008/09/28 300 Bush
5 2008/08/06 2000 Adams

6 2008/07/21 100 Carter

执行语句: SELECT Customer,SUM(OrderPrice) FROM Orders GROUP BY Customer;

结果集类似这样:

Customer SUM(OrderPrice)
Bush 2000
Carter 1700

Adams 2000


数据查询语言( DQL)2—select 的多表查询

假如下面三种方法都能实现一种表,优先选择普通多表查询。

1.普通多表查询
1)两表查询
mysql> select user.id,user.name,user.score,user.banji,tel.num from user,tel where user.id=tel.uid;
2)三表查询
mysql> select user.name,tel.num,qq.qq from user,tel,qq where user.id=tel.uid and user.id=qq.uid;

2.嵌套查询| 子查询-in
select * from user where id in(select uid from tel);

3.左链接查询-left join on
select user.id,user.name,tel.num from user left join tel on user.id=tel.uid;
//左链接以左边的表为主导,先输出左边表的所有数据,按条件输出右边表的内容,没有相对应的内容就为 null

*普通多表查询的三种方法,分别有什么区别:
普通多表查询,查多个表,并且可以输出多个表的内容
嵌套查询,查多个表,但只能输出一个表的内容
左链接查询,查多个表,先把左边的表全部输出,右边的表按条件输出,否者输出 null

复习 —最常用的语法:

  1. DDL 数据定义语言: create, drop, alter




















1


2








create database {database};


create table {table}();






  1. DML 数据操作语言: insert, update, delete
  • insert into 表名 [(字段 1,字段2, 字段n)] values (‘值 1’,’值2’,’ 值n’);
  • update 表名 set 字段名 =表达式[, 字段n=表达式 n] [where 条件] [order by 字段] [limit 行数 ];
  • delete from 表名 [where 条件 ] [order by 字段] [limit 行数];
  1. DQL 数据查询语言: select




















1








select [all|distinct] {|table.|[table.]field[as alias1][,[table.]field2[as alias2][,…]]} from tableexpression[,…][in externaldatabase] [where…] [group by…] [having…] [order by…] [limit count];






  1. DCL 数据控制语言: grant, commit, rollback
    1)grant 权限 on 数据库 .数据表 to 用户@登录主机 indentified by “密码”

jetbrains系统注册码

发表于 2014-07-18 | 分类于 App | | 阅读次数

系列软件的用户名都是BOXCORE

phpStorm注册码:

===== LICENSE BEGIN =====
63272-12042010
00000l7V1XdVStPUJJBsHFRDdsUbGG
VbeOn!V1m62NqILGensvhsX5”r1PWS
RdlBkcl2sw3SDjP8azf4jw90TVuVZB
===== LICENSE END =====

 

rubymini注册码

===== LICENSE BEGIN =====
36121-12042010
000026ZaA8”l8ewDF”62XGOG4oeKCM
QfyjQCh4OkEdFXYoYBX”PnUChnMrLK
CfF”7RgedAhh78zfNSlNEc996jZJpV
===== LICENSE END =====

 

WebStorm

===== LICENSE BEGIN =====
31168-12042010
00000FTsQvvg2Wsc5xjT0AVDwzU4zZ
D87W3vfAv8hY””LXngYd1cHyAL9srj
hC70dya142m5uvhirGmWPcd”p8rMMf
===== LICENSE END =====

 

PyCharm

===== LICENSE BEGIN =====
98736-12042010
00001LIgH92VW6”X5OOrf4Vpt3t!g9
yuMZhvqcdcftrxPjQQvRiMCP8YsM0K
!BSir5BuHTtOvYAsh6Xt8weGoPp8it
===== LICENSE END =====


 

 

 

Linux下载工具(axel、wget、curl)使用

发表于 2014-06-26 | | 阅读次数

linux下常用的下载工具是wget,其他常用的有axel和curl

一、wget

应用场景

批量下载或递归下载网页中的所有文件: wget -r http://site.com/content_dir
指定下载编码后再重命名: wget --restrict-file-names=ascii -m www.xxx.com/

下载为ascii的文件名, 可以使用软件RenamePro8.0在“高级文件名变”更里面有一个“文件名编码与解码”,“ANSI编码URL字符串转换为文字”

参考

  • http://moper.me/wget-download-the-file-name-garbled.html
  • http://rubyer.me/blog/111/

二、axel

axel tools是多线程下载工具

1
2
3
4
5
6
7
8
9
10
11
12
13
14
$ 编译安装
wget http://mirrors.boxcore.org/lnmp/axel-1.0b.tar.gz
tar zxvf axel-1.0b.tar.gz
cd axel-1.0b
./configure
make && make install
cd ../
$ CentOS rpm包安装
wget -c http://pkgs.repoforge.org/axel/axel-2.4-1.el5.rf.i386.rpm # 64bit:http://pkgs.repoforge.org/axel/axel-2.4-1.el5.rf.x86_64.rpm
rpm -ivh axel-2.4-1.el5.rf.i386.rpm
$ ubuntu
apt-get install axel

Axel命令使用方法

axel 参数 文件下载地址
可选参数:

  • -n 指定线程数
  • -o 指定另存为目录
  • -s 指定每秒的最大比特数
  • -q 静默模式

如从Diahosting下载lnmp安装包指定10个线程,存到/tmp/:axel -n 10 -o /tmp/ http://soft.vpser.net/lnmp/lnmp0.7-full.tar.gz

如果下载过程中下载中断可以再执行下载命令即可恢复上次的下载进度。

人生选择

发表于 2014-05-27 | 分类于 未分类 | | 阅读次数

小学升初中 120多的分,不关心上学
初三自己真正努力,但只是勉强考到了3中
高二升高三 尖子班落选
高考考差了,去了一个不是自己选择学校和专业
第一份工作大桥化工实习
宾伦手表
辞职,瞎逛,自己折腾
去北京学习
就I进入7808工作

许多年去了,挚友只有2个。

很好的朋友4个。

我个人性格孤僻,自以为是,自傲。

偶尔抑郁症。

喜欢英文歌和轻音乐

追美剧和A威教育。

发自我的手机

学编程的原因

发表于 2014-04-30 | 分类于 Journal | | 阅读次数

以前在学校的时候学习编程是因为网页好玩,我感兴趣,但那时候还没有真正规划好自己的学习路线,也没有考虑以后人生计划。
我当时学的化工,那会只有一个简单的想法就是出来后我肯定不做化工,不做化工那么做什么我也没有好好想。于是,在大三实训了1年后果断的就辞职上了广州一个做二手钢琴朋友那里。在他那边的时候我帮他完成了一个二手钢琴的网站,但那时候网站基础什么的都很薄弱,当然做出的网站也是比较粗糙的,现在回去看这网站我也是无法直视的。
就在他那边白住了一个月,但不能在他那边白住人家那么长时间,在11年八月低的时候恰逢我朋友国亮也上广州了急需找个住,于是我们伙着一起在新市墟找了个单间住。那是我第一次租房,环境很糟,一楼住,阴寒潮湿,墙两边绕水渠,晚上还有很多老鼠在那边叫,屋里蟑螂一堆。就在那边瞎折腾了一个月,整天在那里漫无目的的上网。。
一个月后通过百姓网找到了我的第一份工作。

发自我的手机

JAVA学习计划

发表于 2014-04-26 | 分类于 Journal | | 阅读次数

高调在这里发布我的java学习计划正式开始了!本人的java基础为零,大计划是从最基础的javaSE学起,掌握基本语法后做个小项目巩固知识。在深思熟虑之下,考虑还是用java作为自学的第三个语言。其主要动机来源于要学习lucense项目开发搜索引擎。说干就干,下面给出近期快速突破java基础知识的计划:

4月26日:一整天卡java基础语法,并能用基础语法写简单的小试验。

 

同时网上也有网友提出的如何自学java的问题可以参考:

http://www.zhihu.com/question/19945685

 

参考视频教程:

http://edu.51cto.com/course/course_id-429.html

 

课程目录参考:

http://java.itcast.cn/java/course/base.shtml

 

于2014年4月26日 凌晨

1…212223…26
Zack Hwang

Zack Hwang

Go

257 日志
42 分类
76 标签
RSS
Links
  • 小白博客
  • 我的书单
© 2018 Zack Hwang
由 Hexo 强力驱动
主题 - NexT.Muse
又拍云