03 2014 档案

摘要:主要包括PHP的错误、异常处理和调试。具体如下: 1 2 3 4 5 6 61 test.php 62 67 * 例2:函数中的包含 68 如果 include 出现于调用文件中的一个函数里, 69 则被调用的文件中所包含的所有代码将表现得如同它们是在该函数内部定义的一样。 70 所以它将遵循该函数的变量范围。此规则的一个例外是魔术常量,它们是在发生包含之前就已被解析器处理的。 71 80... 阅读全文
posted @ 2014-03-24 21:36 NW_KNIFE 阅读(267) 评论(0) 推荐(0) 编辑
摘要:这部分主要包括php面向对象的程序设计,具体如下: 1 2 3 4 5 6 "来调用该对象中的成员属性和方法 26 $对象名称->属性; 27 */ 28 29 /* 30 * 类成员的访问控制 31 * 通过对类的成员添加关键字public、protected、private来实现对类中成员的访问控制。 32 如果没有设置这些关键字,php将自动解析为public 33 ① public:... 阅读全文
posted @ 2014-03-24 16:03 NW_KNIFE 阅读(321) 评论(0) 推荐(0) 编辑
摘要:本节主要是php中函数的学习: 1 2 3 4 5 6 "; 23 24 /* 25 * 工作中,有时还会将任意数量的参数传递给函数 26 * php中func_num_args函数返回参数总数,func_ge_args函数返回参数的具体信息 27 */ 28 function muti_parameters(){ 29 $all_parameters=func_get_args(); 30 ... 阅读全文
posted @ 2014-03-23 21:53 NW_KNIFE 阅读(277) 评论(0) 推荐(0) 编辑
摘要:主要包括数组的学习,具体如下: 1 2 3 4 5 6 "; 16 17 /* rangge()函数 18 * 该函数具有一个可选的第三个参数 19 */ 20 //1 21 $test1=range(1,10); 22 foreach($test1 as $temp){ 23 echo $temp." "; 24 } 25 echo ""; 26 ... 阅读全文
posted @ 2014-03-23 14:02 NW_KNIFE 阅读(335) 评论(0) 推荐(0) 编辑
摘要:其中包括php基础、字符串和正则表达式的学习。具体如下: 1 2 3 4 5 6 7 "; 15 echo 'my',' first',' php',' demo','!'; 16 17 /** 18 * php输出函数print 19 * print() 和 echo() 用法一样,但是echo速度会比print快一点点。 20 * 实际上它也不是一个函数,因此您无需对其使用括号。不过,如果您希望向print(... 阅读全文
posted @ 2014-03-22 16:15 NW_KNIFE 阅读(448) 评论(0) 推荐(0) 编辑
摘要:1 介绍 这一部分我们主要看看oracle是如何管理权限和角色的,权限和角色的区别在哪里。当刚刚建立用户时,用户没有任何权限,也不能执行任何操作。如果要执行某种特定的数据库操作,则必须为其授予系统的权限;如果用户要访问其它方案的对象,则必须为其授予对象的权限。为了简化权限的管理,可以使用角色。这里我们会详细的介绍。看图:2 权限 权限是指执行特定类型sql命令或是访问其它方案对象的权利,包括系统权限和对象权限两种。 2.1 系统权限 1)系统权限介绍 系统权限是指执行特定类型sql命令的权利。它用于控制用户可以执行的一个或是一组数据库操作。比如当用户具有create table权限时... 阅读全文
posted @ 2014-03-17 21:53 NW_KNIFE 阅读(10461) 评论(0) 推荐(0) 编辑
摘要:问题描述,现在有两台电脑 A 和 B: 1)电脑 A 上有 Oracle11G服务端; ip地址 192.168.1.198; 端口1521; 2)电脑 A 本机连接数据库正常,可以登录及操作等; 3)电脑B配置访问电脑A时报错:ORA-12541:TNS:无监听程序 报这种错的话,网上... 阅读全文
posted @ 2014-03-17 17:28 NW_KNIFE 阅读(10512) 评论(1) 推荐(1) 编辑
摘要:Oracle数据库的物理文件是存储在磁盘上的数据文件、控制文件和日志文件的总称。数据文件和日志文件是数据库中最重要的文件。数据库由若干个表空间组成,表空间由表组成,表由段组成,段由区间组成,区间由数据块组成。那么,数据在数据文件中是如何组织的呢?要了解这些内容我们首先必须理解什么是表空间(tablespace)、段(segment)、区(extent)、块(block),这些都是oracle数据库在数据文件中组织数据的基本单元。 块(block)是数据存储的物理单位,也是数据文件中最基础的单位。数据直接存储在块上,块是oracle空间分配的最小单位。oracle中的块大小常见的有三种:2... 阅读全文
posted @ 2014-03-17 10:18 NW_KNIFE 阅读(5444) 评论(0) 推荐(0) 编辑
摘要:ORACLE中数据字典视图分为3大类, 用前缀区别,分别为:USER,ALL 和 DBA,许多数据字典视图包含相似的信息。 1)USER_*:有关用户所拥有的对象信息,即用户自己创建的对象信息; 2)ALL_*:有关用户可以访问的对象的信息,即用户自己创建的对象的信息加上其他用户创建的对象但该用户有权访问的信息; 3)DBA_*:有关整个数据库中对象的信息;权限范围:DBA_*>= ALL_*>= USER_*关于用户、角色和权限信息的视图如下: (1)all_users视图:可以查看当前用户可以看到的所有用户 (2)dba_users视图:可以查看数据库中所有的用户信息 (3.. 阅读全文
posted @ 2014-03-16 21:49 NW_KNIFE 阅读(967) 评论(0) 推荐(0) 编辑
摘要:本篇主要介绍Oracle 11g中推出的“延迟段创建”(Deferred Segment Creation)特性,以及当我们使用这种特性时,需要注意的问题。 1)Deferred Segment Creation 在Oracle中,“表空间(Tablespace)、段(Segment)、分区(Extent)和块(Block)”是逻辑存储结构的四个层次。对数据表而言,通常是由一个或者多个段对象(分区表)Segment组成。也就是说,在数据表创建的时刻,Oracle会创建一个数据段Segment对象与之对应。 当Segment创建之后,Oracle空间管理机制会根据需要分配至少一个ext... 阅读全文
posted @ 2014-03-16 21:22 NW_KNIFE 阅读(14912) 评论(0) 推荐(2) 编辑
摘要:ORACLE 11G中有个新特性,当表无数据时,不分配segment,以节省空间。解决方法: 1)insert一行,再rollback就产生segment了 该方法是在在空表中插入数据,再删除,则产生segment。导出时则可导出空表。 2)设置deferred_segment_creation参数SQL> show parameter deferred_segment_creation NAME TYPE VALUE ------------------------------------ -------... 阅读全文
posted @ 2014-03-16 18:56 NW_KNIFE 阅读(53888) 评论(0) 推荐(4) 编辑
摘要:1 什么是IO Java中I/O操作主要是指使用Java进行输入,输出操作。Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列。Java的I/O流提供了读写数据的标准方法。任何Java中表示数据源的对象都会提供以数据流的方式读写它的数据的方法。 Java.io是大多数面向数据流的输入/输出类的主要软件包。此外,Java也对块传输提供支持,在核心库 java.nio中采用的便是块IO。 流IO的好处是简单易用,缺点是效率较低。块IO效率很高,但编程比较复杂。 Java IO模型: Java的IO模型设计非常优秀,它使用Decorator模式,... 阅读全文
posted @ 2014-03-14 11:34 NW_KNIFE 阅读(9696) 评论(1) 推荐(3) 编辑
摘要:众所周知,传递小量参数(在没有其他原因,例如隐藏参数值的情况下)推荐使用GET方法,传递大量参数推荐使用POST方法。原因是什么呢? 原因是传说GET方法是通过URL来传递,而URL的长度是受限的,而POST方法采用流的方式,理论上可以传递的容量是没有限制的。 现在来看这个描述:“URL的长度是受限的”,但HTTP协议规范也没有对URL长度进行限制,具体是在哪里受限制呢?browser端还是server端呢? 网上现在google出来的结果都是说url的长度实际上是受到browser的限制,如IE限定url长度为2083字节,opera 是4050, Netscape 是8192,等... 阅读全文
posted @ 2014-03-13 20:53 NW_KNIFE 阅读(7981) 评论(0) 推荐(0) 编辑
摘要:字节流与字符流的区别? 字节流与和字符流的使用非常相似,两者除了操作代码上的不同之外,是否还有其他的不同呢? 实际上字节流在操作时本身不会用到缓冲区(内存),是文件本身直接操作的,而字符流在操作时使用了缓冲区,通过缓冲区再操作文件,如下图所示 下面以两个写文件的操作为主进行比较,但是在操作时字节流和字符流的操作完成之后都不关闭输出流。 案例1:使用字节流不关闭执行package byteStream;import java.io.File;import java.io.FileOutputStream;import java.io.OutputStream;/** * 操作字节流 ... 阅读全文
posted @ 2014-03-11 20:03 NW_KNIFE 阅读(1380) 评论(0) 推荐(0) 编辑
摘要:System.in读取标准输入设备数据(从标准输入获取数据,一般是键盘),其数据类型为InputStream。方法: int read() // 返回输入数值的ASCII码,,该值为0到 255范围内的int字节值。若返回值为-1,说明没有读取到任何字节读取工作结束。 int read(byte[] b) // 读入多个字节到缓冲区b中,返回值是读入的字节数package InPackage;/** * System.in.read()返回值为输入数值的ASCII码,该值为0到 255范围内的int字节值 * 如果因为已经到达流末尾而没有可用的字节,则返回值 -1。 */public ... 阅读全文
posted @ 2014-03-11 14:09 NW_KNIFE 阅读(31022) 评论(0) 推荐(4) 编辑
摘要:抽象类abstract class 包含抽象方法的类,叫抽象类。而抽象的概念就是抽象出共同属性:成员变量和方法。所以抽象类可以有private等多种权限的成员变量和非abstract的成员方法。当然抽象方法是一定要有的。 抽象类是用于单一继承的,不能实例化。而继承类一定要实现抽象方法,因为抽象方法在抽象类里是没有实现行为的,访问权限只能是public。而非抽象方法则可以赋予方法的默认行为,访问权限可以多种,但需要考虑非抽象方法是否需要被继承类访问。接口 interface 接口,用于多重继承,也不能实例化。只能包含static final的成员变量,不过在interface中一般不定义成... 阅读全文
posted @ 2014-03-10 19:23 NW_KNIFE 阅读(413) 评论(0) 推荐(0) 编辑
摘要:static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念。 被static修饰的成员变量和成员方法独立于该类的任何对象。也就是说,它不依赖类特定的实例,被类的所有实例共享。只要这个类被加载,Java虚拟机就能根据类名在运行时数据区或者方法区内找到他们。因此,static对象可以在它的任何对象创建之前访问,无需引用任何对象。 用public修饰的static成员变量和成员方法本质是全局变量和全局方法,当声明它类的对象时,不生成static变量的副本,而是类的所有实例共享同一个static变量。 sta... 阅读全文
posted @ 2014-03-10 15:09 NW_KNIFE 阅读(16896) 评论(0) 推荐(1) 编辑
摘要:根据上下文环境,java的关键字final也存在着细微的区别,但通常指的是“这是无法改变的。”不想改变的理由有两种:一种是效率,另一种是设计。由于两个原因相差很远,所以关键子final可能被误用。 接下来介绍一下使用到final的三中情况:数据,方法,类final数据 许多编程语言都有某种方法,来向编译器告知一块数据是恒定不变的。有时数据的恒定不变是很有用的,例如:一个编译时恒定不变的常量一个在运行时初始化,而你不希望它被改变。 对于编译期常量的这种情况,编译器可以将该常量值代入任何可能用到它的计算式中,也就是说,可以在编译期就执行计算式,这减轻了一些运行时的负担。在java中,这类... 阅读全文
posted @ 2014-03-10 14:09 NW_KNIFE 阅读(463) 评论(0) 推荐(0) 编辑
摘要:编译器常量的特点就是:它的值在编译期就可以确定。比如: finalinti=5; 再傻的编译器也能在编译时看出它的值是5,不需要到运行时。对于运行时常量,它的值虽然在运行时初始化后不再发生变化,但问题就在于它的初始值要到运行时才能确定。 比如: Random rand = new Random(47); final int i4 = rand.nextInt(20); 虽然i4的值在定义并初始化后不会再发生变化(除非你使用一些不符合标准的小技巧),但再聪明的编译器也无法在编译时确定它的值呀。 为了更清楚的理解编译器常量的概念,我们引入【常量折叠】的概念:在编译器里进行语法分析的... 阅读全文
posted @ 2014-03-10 13:31 NW_KNIFE 阅读(4290) 评论(2) 推荐(2) 编辑
摘要:对于静态变量、静态初始化块、变量、初始化块、构造器,它们的初始化顺序以此是(静态变量、静态初始化块)>(变量、初始化块)>构造器。我们也可以通过下面的测试代码来验证这一点:package InitialOrder;/** * JAVA 初始化顺序 * @author Administrator * 初始化顺序依次是(静态变量、静态初始化块)>(变量、初始化块)> 构造器。 */public class InitialOrderTest { // 静态变量 public static String staticField = "静态变量"; // 变量 阅读全文
posted @ 2014-03-10 13:19 NW_KNIFE 阅读(1890) 评论(0) 推荐(0) 编辑
摘要:Java中存在着两种Random函数:一、java.lang.Math.Random; 调用这个Math.Random()函数能够返回带正号的double值,该值大于等于0.0且小于1.0,即取值范围是[0.0,1.0)的左闭右开区间,返回值是一个伪随机选择的数,在该范围内(近似)均匀分布。例子如下:package IO;import java.util.Random;public class TestRandom { public static void main(String[] args) { // 案例1 System.out.println... 阅读全文
posted @ 2014-03-09 21:55 NW_KNIFE 阅读(453819) 评论(4) 推荐(27) 编辑
摘要:publicstaticvoidmain(String[]args) 这绝对不是凭空想出来的,也不是没有道理的死规定,而是java程序执行的需要。 jvm在试图运行一个类之前,先检查该类是否包含一个特殊方法。这个方法必须是公有的,以便在任何位置都能访问得到。这个方法必须是static的,因为这个方法不能依赖任何该类的实例即可运行,而非static的方法,在运行之前要先创建该类的实例对象。 这个方法没有返回值。和C/C++程序不一样,java的程序默认都以常态结束,所以main不返回int。如果要以非常态结束程序,可以用System.exit(1)。 这个方法必须可以接受数目不定的S... 阅读全文
posted @ 2014-03-09 19:59 NW_KNIFE 阅读(29015) 评论(0) 推荐(0) 编辑
摘要:equals如果没有被重写的话,和==的作用是一样的,都是判断两个对象引用是否指向同一个地址。一般重写了equals()方法就表示比较它们“实际意义上相等”,比较的是内容,而不是引用地址。Java中String重写了equals方法,所以此时比较的是两者的内容是否相等,而==比较的永远是地址。package testPage;/* * ==和equals有何区别 * 这是在网上偶然看到的一个帖子,如果让我说,还真说不清楚,所以决定一探究竟。 * */public class StringAndEquals { public static void main(String[] arg... 阅读全文
posted @ 2014-03-09 14:33 NW_KNIFE 阅读(971) 评论(0) 推荐(0) 编辑
摘要:理论上Struts 2.0的Action无须实现任何接口或继承任何类型,但是,我们为了方便实现Action,大多数情况下都会继承com.opensymphony.xwork2.ActionSupport类,并重载(Override)此类里的String execute()方法。当然我们也可以在写action的时候实现Action接口. Action接口有:public static final java.lang.String SUCCESS = "success";public static final java.lang.String NONE = "none 阅读全文
posted @ 2014-03-08 19:08 NW_KNIFE 阅读(8113) 评论(0) 推荐(2) 编辑
摘要:package testPage;import java.io.File;import java.io.FilenameFilter;import java.io.IOException;/** * File类有一个listFiles(FileNameFilter filter). * 只需要实现一个简单的filter就可以找到满足fileter条件的所有文件。 * 例如我要在E:\data\file_selector_test 目录下面查找以.txt结尾的文件,我可以这么做。见下例。 * @author Administrator * */public class FileNameSelec 阅读全文
posted @ 2014-03-08 16:23 NW_KNIFE 阅读(21590) 评论(0) 推荐(0) 编辑
摘要:在Oracle中,不等号有三种:,!=,^= 例如: select * from test where name'xn'。返回的结果是name不为xn,且name不空的记录。但是这与我们想要得到的结果有出入,因为我们的目的是得到name为xn的全部记录,当然这也包括name为空的记录,所以这些写SQL语句是有问题的。为了解决这个问题,我们可以采用以下两种方案:select * from test where instr(concat(name,'xx'),'xn') = 0 ;select * from test where nvl(name,& 阅读全文
posted @ 2014-03-07 13:13 NW_KNIFE 阅读(12589) 评论(0) 推荐(0) 编辑
摘要:INSTR用法:INSTR(源字符串, 要查找的字符串, 从第几个字符开始, 要找到第几个匹配的序号) 返回找到的位置,如果找不到则返回0. 默认查找顺序为从左到右。当起始位置为负数的时候,从右边开始查找。若起始位置为0,返回值为0。SELECT INSTR('CORPORATE FLOOR', 'OR', 0, 1) FROM DUAL; 返回值为0SELECT INSTR('CORPORATE FLOOR', 'OR', 2, 1) FROM DUAL; 返回值为2SELECT INSTR('CORPORATE FLO 阅读全文
posted @ 2014-03-07 13:11 NW_KNIFE 阅读(6356) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示