05 2013 档案
摘要:刚刚在整合SSH时碰到了这样一个问题:当我用junit测试时不会报任何异常,数据也都能得到public class BuyerTest {@BeforeClasspublic static void begin() throws Exception{}@Testpublic void save(){ Configuration config=new AnnotationConfiguration().configure(); SessionFactory sf=config.buildSessionFactory(); Session session=sf.openSession(); ...
阅读全文
摘要:摘自酷勤http://www.kuqin.com/database/20130529/334520.html我们平常所说的索引,如果没有特别指明,都是指B+树结构组织的B-Tree索引。其中聚集索引,次要索引,覆盖索引,复合索引,前缀索引,唯一索引默认都是使用B+树索引,统称索引。当然,除了B+树这种类型的索引之外,还有哈稀索引(hash index)等。MySQL InnoDB B-Tree索引使用Tips这里主要讨论一下InnoDB B-Tree索引的使用,不提设计,只管使用。B-Tree索引主要作用于WHERE和ORDER BY子句。这里讨论的均在MySQL-Server-5.1.38测
阅读全文
摘要:今天启动MyEclipse8.5遇到了这样一个问题,原本设定在D盘的WorkSpace一下子默认到了系统盘,在网上查了些资料,都是下面这几种法子:方法一:打开Window---Preferences---General---Startup and Shutdown,勾选Prompt for workspace on startup 选项,再次登录是便会弹出Workspace launcher对话框;方法二:打开eclipse/MyEclipse安装目录下configuration\.settings\org.eclipse.ui.ide.prefs文件,修改SHWO_WORKSPACE_SEL
阅读全文
摘要:代理模式:·作用:为其他对象提供一种代理以控制对这个对象的访问。·在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。代理模式的角色:·抽象角色:声明真实对象和代理对象的共同接口。·代理角色:代理对象角色内部含有对真实对象的引用,从而可以操作真实对象,同时代理对象提供与真实对象相同的接口以便在任何时刻都能代替真实对象。同时,代理对象可以在执行真实对象操作时,附加其他的操作,相当于对真实对象进行封装。·真实角色:代理角色所代表的真实对象,是我们最终要引用的对象。例子:卖房子、中介未完,待续。。
阅读全文
摘要:IOC:控制反转、依赖注入 (Inversion of Control)·对象由容器来创建,而不是他们自己·对象本身并不知道他们自己是如何被配置的IOC用到了工厂设计模式、反射技术。IOC:由容器(框架)定制程序间的关系,不必象传统实现中由程序代码直接操控,控制权转到外部容器(框架)·目的:提升组件的重用概率依赖注入的实现—一接口注入:·原理:通过定义某一类型的接口interface来标识一组功能相似的对象,并在这一组对象与其调用者间,在编译时分离,在运行时才动态加载实现类·好处:使得调用者和组件对象间的依赖程度减小,提高了模块的独立性依赖注入
阅读全文
摘要:IOC(Inverse of Control)可翻译为“控制反转”,但大多数人都习惯将它称为“依赖注入”。在Spring中,通过IOC可以将实现类 、参数信息等配置在其对应的配置文件中 ,那么当需要更改实现类或参数信息时,只需要修改配置文件即可 所谓依赖注入就是指:在运行期,由外部容器动态地将依赖对象注入到组件中。当spring容器启动后,spring容器初始化,创建并管理bean对象,以及销毁它。所以我们只需从容器直接获取Bean对象就行,而不用编写一句代码来创建bean对象。 依赖注入即应用本身不负责依赖对象的创建及维护,依赖对象的创建及维护是由外部容器负责的。这样控制权就由应用转移到了.
阅读全文
摘要:缓存是介于物理数据源与应用程序之间,是对数据库中的数据复制一份临时放在内存中的容器,其作用是为了减少应用程序对物理数据源访问的次数,从而提高了应用的运行性能。Hibernate在进行读取数据的时候,根据缓存机制在相应的缓存中查询,如果在缓存中找到了需要的数据(我们把这称做“缓存命中"),则就直接把命中的数据作为结果加以利用,避免了大量发送SQL语句到数据库查询的性能损耗。Hibernate缓存分类:一、Session缓存(又称作事务缓存):Hibernate内置的,不能卸除。缓存范围:缓存只能被当前Session对象访问。缓存的生命周期依赖于Session的生命周期,当Session
阅读全文
摘要:1+N问题也可以叫N+1问题,什么是1+N问题呢?如果在一个对象里关联另一个对象,并且fetch = FetchType.EAGER。比如说ManyToOne(OneToMany也存在这种问题)关联,本来只需要取Many里的对象属性,可是Many里关联的对象都会单独再发一条语句取关联对象的属性。本来只用发一条就可以查出Many里的对象属性,可是它发了一条语句后,再发N条语句取关联对象的数据。解决办法:1、设置多的那方的FetchType为LAZY:在合适的时候才发出语句(按需要发语句)。2、BatchSize:在One对象设置Size后,取出Many里的数据后,再发N/Size条语句取关联对象
阅读全文
摘要:一个五次面试均遭失败的求职女生大家都喊大学生就业难。而且骂爹的骂爹,骂娘的骂娘,但就这个女生而言,她能够抱怨的只有她自己!我是在一次大学生就业论坛上遇到她的,她现身说法,说自己想找一份化妆品公司的销售工作,被五家公司面试过五次,但回回都被拒绝!她回来叹息:大学生找工作真难!但是,站在我眼前的她,形象很漂亮,气质很优雅,大学很有名,专业很牛棒!这样的女生,要找一份她所说的不需要什么特殊技能的化妆品销售工作都不得,中国还行吗?中国教育还行吗?中国大学生还行吗?中国很行。中国教育也很行。中国大学生更行!但为什么她面试五次都不行?为了中国大学生就业的信心和前景,我向她开火了:我说:“亲爱的,你知道你为
阅读全文
摘要:1.延迟加载load是true而get是false即:load采用的是延迟加载的方式;而get不是。hibernate思想是:既然这个方法支持延迟加载他就认为这个对象一定在数据库存在,在你声明User u = (User) session.get(User.class, id);这句时候,hibernate就干了一件事--->查询session缓存,如果缓存中没有这个对象,那就创建个代理。(因为延迟加载需要代理来执行所以就创建了个代理。)load访问数据库的时候,load默认为加载的数据数据库一定存在数据库中,返回的是一个代理实体,而不是一个真正的类实例,2.查询顺序load首先查询se
阅读全文
摘要:定义: 一 程序是存放在磁盘上的一系列代码和数据的看执行映像,是一个静止的实体, 二 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的一个独立单位, 是一个执行中的程序,它是动态的实体; 三 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),一个线程可以创建和撤销另一个线程; 一 进程与线程区别与联系 (1) 划分尺度:线程更小,所以多线程程序并发性更高; (2) 资源分配:进程是资源分配的基本单位,同一进程...
阅读全文
摘要:接上一篇问到的下面红色字体部分↓↓↓@Overridepublic void validate() { if (this.user.getUname().length()==0) { this.addFieldError("uname", "用户名不能为空aaa!"); this.addFieldError("uname", "用户名不能为空bbb!"); } super.validate();}答案是:当用户名为空时,这两个都会显示在jsp页面分析:struts2 api中是这样写的:Action level m
阅读全文
摘要:1)验证分为:编程式验证、声明式验证。2)“验证”要用到的拦截器:class="org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor"/>3)实现Action有3种方式,即-->1.pojo;2.实现Action接口;3.继承ActionSupport类一般我们会选择第三种方式--继承ActionSupport类,而这个ActionSupport类已经实现了Validateable、ValidationAware等接口。4)编程式验证验证步骤: <1>重写了
阅读全文
摘要:struts2中theme属性包括xhtml,html,simple,ajax 。默认是xhtmltheme:设置struts2标签的主题,默认为xhtml。theme=xhtml时:会默认额外生成tr,td。theme=simple时:就生成标签所对应的html标签形式。在默认情况下,表单元素是分布在不同行的。如下代码:<s:form action="login2"> <s:textfield label="用户名" name="username"/> <s:password label="密
阅读全文
摘要:1.几个高级查询运算词A: union 运算符[合并一起的数据]UNION运算符通过组合其他两个结果表(例如 TABLE1 和 TABLE2)并消去表中任何重复行而派生出一个结果表。当 ALL 随UNION 一起使用时(即 UNIONALL),不消除重复行。两种情况下,派生表的每一行不是来自 TABLE1 就是来自 TABLE2。B: except 运算符[1有但2没有的数据]EXCEPT运算符通过包括所有在 TABLE1 中但不在 TABLE2 中的行并消除所有重复行而派生出一个结果表。当 ALL 随EXCEPT 一起使用时(EXCEPTALL),不消除重复行。C:intersect 运算符
阅读全文
摘要:行列转换--普通假设有张学生成绩表(CJ)如下Name Subject Result张三 语文 80张三 数学 90张三 物理 85李四 语文 85李四 数学 92李四 物理 82想变成姓名 语文 数学 物理张三 80 90 85李四 85 92 82[sql] view plaincopyprint?declare@sqlvarchar(4000)set@sql='selectName'select@sql=@sql+',sum(caseSubjectwhen'''+Subject+'''thenResultend)[&
阅读全文
摘要:框架与新技术1、谈谈你对Struts的理解。1. struts是一个按MVC模式设计的Web层框架,其实它就是一个大大的servlet,这个Servlet名为ActionServlet,或是ActionServlet的子类。我们可以在web.xml文件中将符合某种特征的所有请求交给这个Servlet处理,这个Servlet再参照一个配置文件(通常为/WEB-INF/struts-config.xml)将各个请求分别分配给不同的action去处理。一个扩展知识点:struts的配置文件可以有多个,可以按模块配置各自的配置文件,这样可以防止配置文件的过度膨胀;2. ActionServlet把请求
阅读全文
摘要:1.xml是什么?xml提供一种描述结构化数据的方法,是一种简单,与平台无关并被广泛采用的标准,xml文档可以承载各种信息.2.XML用来干什么?你说了解的xml技术及其应用?保存配置,站与站之间的交流,都用得到它.Xml不仅可以用来描述数据,还可以作为数据的载体.1.用xml分离数据,数据单独放在xml中,集中精力更好的完成html的数据显示和布局,方便维护. 2.xml可以作为商业系统之间交换金融信息所使用的语言. 3.交换数据,用xml可以减少交换数据的复杂性. 4.xml可以用来共享数据.因为xml无关于硬件和软件. 5.xml可以充分的利用数据. 6.可以用于创建新语言,xml是WM
阅读全文
摘要:webservice部分1、WEBSERVICE名词解释。JSWDL开发包的介绍。JAXP、JAXM的解释。SOAP、UDDI,WSDL解释。Web ServiceWebService是基于网络的、分布式的模块化组件,它执行特定的任务,遵守具体的技术规范,这些规范使得Web Service能与其他兼容的组件进行互操作。JAXP(Java API forXML Parsing) 定义了在Java中使用DOM, SAX, XSLT的通用的接口。这样在你的程序中你只要使用这些通用的接口,当你需要改变具体的实现时候也不需要修改代码。JAXM(Java API forXML Messaging) 是为S
阅读全文
摘要:JavaWeb部分1、Tomcat的优化经验答:去掉对web.xml的监视,把jsp提前编辑成Servlet。有富余物理内存的情况,加大tomcat使用的jvm的内存2. HTTP请求的GET与POST方式的区别(1)get是从服务器获取数据,Post是向服务器传送数据,(2)get是把参数数据队列加到提交表单的Action属性所指的URL中,值和表单内容各个字段一一对应,在URL可以看到,Post是把表单字段内容等放于html的header内一起传送到Action属性所指的URL地址.不可见.(3)get方式,服务端可以用Requset.Query获取变量值. Post方式,服务器用requ
阅读全文
摘要:Html和JavaScript部分:1. 判断第二个日期比第一个日期大 如何用脚本判断用户输入的的字符串是下面的时间格式2004-11-21 必须要保证用户的输入是此格式,并且是时间,比如说月份不大于12等等,另外我需要用户输入两个,并且后一个要比前一个晚,只允许用JAVASCRIPT,请详细帮助作答,,//这里可用正则表达式判断提前判断一下格式,然后按下提取各时间字段内容[html] view plaincopyprint?<scripttypescripttype="text/javascript">window.onload=function(){//这么
阅读全文
摘要:7、递归算法题1一个整数,大于0,不用循环和本地变量,按照n,2n,4n,8n的顺序递增,当值大于5000时,把值按照指定顺序输出来。例:n=1237则输出为:1237,2474,4948,9896,9896,4948,2474,1237,提示:写程序时,先致谢按递增方式的代码,写好递增的以后,再增加考虑递减部分。 public static void doubleNum(int n) { System.out.println(n); if(n<=5000) doubleNum(n*2); System.out.println(n); }Gaibaota(N) = Gaibaota(N-
阅读全文
摘要:1. 判断身份证:要么是15位,要么是18位,最后一位可以为字母,并写程序提出其中的年月日。我们可以用正则表达式来定义复杂的字符串格式,(\d{17}[0-9a-zA-Z]|\d{14}[0-9a-zA-Z])可以用来判断是否为合法的15位或18位身份证号码。因为15位和18位的身份证号码都是从7位到第12位为身份证为日期类型。这样我们可以设计出更精确的正则模式,使身份证号的日期合法,这样我们的正则模式可以进一步将日期部分的正则修改为[12][0-9]{3}[01][0-9][123][0-9],当然可以更精确的设置日期。在jdk的java.util.Regex包中有实现正则的类,Patter
阅读全文
摘要:Java代码查错题:1.[java] view plaincopyprint?abstractclassName{privateStringname;publicabstractbooleanisStupidName(Stringname){}}abstract class Name { private String name; public abstract boolean isStupidName(String name) {} }答案: 错。abstract method必须以分号结尾,且不带花括号。2.[java] view plaincopyprint?publicclas...
阅读全文
摘要:Collection框架集合框架(Collection Framework)泛指java.util包的若干个类和接口.如Collection,List,ArrayList,LinkedList,Vector(自动增长数组),HashSet,HashMap等.集合框架中的类主要封装的是典型的数据结构,如动态数组,链表,堆栈,集合,哈希表等.集合框架类似编程中经常用到的工具类,使得编码这专注于业务层的实现,不需要从底层实现相关细节—“数据结构的封装”和”典型算法的实现”.1. Collection框架中实现比较要实现什么接口? Comparable/comparator2. ArrayList和V
阅读全文
摘要:1.java中有几种方法可以实现一个线程?用什么关键字修饰同步方法?stop()和suspend()方法为何不推荐使用?有两种实现方法,分别使用new Thread()和new Thread(runnable)形式,第一种直接调用thread的run方法,所以,我们往往使用Thread子类,即new SubThread()。第二种调用runnable的run方法。两种实现方法,分别是继承Thread类与实现Runnable接口用synchronized关键字修饰同步方法反对使用stop(),是因为它不安全。它会解除由线程获取的所有锁定,而且如果对象处于一种不连贯状态,那么其他线程能在那种状态下
阅读全文
摘要:1.try{}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后?也许你的答案是在return之前,但往更细地说,我的答案是在return中间执行,请看下面程序代码的运行结果:[java] view plaincopyprint?publicclassTest{publicstaticvoidmain(String[]args){System.out.println(newTest().test());}staticinttest(){intx=1;try{returnx;}finally{++x;}}}pub
阅读全文
摘要:数组相关:1. 如何把一段逗号分割的字符串转换成一个数组?String 类的split方法可以根据给定正则表达式的匹配拆分字符串,故而可以把字符串分离成单个字符的形式。StringTokenizer 类:string tokenizer 类允许应用程序将字符串分解为标记。tokenization 方法比 StreamTokenizer 类所使用的方法更简单。StringTokenizer 方法不区分标识符、数和带引号的字符串,它们也不识别并跳过注释。可以在创建时指定,也可以根据每个标记来指定分隔符(分隔标记的字符)集。 StringTokenizer 的实例有两种行为方式,这取决于它在创建时使
阅读全文
摘要:String类型的面试题1. String是最基本的数据类型吗?基本数据类型包括byte,int,char,long,float,double,boolean,short一共八个.Java.lang.String类是final类型的,因此不能继承,修改这个类.为了提高效率节省空间,应该用StringBuffer类.2. Strings=”Hello”;s=s+”world!”;这两句代码执行后,原始的String对象中的内容变没?没有,因为String被设计成为不可变类,不能修改,继承,代码执行后,s所指向的对象”hello”没有改变.不过s不指向s,而是指向了另外一个String.原来的对象
阅读全文
摘要:20.接口和抽象类相关.原始定义: 抽象类,java中可定义一些不含方法体的方法,它的实现交给该类的子类根据自己的情况去实现,这样的方法就是抽象方法,包含抽象方法的类叫做抽象类.必须用abstract来修饰.只需声明,不需要实现.含有抽象方法的类必须被声明为抽象类. 抽象类的子类必须覆盖所有的抽象方法后才能被实例化,否则这个子类还是抽象类. 抽象类中的方法不全是抽象的,但有抽象方法的肯定是抽象类. 接口:如果一个抽象类中所有的方法都是抽象的,那么就可以用接口来定义.也就是接口.接口是抽象方法和常量值的定义的集合.本质上,接口是一种特殊的抽象类.这种抽象类只包含常量和方法的定义,而没有变量和方法
阅读全文
摘要:先说==:==操作符专门用来比较两个变量的值是否相等,也就是用于比较变量说对应的内存中所存储的数值是否相等.要比较两个基本数据类型或者两个引用变量是够相等,只用==.如果一个变量指向的数据是对象类型,那么就涉及了两块内存,对象本身占用一块堆内存,变量也占用一块内存,例如:Object obj=newObject();obj是一个内存,new Object()是另一个内存.此时变量obj所对应的内存中存储的数值占用的那块内存的首地址.对于指向对象类型的变量,如果要比较两个变量是否指向同一个对象,就要看这两个变量所对应的内存中的数字是否相等,此时用==操作符来进行比较.再说equals:它用于比较
阅读全文
摘要:1.一个”.java”源文件中是否可以包含多个类(不是内部类)?有什么限制?可以有多个类,但只能有一个public的类,并且public 的类名必须和文件名相一致.2.Java有没有goto? 它是java中的保留字,现在没有在java中使用.3.&和&&的区别?他们2个都可以用作逻辑与的运算符.表示逻辑语and,当运算符两边的表达式结果都为true时,整个运算结果才为true.不同点:&&具有短路的功能,如果第一个表达式为false,则不再计算第二个表达式,如对于if(str!=null && !str.equals(“”))的表达式,
阅读全文
摘要:1.面向对象的特征有哪些方面? 主要有封装,继承,多态,也可以加上个抽象.封装封装是保证软件部件具有优良的模块性的基础,封装的目标就是要实现软件部件的高内聚,低耦合,防止程序相互依赖性而带来的变动影响.在面对对象的编程语言中,对象是封装的最基本的单位,面向对象的封装比传统语言的封装更为清晰,有力.面向对象的封装就是把一个对象的属性和行为的代码封装在一个模块中,也就是一个类中,属性用变量定义,行为用方法进行定义,方法可以直接访问同一个对象中的属性.通常情况下,只要记住让变量和访问这个变量的方法放在一起,将一个类中的成员变量全部定义成private,只有这个类自己的方法才可以访问到这些成员变量,这
阅读全文
摘要:1.什么是内部类?Static Nested Class 和 Inner Class的不同。内部类就是在一个类的内部定义的类,内部类中不能定义静态成员(静态成员不是对象的特性,只是为了找一个容身之处,所以需要放到一个类中而已,这么一点小事,你还要把它放到类内部的一个类中,过分了啊!提供内部类,不是为让你干这种事情,无聊,不让你干。我想可能是既然静态成员类似c语言的全局变量,而内部类通常是用于创建内部对象用的,所以,把“全局变量”放在内部类中就是毫无意义的事情,既然是毫无意义的事情,就应该被禁止),内部类可以直接访问外部类中的成员变量,内部类可以定义在外部类的方法外面,也可以定义在外部类的方法体
阅读全文
摘要:首先要明白这道题目的考查点是什么,一是大家首先要对计算机原理的底层细节要清楚、要知道加减法的位运算原理和知道计算机中的算术运算会发生越界的情况,二是要具备一定的面向对象的设计思想。首先,计算机中用固定数量的几个字节来存储的数值,所以计算机中能够表示的数值是有一定的范围的,为了便于讲解和理解,我们先以byte 类型的整数为例,它用1个字节进行存储,表示的最大数值范围为-128到+127。-1在内存中对应的二进制数据为11111111,如果两个-1相加,不考虑Java运算时的类型提升,运算后会产生进位,二进制结果为1,11111110,由于进位后超过了byte 类型的存储空间,所以进位部分被舍弃,
阅读全文
摘要:内部类,计算机面向对象程序设计概念。向对象程序设计中,可以在一个类的内部定义另一个类,这种类称为嵌套类(nested classes),它有两种类型,即静态嵌套类和非静态嵌套类。静态嵌套类使用很少,最重要的是非静态嵌套类,也即是被称作为内部类(inner)。内部类是JAVA语言的主要附加部分。内部类几乎可以处于一个类内部任何位置,可以与实例变量处于同一级,或处于方法之内,甚至是一个表达式的一部分。一、定义放在一个类的内部的类我们就叫内部类。二、作用1.内部类可以很好的实现隐藏一般的非内部类,是不允许有private与protected权限的,但内部类可以2.内部类拥有外围类的所有元素的访问权限
阅读全文
摘要:任何一个有经验的程序员都知道,软件开发遵循着一些不成文的法则。然而,如果你不遵循这些法则也并不意味着会受到惩罚;相反,有时你还会获得意外的好处。下面的就是软件编程中的21条法则:任何程序一旦部署即显陈旧。修改需求规范来适应程序比反过来做更容易。一个程序如果很有用,那它注定要被改掉。一个程序如果没用,那它一定会有很好的文档。任何程序里都仅仅只有10%的代码会被执行到。软件会一直膨胀到耗尽所有资源为止。任何一个有点价值的程序里都会有至少一个bug。原型完美的程度跟审视的人数成反比,反比值会随着涉及的资金数增大。软件直到被变成产品运行至少6个月后,它最严重的问题才会被发现。无法检测到的错误的形式无限
阅读全文
摘要:从明天起, 做一个幸福的人喂马, 劈柴, 周游世界从明天起, 关心粮食和蔬菜我有一所房子, 面朝大海, 春暖花开从明天起, 和每一个亲人通信告诉他们我的幸福那幸福的闪电告诉我的我将告诉每一个人给每一条河每一座山取一个温暖的名字陌生人, 我也为你祝福愿你有一个灿烂的前程愿你有情人终成眷属愿你在尘世获得幸福我也愿面朝大海, 春暖花开
阅读全文
摘要:熬夜的习惯最常出现在时间分配比较自由的年轻人中:大学生、待业者、自由撰稿人、网络作者、画手、空闲期的创业者……其中又以经常接触网络的人为主。其实熬夜并不是一种正常的 习惯,它和社交网络依赖症(一直刷手机、刷微博、只要手机不在身边就特别心慌,生怕别人不联系自己)一样都是强迫症的一种。写这篇文章是因为我自己以前就有严重的晚睡强迫症,一般情况我都不会正常作息,通常状况是凌晨四五点睡觉,第二天下午一两点起来。最凶猛的时候可以是下午两点睡晚上九点起。这是哪国时差?不清楚,反正全世界的时差都过,就是不爱按当地时间作息。这毛病我在网上搜过如何戒掉,发现医生说的话基本都没什么用,后来亲力亲为总算戒掉了。但强迫
阅读全文
摘要:长期受颈椎病困扰,最近终于学了两招, 彻底治好了, 核心是颈椎肌肉锻炼,早上坚持两项运动1. 两脚齐肩站立, 头向上看,手高举,胳膊向后旋转360度,一共50次。2. 背紧贴墙, 两手平举贴墙向上举起,再回落,来回30下. 只花5-10分钟,包好,妙极了。常对着电脑的童鞋们
阅读全文
摘要:一、 前言作为一个前端,有一款好的开发利器是必不可少的,editplus、notepad++都是不错的工具,体积轻巧,启动迅速(dw太浮肿了)。最近,又有一款新的编辑器诞生,席卷前端界,惹得无数喜爱,不少前端er纷纷抛弃用了数年的“伙伴”,投入了她的怀抱——Sublime Text2。Sublime Text2是一款跨平台的编辑器,再也不用为换平台而找不到合适的、熟悉的编辑器担忧了。目前,还是beta版中,不过功能已经很强大了,更新也很快,目前最新是bulid2181。ST2不是免费的,但可以永久免费使用,只是在保存的时候,偶尔会弹出要你购买注册的对话框,仅此而已。官网地址:http://ww
阅读全文
摘要:如何让editplus保存时不生成.bak备份文件用过editplus的朋友,一定会称赞它强大的编辑功能,我经常用它来查看代码,速度超快,用的很是舒心,没错,可以说没有一个开发人员不喜欢这款软件的。但是他有一个小小的bug,其实也不能说是bug,只是默认设置有点问题,就是每次编辑或者查看完文档之后,就会自动生成一个.bak备份文件,对大多数人来说,几乎没什么用处,下面将解决办法分享于大家:打开editplus软件,依次点击工具--配置用户工具--分类--文件--》去丢保存时创建备份文件前面的√(英文版路径:Tools-->Configure User Tools-->Files--
阅读全文
摘要:开发工具1. Web Developer 1.1.8https://addons.mozilla.org/en-US/firefox/addon/60以工具栏的形式对网页的(X)HTML、脚本、多媒体、CSS、缓存、图象等多方面的实用工具。使我们能轻易的获得网页的更多信息,使我们进一步的了解当 前所浏览的网页。说明:超强的web分析工具,开发人员必装。2. Firebug 1.5.0https://addons.mozilla.org/en-US/firefox/addon/1843Firebug是firefox下的一个插件,能够调试所有网站语言,如Html,Css等,但FireBug最吸引我
阅读全文
摘要:在火狐地址栏中输入: about:config进入配置1.如何加快火狐首次启动速度?(1)右键点击FireFox的快捷方式,在“属性”—“快捷方式”—“目标”,加上参数“ /Prefetch:1”。即:"C:Program FilesMozilla Firefoxirefox.exe" /Prefetch:1”(注意:“/”前有空格)(2)禁用ipv6解析:找到network.http.proxy.pipelining,点击右键,“切换”其值成 true,找到network.dns.disableIPv6 ,右键,切换,值变为true。2.让火狐在最小化时自动释放内存:右击
阅读全文
摘要:来看几个能集成并简化项目管理、客户服务、社会媒介和邮件等多功能的应用程序。你的工作流程是不是还停留在旧时代?来看下面几个能大大提高工作效率的工具。1. 让管理和协作更容易:Blossom像在白板上拖曳便签纸一样,在Blossom 里你可以把要做的事项自由的从一个列表拖到另一个列表里。Blossom能简便的记录个人事项、大项目及各种能想到的事项的进展过程。2. 简化社交媒体:Buffer让不断的状态更新淹没你的社交平台,那将是你和你的粉丝的灾难。Buffer允许你按序添加链接、图片、视频等,然后自动组织发布在Twitter、Facebook、Linkedin上。你也可以将时效性强的信息单列出来及
阅读全文
摘要:来源:http://e-ant.javaeye.com/blog/177579如果要使插件开发应用能有更好的国际化支持,能够最大程度的支持中文输出,则最好使Java文件使用UTF-8编码。然而,Eclipse工作空间(workspace)的缺省字符编码是操作系统缺省的编码,简体中文操作系统(Windows XP、Windows 2000简体中文)的缺省编码是GB18030,在此工作空间中建立的工程编码是GB18030,工程中建立的java文件也是GB18030。如果要使新建立工程、java文件直接使UTF-8则需要做以下工作:1、windows->Preferences...打开&quo
阅读全文
摘要:MyEclipse设置JSP页面默认编码方式以及设置在Java文件中作者、日期等说明MyEclipse设置JSP页面默认编码方式:windows(窗口)-Preferences(首选项)-MyEclipse-Files& Editors-JSP-右侧encoding:设置为ISO10646/Unicode(UTF-8)MyEclipse在Java文件中设置作者、日期等说明:windows(窗口)-Preferences(首选项)-Java-CodeStyle(代码样式)-CodeTemplates(代码模版)-右侧Comments(注释)-选择Types(类型)-点击edit(编辑)-
阅读全文
摘要:Hibernate一共包括了23个jar包,令人眼花缭乱。本文将详细讲解Hibernate每个jar包的作用,便于你在应用中根据自己的需要进行取舍。 下载Hibernate,例如2.0.3稳定版本,解压缩,可以看到一个hibernate2.jar和lib目录下有22个jar包: hibernate2.jar: Hibernate的库,没有什么可说的,必须使用的jar包 cglib-asm.jar: CGLIB库,Hibernate用它来实现PO字节码的动态生成,非常核心的库,必须使用的jar包 dom4j.jar: dom4j是一个Java的XML API,类似于jdom,用来读...
阅读全文
摘要:前面Leno的文章有介绍如何设置主机之间的SSH信任关系,在我平时的工作中经常需要配置Linux服务器之间的SSH信任关系,所以总结了一下在遇到SSH连接不上时候的解决思路,供大家参考。大家如果有什么新的思路也可以一起讨论。问题一: ssh IP_A 或ssh root@IP_A 都显示 Permission denied (publickey,gssapi-with-mic).思路:可以检查一下IP_A上面的SSH版本是否正确,线上服务器如果存在sshd路径是/use/local/bin/sshd的,一定要升级sshd版本,正确的版本是/usr/sbin/sshd问题二: ssh IP_A显
阅读全文
摘要:http://baike.baidu.com/view/1859857.htm单例模式一般有三种形式//1.饿汉式public class Singleton1 { private static Singleton1 instance = new Singleton1(); private Singleton1() { } static Singleton1 getInstance() { return instance; }}************************************************************************************
阅读全文
摘要:设计模式做为程序员的“内功心法”,越来越受到.net社区的重视,这种变化是很可喜的,Java社区走在了我们的前面,但这种状况也许有一天会发生改变。从追MM谈Java的23种设计模式 1、FACTORY—追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory. 工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:如何创建及如何向客户端提供。...
阅读全文
摘要:function delayURL(url) { var delay=document.getElementByIdx_x_x("time").innerHTML; if(delay>0){ delay--; document.getElementByIdx_x_x("time").innerHTML=delay; }else{ window.top.location.href=url; } //setTimeout("top.location.href='" + url + "'"); se
阅读全文
摘要:一、基本概念1、标签(Tag)标签是一种XML元素,通过标签可以使JSP网页变得简洁并且易于维护,还可以方便地实现同一个JSP文件支持多种语言版本。由于标签是XML元素,所以它的名称和属性都是大小写敏感的。2、标签库(Tag library)由一系列功能相似、逻辑上互相联系的标签构成的集合称为标签库。3、标签库描述文件(Tag Library Descriptor)标签库描述文件是一个XML文件,这个文件提供了标签库中类和JSP中对标签引用的映射关系。它是一个配置文件,和web.xml是类似的。4、标签处理类(Tag Handle Class)标签处理类是一个Java类,这个类继承了TagSu
阅读全文
摘要:过滤器<=>规则过滤1自定义过滤器类实现->Filter接口完成->定义规则 1实现功能 2放行<=>过滤链2配置web.xmlMyFilter sxt.MyFilter MyFilter /*/当前工程的根目录*所有的页面<=>数据<=>服务器可以进所有客户端(浏览)请求的过滤1编码2权限验证
阅读全文
摘要:}JSTL是JSP Standard Template Library(JSP标准模板库)的缩写}有如下优点1.简化jsp和web程序的开发2.可以在不同的应用服务器之间方便的移植3.使网站美工与编码人员分工更加明确包含:}core标签:一般标签、条件标签、循环标签、URL标签}xml标签}format标签}sql标签JSTL使用步骤:(1)页面指令导入(注:不需要导包,自动加载的)
阅读全文
摘要:EL<=>jstl标签EL<=>检索页面对象1)方式一:${参数} ->${param.参数名}${param.uname}2)方式二:${对象} ->${对象名.属性名}
阅读全文
摘要:9大内置对象request 请求 HttpServletrequest 实例response 响应 HttpServletresponse 实例config 配置 HttpServletConfig 实例 config作用-->在Servlet中设置初始化参数Session 会话 HttpServletSession 实例application 应用程序变量 HttpservletContext 实例page 当前页面对象 objectpageContext 当前页面上下文对象 servlet.jsp.PageContext 对象out 输出流 servlet.jsp.printwrit
阅读全文
摘要:在GenericServlet中,从servlet接口带来的init(ServletConfig config)对它进行重写时,如果忘了调用super.init(config)时,就会出现空指针异常,为了解决这样的情况,GenericServlet中于是有了一个无参的init()方法,推荐大家重写init方法时,重写无参的init()方法.(第一种init()方法是Servlet接口中init()方法的实现。这种方法中,首先将ServletConfig对象保存在一个transient实例变量中,然后调用第二种不带参数的init()方法。通常我们在编写集成自GenericServlet的Serv
阅读全文
摘要:在servlet为客户端提供服务的过程中,在服务器内部只有一个servlet对象。³生命全过程:加载ClassLoader实例化new (第一次客户端请求过来的时候,进行实例化)初始化init(ServletConfig)处理客户端请求service doGet doPost(处理客户端请求时是以多线程进行的)退出服务destroy()³API中的过程:init()//只执行一次, 第一次初始化的时候Servlet生命周期分为三个阶段: 1,初始化阶段调用init()方法 2,响应客户请求阶段 调用service()方法 3,终止阶段 调用destroy()方法Servle
阅读全文
摘要:HTTP状态码,我都是现查现用。 我以前记得几个常用的状态码,比如200,302,304,404, 503。 一般来说我也只需要了解这些常用的状态码就可以了。如果是做AJAX,REST,网络爬虫,机器人等程序。还是需要了解其他状态码。本文我花了一个多月的时间把所有的状态码都总结了下,内容太多,看的时候麻烦耐心点了。HTTP状态码的学习资料到处都有,但是都是理论上讲解。本文介绍HTTP协议中的HTTP状态码(HTTP Status Code), 会对大部分的状态码都进行了详细的实例讲解。要了解状态码,应该在实例中去理解状态码的意义,否则看了也会忘记的。用Fiddler工具可以查看HTTP Req
阅读全文
摘要:1 Server1.1 In the Tomcat world, a Server represents the whole container. Tomcat provides a default implementation of the Server interface., and this is rarely customized by users.1.2 在tomcat的世界里,一个server代表整个容器.Tomcat提供了一个默认的org.apache.catalina接口的实现.用户很少修改这个默认的实现2 Service2.1 A Service is an intermed
阅读全文
摘要:当编写一个servlet时,必须直接或间接实现servlet接口,最可能实现的方法就是扩展javax.servlet.genericservlet或javax.servlet.http.httpservlet当实现javax.servlet.servlet接口时必须实现5个方法init(servletconfigconfig)service(servletrequestreq,servletresponseresp)destroy()getservletconfig()getservletinfo()service是执行应用逻辑的入口点,包容器调用此方法来响应进来得请求,只是在servlet被
阅读全文
摘要:深入了解Dojo的服务器推送技术dojox.cometd工具简介:服务器推送技术已经出来一段时间了,业界上也有不少基于这种技术(应该说是设计模式)的开源实现,但是要移植或者说应用到自己的项目上都比较麻烦。Dojo这样一个大型的Web2.0开发框架提供了一套封装好的基于服务端推送技术的具体实现(包括服务端Java和客户端Web和JavaScript),它基于Bayeux协议,提供了一些简单而且强大的接口可以让你快速构建自己的服务端推送功能。客户端实现即Dojo的Cometd前端组件,它封装了建立连接、消息订阅等等接口。服务端基于Jetty和annotation,组建消息推送机制,同样也封装了比较
阅读全文
摘要:C/S结构,即Client/Server(客户机/服务器)结构,是大家熟知的软件系统体系结构,通过将任务合理分配到Client端和Server端,降低了系统的通讯开销,可以充分利用两端硬件环境的优势。早期的软件系统多以此作为首选设计标准。。B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓3-tier结构。B/S结构,主要是利用了不断成熟的WWW浏览器技术,结合浏览器的多种Script语言(VB
阅读全文
摘要:1.RequestDispatcher.forward()――转发是在服务器端起作用,当使用forward()时, Servlet engine传递HTTP请求从当前的Servlet or JSP到另外一个Servlet,JSP或普通HTML文件,也即你的form提交至a.jsp,在a.jsp用到了forward()重定向至b.jsp,此时form提交的所有信息在b.jsp都可以获得,参数自动传递.但forward()无法重定向至有frame的jsp文件,可以重定向至有frame的html文件,同时forward()无法在后面带参数传递,比如servlet?name=frank,这样不行,可以
阅读全文
摘要:1 GB2312-80GB2312码是中华人民共和国国家汉字信息交换用编码,全称《信息交换用汉字编码字符集——基本集》,由国家标准总局发布,1981年5月1日实施,通行于大陆。新加坡等地也使用此编码。GB2312收录简化汉字及符号、字母、日文假名等共7445个图形字符,其中汉字占6763个。GB2312规定“对任意一个图形字符都采用两个字节表示,每个字节均采用七位编码表示”,习惯上称第一个字节为“高字节”,第二个字节为“低字节”。GB2312将代码表分为94个区,对应第一字节;每个区94个位,对应第二字节,两个字节的值分别为区号值和位号值加32(2OH),因此也称为区位码。01-09区为符号、
阅读全文
摘要:J2SE DK & API下载————————-http://java.sun.com/j2se/1.3/download.htmlhttp://java.sun.com/j2se/1.4.2/download.htmlhttp://java.sun.com/javase/downloads/index_jdk5.jsphttp://java.sun.com/javase/downloads/index.jspJ2EE DK & API下载————————-http://java.sun.com/j2ee/1.3/index.jsphttp://java.sun.com/j2e
阅读全文
摘要:DK1.5引入了新的类型——枚举。在Java中它虽然算个“小”功能,却给我的开发带来了“大”方便。用法一:常量在JDK1.5之前,我们定义常量都是:public static fianl....。现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法。Java代码public enum Color {RED, GREEN, BLANK, YELLOW}用法二:switchJDK1.6之前的switch语句只支持int,char,enum类型,使用枚举,能让我们的代码可读性更强。Java代码enum Signal {GREEN, YELLOW, RED}publ
阅读全文
摘要:1.迭代器Iterator迭代器是一个对象,它的工作是遍历并选择序列中的对象。客户端程序员不关心序列底层的结构。此外,迭代器通常被称为“轻量级”对象:创建它的代价小。因此,经常可以见到对迭代器有些奇怪的限制。Java的Iterator就是迭代器受限制的例子,它只能用来:1)使用方法iterator()要求容器返回一个Iterator。第一次调用Iterator的next()方法时,它返回序列的第一个元素。2)使用next()获得序列中的下一个元素。3)使用hasNext()检查序列中是否还有元素。4)使用remove()将上一次返回的元素从迭代器中移除。import java.util.Arr
阅读全文
摘要:Java线程死锁 Java线程死锁是一个经典的多线程问题,因为不同的线程都在等待那些根本不可能被释放的锁,从而导致所有的工作都无法完成。假设有两个线程,分别代表两个饥饿的人,他们必须共享刀叉并轮流吃饭。他们都需要获得两个锁:共享刀和共享叉的锁。 假如线程“A”获得了刀,而线程“B”获得了叉。线程“A”就会进入阻塞状态来等待获得叉,而线程“B”则阻塞来等待“A”所拥有的刀。这只是人为设计的例子,但尽管在运行时很难探测到,这类情况却时常发生。虽然要探测或推敲各种情况是非常困难的,但只要按照下面几条规则去设计系统,就能够避免Java线程死锁问题: 让所有的线程按照同样的顺序获得一组锁。这种方法...
阅读全文
摘要:以下是Java应用在运行时常见的一些问题,总结了运行时黑盒方式的一些排查方法,也希望看到的同学能给予补充,无论是补充碰到的问题,还是补充解决方法。类装载的相关问题写过Java代码的同学估计都碰到过ClassNotFoundException/NoClassDefFoundError/NoSuchMethodException(还有一个常见的ClassCastException就不在这里说了)。当碰到ClassNotFoundException/NoClassDefFound时,如果很确定这个class应该是从哪个路径装载的,则可以去相应的路径找下是否有对应的class文件存在,例如web应用通
阅读全文
摘要:本篇文章依旧采用小例子来说明,因为我始终觉的,案例驱动是最好的,要不然只看理论的话,看了也不懂,不过建议大家在看完文章之后,在回过头去看看理论,会有更好的理解。下面开始正文。【案例1】通过一个对象获得完整的包名和类名?123456789101112131415package Reflect; /** * 通过一个对象获得完整的包名和类名 * */class Demo{ //other codes... } class hello{ public static void main(String[] args) { Demo demo=new Demo(); System.out.println(
阅读全文
摘要:面向接口编程一些好处:1.一个功能的调用者只需要关心如何使用此功能,而无须关注功能的实现。如:如我们在main 方法中调用一个client程序,我们只需要Client client = new ClientImpl(), 无论 ClientImpl 类中定义了多么复杂的成员函数和成员变量(包括javadoc),你都看不到,你也无须看到。2.面向接口编程便于团队合作,有了统一的接口(接口是公开的,里面的方法都是public的),无须担心别人的程序无法使用我的实现(他根本就不关心)。假如我们团队正在做一个计算器小程序,想要计算1+2+...+100=?,product manager 写了一个接口
阅读全文
摘要:SQL Server的用户,常常会发现SQL进程使用了很多内存。这些内存大多数都是用来缓存用户要访问的数据,以达到最优的效率。那怎么能够知道哪些数据现在正缓存在内存中呢?其实,数据库管理员跑几句查询,就能得到答案。谁占用了我的Buffer Pool?我在做SQL Server 7.0技术支持的时候有客户问我,“我的SQL Server buffer pool很大,有办法知道是哪些对象吃掉我的buffer Pool内存么?比方说,能否知道是哪个数据库,哪个表,哪个index占用了buffer Pool么?”当时我没有找到这个问题的答案,但是我一直记着这个问题。直到SQL server 2005
阅读全文
摘要:在VMWareWorkstation8.0.1中安装苹果MACOSXLion(狮子)系统VMware中文版http://wenku.baidu.com/view/8def9f47767f5acfa0c7cd06.htmlVMware英文版http://ideapad.zol.com.cn/56/160_557421.html虚拟机Mac系统中VMwaretools安装和vm共享文件夹的设置http://wenku.baidu.com/view/7c14dd9c51e79b8968022662.html
阅读全文
摘要:第一部分:在Excel导入SQL Server中的数据:在“数据”选项卡上的“获取外部数据”组中,单击“自其他来源”,然后单击“来自SQL Server”。在“服务器名称”框中,键入要连接的SQL Server计算机的名称。在“登录凭据”下,执行下列操作之一:要使用当前的Microsoft Windows用户名和密码,请单击“使用Windows身份验证”。要输入数据库用户名和密码,请单击“使用下列用户名和密码”,然后在相应的“用户名”和“密码”框中键入您的用户名和密码。在“选择数据库”下,选择一个数据库。在“连接到指定表”下,选择一个特定的表或视图。或者,也可以清除“连接到指定表”复选框,以便
阅读全文
摘要:问题:使用scott登录Oracle以后,创建视图,提示“权限不够”,怎么解决?回答:这是因为scott这个帐户目前没有创建视图的权限。解决方法为:首先使用system帐户进行登录,〈--注:其中“tiger”为安装Oracle时所指定的密码(可修改):--修改用户密码:alter user myUser --(自定义账户)identified by myPwd2;--(自定义密码)--解锁alter user myuser account unlock;>授权:然后在SQL window执行:grant create any view to scott提示:授权成功。执行:exit退出
阅读全文
摘要:解决oracle数据库“监听程序当前无法识别连接描述符中请求的服务”今晚搞了几个小时的oracle配置,现在终于连上了,同时也发现好多人每次重装系统后都得重装oracle,现将我如何处理这一类问题的方法分享如下,嘿嘿,屡试不爽的,更重要的是不用修改ip,直接用本地连接localhost,不论是否联网都可以这样配置!我的oracle安装路径在F盘的app文件夹下,首先找到F:\app\Administrator\product\11.1.0\db_1\NETWORK\ADMIN下的listener.ora和tnsnames.ora这两个文件,用记事本打开就可以用下面的这些代码替换listener
阅读全文
摘要:图解演示环境版本:本机系统: WIN7 虚拟机:VMware Workstation 8 (英文版) 安装目标:Ubuntu Desktop 12.04 LTS (请点击这里)先下载好iso镜像文件详细过程图解:0. 初始画面,点击“Create a New Virtual Machine”(左上Ubuntu为本人已有开发环境机,请忽略)1. 点击“Custom(自定义)”2. 无需选择,直接Next(上面是选Workstation版本的兼容性的,这里默认为当前版本8.0,之前版本的不同在于Limitations(局限),如内存更少,不支持HD Audio等)3. 选择“I wil...
阅读全文

浙公网安备 33010602011771号