- 博客(58)
- 资源 (2)
- 收藏
- 关注
转载 ant发布项目
原文地址:http://blog.csdn.net/kleguan/article/details/38025429开发人员在本地提交更新到SVN服务器后,往往需要测试人员重新测试。为了将更新内容即时反映到测试服务器,可以利用post-commit脚本将SVN更新同步到测试服务器中。(1)利用SVN的工作副本(WORKINGCOPY)创建TOMCATWEB项目[
2015-01-14 10:26:01 656
转载 Java 设计模式
设计模式;一个程序员对设计模式的理解:“不懂”为什么要把很简单的东西搞得那么复杂。后来随着软件开发经验的增加才开始明白我所看到的“复杂”恰恰就是设计模式的精髓所在,我所理解的“简单”就是一把钥匙开一把锁的模式,目的仅仅是着眼于解决现在的问题,而设计模式的“复杂”就在于它是要构造一个“万能钥匙”,目的是提出一种对所有锁的开锁方案。在真正理解设计模式之前我一直在编写“简单”的代码.这个“简
2014-10-27 16:57:49 614
转载 字符串相似度比较
public class Levenshtein { private int compare(String str, String target) { int d[][]; // 矩阵 int n = str.length(); int m = target.length(); int i; // 遍历str的 int j; // 遍历target的 char ch1
2014-10-24 10:54:02 781
转载 Apache Commons FileUpload实现多文件上传
java web开发中,文件的上传是最常用的功能之一,快速实现文件上传功能对程序员来说是一项必备技能.如果你现在还是在自己埋头写程序来实现上传功能很难满足现代软件开发中所要求的快速性.下面通过一个实例介绍第三方组件(Apache Commons FileUpload)实现文件的上传.首先来看前端上传jsp页面:[html] view plaincopy%@ page
2014-10-21 17:50:20 645
转载 InetAddress和InetSocketAddress
一简介InetAddress是Java对IP地址的封装,代表互联网协议(IP)地址;InetAddress对象的获取只能通过静态方法,比如根据主机名获取主机的ip地址封装对象:[java] view plaincopyInetAddress add=InetAddress.getByName("BOPZKQZ9SSY5ECY");
2014-10-21 10:51:10 1410
转载 重构--改善既有代码的设计
坏味道特征情况及处理方式目标重复代码1.重复的表达式2.不同算法做相同的事3.类似代码同一个类的两个函数有相同表达式重复代码提取为方法相同表达式只在一个类的一个方法出现,供其他方法调用兄弟类含有相同表达式重复代码提取为方法提升方法到父类
2014-10-14 18:12:33 758
原创 java导出Excel
class JavaBean{ private String name; private String id; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getId() { r
2014-10-14 15:00:23 558
转载 session机制常见问题
如何理解session机制,就让我们先从网络服务开始说起。目前网络服务主要分为两大类1)面向连接的服务2)面向无连接的服务。 对于面向连接的服务,在计算机开始通信之前首先必须建立网络连接,待数据通信结束才撤销连接,因此只有服务端和一个客户端进行通信。这样不需要多次验证客户端信息,因为在服务器端第一次就进行了验证并记住验证。 对无连接的服务,在通信之前并没有建立连
2014-10-09 16:28:40 660
转载 FastJson的各种应用
导入FastJson包.即可调用如下方法public static final Object parse(String text); // 把JSON文本parse为JSONObject或者JSONArray public static final JSONObject parseObject(String text); // 把JSON文本parse成JSONObject
2014-10-08 16:16:48 617
原创 MyEclipse开发中常用快捷键
1. alt + / :提示内容2.ctrl + o 显示类中所有的方法和属性,方便快速定位3.ctrl + m 窗口最大化切换4.ctrl + 1 快速提示修复5.ctrl + alt + h 显示方法的调用6.ctrl + shift + f 格式化代码块7.ctrl + l 快速定位到当前编
2013-10-23 15:04:29 625
原创 String.format方法使用
1.format:格式化的意思,就是对输入的数据进行格式化,输出一个字符串。String.format(String format,Object...args);2.对整数进行格式化:format的格式为:%【index$】【标识】【最小宽度】转换方式。可以看到format有四部分组成:%【index$】 【标识】 【最小宽度】 转换方式。①最小宽度是指最终格式化出的字符
2013-09-18 18:25:43 814
原创 js中try/catch/throw的用法
var x=prompt("Enter a number between 0 and 10:","")try{ if(x>10) throw "Err1"else if(x<0)throw "Err2"} catch(er){if(er=="Err1") alert("Error! The value is too high")if(er == "E
2013-09-13 13:41:37 1114
原创 IP地址,域名
每个计算机必须有个IP地址才能连入网络。IP地址有一个唯一的4个数字的地址,并且数字在0~255之间,有点号隔开。TCP/IP使用32个比特来编址,即4个字节,每个字节可以有256个不同的值,所以IP地址是介于0~255之间的4个数字。 12个阿拉伯数字(IP地址(不一定12位,最多12位))很难记,如果使用一个名称就好记多了,所以使用TCP/IP地址的名字被称为域名,当你键入像“ht
2013-09-12 14:17:30 860
原创 TCP/IP
TCP/IP是用于Internet的网络通信协议(计算机通信协议是指计算机彼此必须遵守以便通信的规则的描述)。①TCP适用固定的连接 TCP用于应用程序之间的通信。 当应用程序希望通过TCP与另一个应用程序通信时,它会发送一个通信请求,这个请求必须被送到一个确切的地址,在双方“握手”之后,TCP将在两个应用程序之间建 立一个全双工的通信。②IP是无连接的
2013-09-12 14:01:06 630
转载 TODO
MyEclipse中的一些特殊的注释技术包括:1. // TODO —— 表示尚未完成的待办事项。2. // XXX —— 表示被注释的代码虽然实现了功能,但是实现方案有待商榷,希望将来能改进。3. // FIXME —— 表示被注释的代码需要被修正。4.自定义标签:进入Windows->Perferences->Java->Compile->Task Tags,
2013-09-09 11:03:34 585
原创 提高SQL执行效率的16种方法
1.尽量不要在where中包含子查询;关于时间的查询,尽量不要写成:where to_char(dif_date,’yyyy-mm-dd’)=to_char(’2007-07-01′,’yyyy-mm-dd’);2.在过滤条件中,可以过滤掉最大数量记录的条件必须放在where子句的末尾;FROM 子句中写在最后的表(基础表,driving table)将被最先处理,在FROM子句中包含多个表的
2013-08-27 10:20:47 925
原创 Struts2的优点
①在软件设计上Struts2的应用可以不依赖于ServletAPI和StrutsAPI,Struts2的这种设计属于无侵入式设计;②拦截器,实现了如参数拦截等功能;③类型转换器,可以把特殊的请求参数类型转换成需要的类型;④多种表现层技术,如jsp、freemarker;⑤Struts2的输入校验可以对指定的某个方法进行校验;⑥提供了全局范围、包范围、Action范围的国际化资源
2013-08-26 12:20:26 680
原创 Struts2是如何启动的?
Strust2框架是通过Filter启动的,即StrutsPrepareAndExecuteFilter,此过滤器为Struts2的核心过滤器;StrutsPrepareAndExecuteFilter的init()方法将会读取类路径下默认的配置文件Struts.xml完成初始化操作,Struts2读取到struts.xml后,将内容封装成javabean对象存放到内存中,以后用户的每次请求处
2013-08-26 12:05:26 1490
原创 struts2如何访问HttpServletRequest、HttpSession和ServletContext三个域对象?
①HttpServletRequest request = ServletActionContext.getRequest();②HttpSession session = request.getSession();③ServletContext servletContext = ServletActionContext.getServletContext();
2013-08-26 11:50:36 1906
原创 Struts.xml里的默认属性
①如果没有为Action指定class,默认为ActionSupport;②默认方法:execute();注:ActionSupport中的execute()方法里就一条语句“return “success””;③默认result; success④如果没有指定result的类型,默认为 dispatcher;Action中有一个默认的拦截器引用,即;注意:①一旦
2013-08-26 11:44:24 694
原创 值栈ValueStack的原理和生命周期
①ValueStack贯穿整个Action的生命周期,保存在request域中,所以ValueStack的声明周期和request的生命周期是一样的。当Struts2接受一个请求时,会迅速创建ActionContext、Action、ValueStack,然后把Action存放进ValueStack中,所以Action的实例变量可以被OGNL表达式访问。请求来的时候,Action、ValueS
2013-08-26 11:35:53 6547
原创 如何防止用户重复提交表单
1.用户重复提交表单可能产生的后果?用户重复提交表单,在某些场合会产生非常严重的后果,比如说,在使用信用卡进行在线支付的时候,如果服务器的效应速度太慢,用户用可能重复点击提交按钮,那么就可能造成用户的信用卡被多次扣钱,所以,重复提交表单会对你的系统逻辑带来影响,必须采取措施防止这种情况的产生。2.用户重复提交表单的原因?①重复点击了提交按钮; ②提交表单后点击了页面刷新按钮。
2013-08-26 11:09:27 795
原创 方法的参数传递方式
1.java的方法是不能独立存在的,调用的时候必须使用类或对象作为主调者。2.java的参数传递方式只有一种:值传递。值传递:将实际参数值的副本传入方法内,但实际的参数不受影响。3.例如:①基本数据类型public class Test{public static void swap(int a,int b){int temp=a;a = b;b = temp;
2013-08-26 10:47:01 950
原创 Spring的工作机制?为什么使用?
1.Spring的工作机制①SpringMVC把所有的请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责对请求进行真正的处理工作。②DispatcherServlet查询一个或多个HandlerMapping,找到处理请求的Controller。③DispatcherServlet把处理请求提交到相应的Controller。④Controller进行业务
2013-08-24 18:18:17 1178
原创 Spring有几种事务管理,Spring事务管理接口是什么
1,Spring有两种事务管理方式:①编程式 ②声明式。编程式的比较灵活,但是代码量大,存在重复的代码比较多;而声明式事务管理比编程式更灵活方便。2,Spring的事务管理接口主要有三个:TransactionDefinition、Platform TransactionManager、Transaction Status。①在Spring中,事务是通过TransactionDefini
2013-08-24 17:43:55 4669
原创 Servlet的生命周期
Servlet被服务器实例化后,容器运行其init()方法,请求到达时,运行其service()方法,service()方法自动派遣与请求要对应的doGet或doPost方法,当服务器决定将实例销毁的时候,容器调用Servlet的destroy()方法。
2013-08-24 11:32:32 583
原创 jsp中有哪些动作?
jsp中总共有六种动作,为别是:①jsp:include,在页面被请求的时候,加载进另一个页面;②jsp:useBean,寻找或者实例化一个javaBean;③jsp:setProperty,设置javaBean的属性;④jsp:getProperty,输出某个javaBean的属性;⑤jsp:forward,把请求转到一个新的页面;⑥jsp:plugin,根据浏览器的类型
2013-08-24 11:26:31 765
原创 数据库三范式
①第一范式在任何一个关系数据库中,第一范式是对关系模式的基本要求,不满足第一范式的数据库就不是个关系数据库。第一范式是指:在表中每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者重复的属性。简而言之,1NF就是无重复的列。②第二范式在1NF的基础上,2NF要求每个实体或行都可以被唯一的区分,为实现区分通常需要为表加上一个列,叫做主键或主关键字。
2013-08-24 11:17:35 654
原创 数据库优化方面的经验
1.PreparedStatement比Statement的效率高。(预编译、防止Sql注入)2.有外键约束会影响插入和删除的效率,如果能保证数据的完整性,则应尽量少的使用外键约束。3.sql语句全部大写,特别是表名和列名,特别是Sql功能的缓存功能,更加需要统一大小写。4.索引对查询效率的提高。(索引、视图、存储过程)。
2013-08-24 11:01:14 864
原创 不同数据库的分页语句
1.MySqlString sql = "select * from students order by id limit "+pageSize*(pageNumber - 1)+","+pageSize;2.Sql ServerString sql = "select top"+pageSize+"* from students where id not in"
2013-08-24 10:40:24 651
原创 Class.forName()的作用,好处?
1.按参数中指定的字符串形式的类名去搜索加载相应的类,如果该字节码已经背加载过则返回该类字节码的实例对象,否则,按类的委托机制去搜索加载相应的类,如果所有的类加载器都无法加载该类,则抛出ClassNotFoundException异常。加载完这个Class字节码之后就可以调用newInstance()方法去创建该类的实例对象。2.为什么用?有时候,具体的类名在设计开发阶段无法确定,只有
2013-08-22 11:44:10 823
原创 数据库连接池的工作机制
J2EE服务器启动时会建立一定数量的池连接,并维持不少于此数目的池连接,客户端程序需要进行连接时,池驱动程序会返回一个未使用的池连接并将其标记为忙,如果当前没有空闲连接,池驱动程序就会建立一定数量的池连接,新建连接的数量由配置文件的参数决定,当使用的池连接调用完成后,池驱动程序就将此链接标记为闲,其他调用就可以使用这个连接了。实现方式:返回的connection是原始的connection的代
2013-08-22 11:34:04 867
原创 解析xml文档的方式
1.xml文档定义有两种形式:dtd、scheme,它们的本质区别是scheme本身是xml的,可以被xml解析器解析(这也是从dtd发展scheme的根本原因),2.解析xml文档的方式有DOM和Sax。①DOM在处理大型文件时性能下降的非常厉害,这是由于DOM本身的树结构造成的,这种结构占用的内存较多,并且DOM在解析文件之前必须把整个文档装入内存中,适合对xml文件的随机访问。
2013-08-22 11:21:22 655
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人