摘要: No goals have been specified for this build今天通过 mvn archetype:create -DgroupId=ricki.cheung.struts -DartifactId=my_struts -DarchetypeGroupId=org.apache.struts -DarchetypeArtifactId=struts2-archetype-blank -DarchetypeVersion=2.0.14-SNAPSHOT -DremoteRepositories=http://people.apache.org/repo/m2-snapsh 阅读全文
posted @ 2011-11-10 16:35 wtx 阅读(26206) 评论(0) 推荐(0) 编辑
摘要: 1.#include <iostream>using namespace std;int main(){ int i = 0; int j = 0; if(i ++ == ++ j) { cout << "i," << i << "j," << j << endl; } else { cout << "不相等" << endl; cout << "i," << i << "j 阅读全文
posted @ 2011-09-26 21:35 wtx 阅读(377) 评论(0) 推荐(0) 编辑
摘要: 1. 纯虚函数,不能定义变量#include <iostream>using namespace std;class A{ public: virtual void f() = 0;};int main(){ A a; a.f(); return 0;}2. 虚函数是可以实现的#include <iostream>using namespace std;class A{ public: virtual void f() { cout << "hello world" << endl; }};int main(){ A... 阅读全文
posted @ 2011-09-25 23:13 wtx 阅读(231) 评论(0) 推荐(0) 编辑
摘要: 主要是学习:http://blog.csdn.net/intrepyd/article/details/4508770中的记录,并加上 对《深入Linux系统内核 》的学习精简版 1. 系统限制 目的: 为了保证系统的兼容性以及可以执行 主要分为编译时系统限制和运行时系统限制,整的跟C++多态一样 编译时系统限制可以在头文件中定义,例如<limit.h>中对于最大最小值的限制,运行时限制要求进程调用一个函数实现,主要分为sysconf 函数查询与目录和文件不相关的运行时限制,pathconf和fpathconf与文件和目录相关的运行时限制 实际上,编译时限制也可以通过函数进行查询( 阅读全文
posted @ 2011-09-13 22:30 wtx 阅读(304) 评论(0) 推荐(0) 编辑
摘要: innodb中有两种索引,B+树索引和哈希索引,其中hash索引是自适应性的,存储引擎会根据表的使用情况自动创建哈希索引,不能人为的干涉1. 聚集索引聚集索引,innodb存储引擎表是索引组织表,即表中的数据是按照主键顺序存放,而聚集索引是按照每张表的主键构造出一颗B+树,并且叶子节点存放的是整张表的行记录数据,因此,叶子节点是数据节点,并且因为B+树的特点,数据节点通过一个双向的链表连接起来,使得查找更加快速,由于实际的数据页只能按照一颗B+树来存放,所以,一张表只能拥有一个聚集索引,在多数情况下,查询优化器倾向于采用聚集索引。实验先创建一张表 t ,这里以人为的方式让其每个页只能存放两行数 阅读全文
posted @ 2011-09-13 17:41 wtx 阅读(4509) 评论(0) 推荐(0) 编辑
摘要: 1. mysql数据库和其存储引擎innodb的各种类型文件有: 参数文件,日志文件,socket文件,pid文件,mysql表结构文件,存储引擎文件2. 参数文件 mysql实例启动的时候,会先到配置文件去读一些参数,用来寻找数据库的各种文件所在的位置,以及制定某些初始化参数,这些参数通常是定义内存结构多大等设置信息可以将参数看成是一个个的键值对,可以通过show variables 查看所有的参数,或者通过like过滤参数名。 mysql中参数可以分为两类:动态参数和静态参数,动态参数在mysql实例运行中进行设置,而静态参数说明在整个mysql 实例生命周期中都是不用也不能进行修改的,. 阅读全文
posted @ 2011-09-13 12:41 wtx 阅读(548) 评论(0) 推荐(0) 编辑
摘要: 1. 事务也是数据库系统区别于文件系统的重要特性之一,在文件系统中,如果正在写文件,突然OS崩溃了,这是这个文件很有可能被破坏了(也有新的文件系统保证恢复,不被破坏)。 事务的目的:将数据库从一个状态转移到另外一个状态。事务用来保证数据库的完整性2. 事务的4个特性: 原子,一致,隔离,持久3. 事务的实现 原子,一致,持久都是通过数据库的redo和undo实现的4. redo,在innodb中,事务通过重做日志文件和innodb存储引擎的日志缓存来实现,当开始一个事务时,会记录这个事务的LSN(log sequence number,日志序列号),当事务执行时,会往innodb存储引擎的日志 阅读全文
posted @ 2011-09-13 00:05 wtx 阅读(225) 评论(0) 推荐(0) 编辑
摘要: 由于书是从图书馆借来的,记下一些学习的过程,便于以后查看1. 锁是数据库区别于文件系统的重要特性之1,锁机制用于管理对共享文件的并发访问 innodb使用的是行级锁 myisam,使用的是表级锁,在并发条件下,读操作没有问题,但是并发插入会有性能上的影响 sql server 2005之前的版本都是页级锁的,相对于myisam言,并发访问上性能有所提高,在2005以及之后,sql server 支持乐观并发和悲观并发,在乐观并发下执行行级锁,但实现方式和与innodb不相同,在sql server中,锁是一种稀有的资源,而在mysql innodb中,锁没有相关的开销,可以同时得到并发性和一致 阅读全文
posted @ 2011-09-12 23:55 wtx 阅读(1649) 评论(0) 推荐(0) 编辑
摘要: 1. python中返回值的类型,当然还可以组成其他的类型 tupledef returnValue(a,b): c = a+b return (a,b,c)x,y,z = returnValue(1,2)print 'x:',x,'y:',y,'z:',z listdef returnValue(a,b): c = a+b return [a,b,c]x = returnValue(1,2)print x dictdef returnValue(a,b): c = a+b return {a:c,b:c}x = returnValue(1,2) 阅读全文
posted @ 2011-09-12 10:33 wtx 阅读(398) 评论(0) 推荐(0) 编辑
摘要: 1.python中使用*代表可变参数,类似C语言中的 ... 不过 C语言中的可变参数之前必须有一个或者多个参数def funcD(a,b,*c): print a print b print "length of c is: %d"%len(c) print cfuncD(1,2,3,4,5,6,7) python中就不用,上下 两段代码中 c都是一个tuple,上面如果只有两个参数的话,c就是一个空的tupledef funcD(*c): print "length of c is: %d"%len(c) print cfuncD(1,2,3,4,. 阅读全文
posted @ 2011-09-12 10:28 wtx 阅读(323) 评论(0) 推荐(0) 编辑