JAVA
文章平均质量分 72
濤子
认真负责、工作严谨
展开
-
Java防止非法和重复表单提交的分析
第一,对于不支持POST的,可以简单的使用如下代码if ("POST".equals(request.getMethod())) { // 正常进行}else{ // 异常请求 out.print("异常访问"); return;}如果是servlet, 可以将doGet方法直接返回,不进行处理就行了public void doGet(Htt转载 2014-12-01 15:29:37 · 1720 阅读 · 0 评论 -
Ehcache和MemCached区别及应用
ehcache是纯java编写的,通信是通过RMI方式,适用于基于java技术的项目。memcached服务器端是c编写的,客户端有多个语言的实现,如c,php(淘宝,sina等各大门户网站),python(豆瓣网), java(Xmemcached,spymemcached)。memcached服务器端是使用文本或者二进制通信的。项目MemcacheE转载 2013-08-29 15:54:24 · 11133 阅读 · 0 评论 -
MemberCache学习
缘起: 在数据驱动的web开发中,经常要重复从数据库中取出相同的数据,这种重复极大的增加了数据库负载。缓存是解决这个问题的好办法。 Memcached是什么? Memcached是由Danga Interactive开发的,高性能的,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,提升访问速度。 Memcache 是什么 Memcache 是 danga.com转载 2013-08-29 09:50:50 · 8301 阅读 · 0 评论 -
Spring Mvc与struts2区别
虽然说没有系统的学习过Spring MVC框架, 但是工作这么长时间, 基本上在WEB层使用的都是Spring MVC, 自己觉得Struts2也是一个不错的WEB层框架, 这两种框架至今自己还未有比较, 今天闲着没事干, 从网上找了一些资料, 再加上平时使用Spring MVC的感触来总结一下。Spring MVC PK Struts2我们用struts2时采用的传统的配置文件的方式转载 2013-08-28 16:22:11 · 2342 阅读 · 0 评论 -
hibernate与ibatis比较
hibernate和Ibatis比较hibernate 是当前最流行的o/r mapping框架,它出身于sf.net,现在已经成为jboss的一部分了。ibatis 是另外一种优秀的o/r mapping框架,目前属于apache的一个子项目了。 相对hibernate“o/r”而言,ibatis是一种“sql mapping”的orm实现。 hibernate对数据库结构提供了转载 2013-08-16 10:55:16 · 2520 阅读 · 0 评论 -
JVM原理和优化
转自:http://blog.csdn.net/cnhzgb/article/details/7179419= GC 基础 =====================JAVA堆的描述如下:内存由 Perm 和 Heap 组成. 其中Heap = {Old + NEW = { Eden , from, to } }JVM内存模型中分两大块,一块是 NE转载 2013-08-27 18:04:15 · 186539 阅读 · 9 评论 -
maven仓库
经常使用的Maven仓库: http://search.maven.org/#search%7Cga%7C1%7Chttp://repo1.maven.org/maven2/http://repository.jboss.com/maven2/http://repository.sonatype.org/content/groups/public/http://mirror原创 2013-08-21 16:26:37 · 975 阅读 · 0 评论 -
Maven 手动添加 JAR 包到本地仓库
好久没用Maven做东西了,呵呵,今天看到一篇基本常用的帖子转载:Maven 确确实实是个好东西,用来管理项目显得很方便,但是如果是通过 Maven 来远程下载 JAR 包的话,我宿舍的带宽是4兆的,4个人共用,有时候用 Maven 来远程下载 JAR 包会显得很慢,一般我发现下载速度不明显的时候,我就 Ctrl + C 来终止它的下载。然后改用手动来下载,因为用迅雷一类的工具转载 2013-07-26 10:00:06 · 931 阅读 · 0 评论 -
JDBC连接Oracle RAC
1)JDBC连接的配置方式,既然数据库本身已经支持了RAC,那么只要在JDBC连接字符串中将RAC的配置加上去即可, 根据资料和目前的业务需求,我们的针对HOST=10.87.25.37这台主机的数据库实例的JDBC连接字符串应该这样配置 URL="jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=转载 2013-03-01 09:40:05 · 16383 阅读 · 0 评论 -
数字证书中keytool命令使用说明
数字证书中keytool命令使用说明这个命令一般在JDK\jre\lib\security\目录下操作 keytool常用命令 -alias 产生别名 -keystore 指定密钥库的名称(就像数据库一样的证书库,可以有很多个证书,cacerts这个文件是jre自带的, 你也可以使用其它文件名字,如果没有这个文件名字,它会创建转载 2013-01-24 15:01:29 · 2831 阅读 · 0 评论 -
Cosmos开发指南(三)
本篇主要介绍如何利用Cosmos框架进行分页开发,利用上一篇文章的结果,下面直接将上面查询和列出所有学生的界面,修改为一个带有分页的界面。 首先,修改上篇博文的存储过程为带有分页的存储过程,下面是修改之后的存储过程: SQLDELIMITER $$USE `cosmos`$$DROP PROCEDURE IF EXISTS `searchStudents`$$转载 2012-07-20 18:20:05 · 1597 阅读 · 0 评论 -
Guice学习资料
Guice是Google开发的一个轻量级,基于Java5(主要运用泛型与注释特性)的依赖注入框架(IOC)。Guice非常小而且快。Guice是类型安全的,它能够对构造函数,属性,方法(包含任意个参数的任意方法,而不仅仅是setter方法)进行注入。Guice还具有一些可选的特性比如:自定义scopes,传递依赖,静态属性注入,与Spring集成和AOP联盟方法注入等。一部分人转载 2013-09-27 10:52:16 · 927 阅读 · 0 评论 -
UT覆盖率
UT覆盖率目录 [隐藏] 1 单元测试覆盖率与CI2 什么是代码覆盖率?2.1 单测技术框架简介2.2 JUnit:2.3 TestNG:2.4 maven2.5 sonar2.6 eclipse2.7 Jenkins2.8 Cobertura:2.9 构建UT测试持续化集成环境及覆盖率监控[编辑]原创 2013-11-15 10:41:28 · 15805 阅读 · 0 评论 -
Java NIO系列教程(八) SocketChannel
原文链接 作者:Jakob Jenkov 译者:郑玉婷 校对:丁一Java NIO中的SocketChannel是一个连接到TCP网络套接字的通道。可以通过以下2种方式创建SocketChannel:打开一个SocketChannel并连接到互联网上的某台服务器。一个新连接到达ServerSocketChannel时,会创建一个SocketChannel。转载 2013-12-20 10:46:39 · 867 阅读 · 0 评论 -
Java NIO系列教程(七) FileChannel
原文链接 作者:Jakob Jenkov 译者:周泰 校对:丁一Java NIO中的FileChannel是一个连接到文件的通道。可以通过文件通道读写文件。FileChannel无法设置为非阻塞模式,它总是运行在阻塞模式下。打开FileChannel在使用FileChannel之前,必须先打开它。但是,我们无法直接打开一个FileC转载 2013-12-20 10:46:03 · 899 阅读 · 0 评论 -
Java NIO系列教程(六) Selector
原文链接 作者:Jakob Jenkov 译者:浪迹v 校对:丁一Selector(选择器)是Java NIO中能够检测一到多个NIO通道,并能够知晓通道是否为诸如读写事件做好准备的组件。这样,一个单独的线程可以管理多个channel,从而管理多个网络连接。下面是本文所涉及到的主题列表:为什么使用Selector?Selector的创建向Selector注册通道Select转载 2013-12-20 10:45:20 · 1304 阅读 · 0 评论 -
Java NIO系列教程(三) Buffer
Java NIO中的Buffer用于和NIO通道进行交互。如你所知,数据是从通道读入缓冲区,从缓冲区写入到通道中的。缓冲区本质上是一块可以写入数据,然后可以从中读取数据的内存。这块内存被包装成NIO Buffer对象,并提供了一组方法,用来方便的访问该块内存。下面是NIO Buffer相关的话题列表:Buffer的基本用法Buffer的capacity,position和l转载 2013-12-20 10:42:24 · 897 阅读 · 0 评论 -
Java NIO系列教程(一) Java NIO 概述
Java NIO 由以下几个核心部分组成:ChannelsBuffersSelectors虽然Java NIO 中除此之外还有很多类和组件,但在我看来,Channel,Buffer 和 Selector 构成了核心的API。其它组件,如Pipe和FileLock,只不过是与三个核心组件共同使用的工具类。因此,在概述中我将集中在这三个组件上。其它组件会在单独的章节中讲到。转载 2013-12-20 10:40:22 · 1247 阅读 · 0 评论 -
Java NIO系列教程(五) 通道之间的数据传输
原文地址:http://tutorials.jenkov.com/java-nio/scatter-gather.html作者:Jakob Jenkov 译者:郭蕾 校对:周泰在Java NIO中,如果两个通道中有一个是FileChannel,那你可以直接将数据从一个channel(译者注:channel中文常译作通道)传输到另外一个channel。transf转载 2013-12-20 10:44:22 · 1286 阅读 · 0 评论 -
Java NIO系列教程(四) Scatter/Gather
Java NIO开始支持scatter/gather,scatter/gather用于描述从Channel(译者注:Channel在中文经常翻译为通道)中读取或者写入到Channel的操作。分散(scatter)从Channel中读取是指在读操作时将读取的数据写入多个buffer中。因此,Channel将从Channel中读取的数据“分散(scatter)”到多个Buffer中。聚集(ga转载 2013-12-20 10:43:38 · 806 阅读 · 0 评论 -
Java NIO系列教程(二) Channel
Java NIO的通道类似流,但又有些不同:既可以从通道中读取数据,又可以写数据到通道。但流的读写通常是单向的。通道可以异步地读写。通道中的数据总是要先读到一个Buffer,或者总是要从一个Buffer中写入。正如上面所说,从通道读取数据到缓冲区,从缓冲区写入数据到通道。如下图所示:Channel的实现这些是Java NIO中最重要的通道的实现:转载 2013-12-20 10:41:21 · 874 阅读 · 0 评论 -
JDK1.5、1。6、1.7三个版本的新特性
JDK1.5/1.6/1.7之新特性总结 http://caowei3047.javaeye.com/blog/725079 开发过程中接触到了从jdk1.5---jdk1.7的使用,在不同的阶段,都使用过了jdk的一些新特性,操作起来更加方面啦!特此总结了下,与喜欢it 的朋友共勉!呵呵以下是测试代码:JDK1.5新特性:1.自动装箱与拆箱:Integer iOb转载 2013-12-19 14:35:07 · 2598 阅读 · 0 评论 -
重学java(一)
这是每一个Java程序员都知道的程序。 我想看看我们能从这个简单的程序。 一个简单的开始可能导致学习更复杂的东西变得更加容易。 这将是伟大的如果这篇文章读起来很有趣,不仅为Java程序员入门级。 请留下你的评论,如果hello world意味着更多的给你。HelloWorld.java public class HelloWorld { /** * @p转载 2013-12-17 15:58:19 · 1191 阅读 · 0 评论 -
重学java(二)
Code reuse is one of the most important factors in software development. It is a very good idea to put frequently-used functions together and build a library for yourself. Whenever some method is used转载 2013-12-17 16:12:57 · 1000 阅读 · 0 评论 -
HashSet中是如何判断元素是否重复的
HashSet不能添加重复的元素,当调用add(Object)方法时候,首先会调用Object的hashCode方法判hashCode是否已经存在,如不存在则直接插入元素;如果已存在则调用Object对象的equals方法判断是否返回true,如果为true则说明元素已经存在,如为false则插入元素。以下转载自:http://www.hijava.org/2010/02/how-to转载 2013-12-16 16:13:34 · 24444 阅读 · 2 评论 -
Cosmos开发指南(一)
从这篇博文开始,我将针对基于Cosmos框架的开发进行详细的介绍,那么第一个例子就将着重来说明如何在Cosmos框架的基础上进行项目的开发和部署。在进行例子的讲解之前,自然是要部署相应的开发环境、测试环境,为了尽快地了解Cosmos框架的全貌,我们将基于Cosmos自带的Example程序进行开发,这个Example程序已经将开发环境和测试环境设置完全了,同时,由于这个Example程序是基于转载 2012-07-20 18:06:42 · 3106 阅读 · 0 评论 -
Cosmos开发指南(二)
上一篇博文主要介绍了Cosmos框架使用HSQLDB作为后台数据库,并且仅执行一条简单的SQL时的开发流程,本篇博文将改换为MySQL数据库,介绍Cosmos如何配置数据源,以及在Cosmos框架下如何进行复杂的业务逻辑的开发。 这一次,我们将不再使用Cosmos-Example程序,改为使用Cosmos-Template程序,Cosmos-Template程序是Cosmos开发团队给转载 2012-07-20 18:14:24 · 3791 阅读 · 0 评论 -
Hibernate数据缓存策略
Hibernate数据缓存策略(一)hibernate数据缓存策略 缓存是数据库数据在内存中的临时容器,它包含了库表数据在内存中的拷贝,位于数据库与数据访问层之间。对于查询操作相当频繁的系统(论坛,新闻发布等),良好的缓存机制显得尤为重要。 ORM在进行数据读取时,首先在缓存中查询,避免了数据库调用的性能开销。 ORM的数据缓存应包含下面几个层次:转载 2011-11-30 16:02:09 · 3234 阅读 · 0 评论 -
struts2为每个线程提供一个action实例
1.struts2为每个线程提供一个action实例,多线程访问时不会出现问题。当使用spring管理struts2的action实例对象时,scope必须配置为prototype或者session,若配置为singleton则多线程访问时会出现问题,例如actionMessage,fieldError等信息会累加,多用户访问时有的用户访问到的是另一个用户的数据。2.scope=“prot转载 2011-11-30 10:13:41 · 3298 阅读 · 0 评论 -
js字符串函数(转)
JS自带函数concat将两个或多个字符的文本组合起来,返回一个新的字符串。var a = "hello";var b = ",world";var c = a.concat(b);alert(c);//c = "hello,world"indexOf返回字符串中一个子串第一处出现的索引(从左到右搜索)。如果没有匹配项,返回 -1 。var index1 =转载 2011-11-29 09:09:48 · 517 阅读 · 0 评论 -
如何控制HTML中DIV的加载顺序
转载 http://bbl456.blog.sohu.com/72162079.html目前网站之间相互调用的情况越来越多,比如 需要调用某个第三方提供的一些接口(天气预报),或者是第三方提供的广告...... 但是出于各种原因(网络故障、服务器故障、软件故障......)常常会发生第三方的相应页面不能访问的情况,而直接导致自己网站不能正常访问,或者访问速度比较慢。比如:某个网站为转载 2011-11-24 13:45:08 · 5223 阅读 · 0 评论 -
Java JSP获取访问连接来源及服务器获取访问者信息
request.getHeader("Referer"); request中很多方法和属性,这个方法能够获取请求连接的来源页面URL。request.getHeader("user-agent");这个方法能够获取到客户端的IP、系统、浏览器名称等等主要信息。附上两个获取客户端IP及系统类型的方法:private static String getRequestBrowserInfo(原创 2011-11-02 17:07:40 · 5434 阅读 · 0 评论 -
Java 读取XML字符
String xml=“" + "aaaaa北京市 铁通ADSL”; private static String getLocation(String xml){ String location = null; try { DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance();原创 2011-11-17 13:50:59 · 581 阅读 · 0 评论 -
网易邮箱中非常实用的工具,手机、IP等归属地
网易邮箱中有一项非常实用的工具,就是百宝箱,里面有很多实用的查询小工具,如IP查询、手机归属查询、身份证查询等等。为了方便大家查询,今天我把网易邮箱小工具集的页面给down了下来,大家可以下载下来,不用登录网易邮箱,直接查询即可(当然您的电脑得连网,不然是查询不到的,这里只是将查询页面给down了下来,查询数据库还是用的网易的)。 网易邮箱百宝箱小工具集的查询页面如下图所示:转载 2011-11-17 11:34:53 · 5324 阅读 · 0 评论 -
实用Ip、手机、身份证归属地查询API
经度:116.388,纬度:39.929北京,11-17,小雨,8℃~5℃,微风,小于3级实用信息查询接口官方博客:Baidu 空间 QQ 群:10299033(已满),122019928(api 发布以及技术交流)实用号码归属地查询(IP 地址,手机号码):原创 2011-11-17 11:20:49 · 1233 阅读 · 0 评论 -
WebBrowser.ExecWB的完整说明
WebBrowser组件的execWB方法1. 2. 调用方法:WebBrowser.ExecWB nCmdID, nCmdExecOpt, [pvaIn], [pvaOut]3. 参数说明:(a).nCmdID OLECMDID_OPEN = 1, OLECMDID_NEW = 2, OLECMDID_SAVE = 3, OLECMDI转载 2011-10-27 14:07:51 · 555 阅读 · 0 评论 -
jsp中如何获取客户端的浏览器和操作系统信息
String Agent = request.getHeader("User-Agent");StringTokenizer st = new StringTokenizer(Agent,";");st.nextToken();//得到用户的浏览器名String转载 2011-10-08 11:36:25 · 7282 阅读 · 1 评论 -
java 实现JSP页面上一页及下一页封装
import com.coupon.i18n.Messages;public class PageUtils { public PageUtils(){ } private int firstPage = 1; private int lastPa原创 2011-10-08 12:52:34 · 10665 阅读 · 0 评论 -
Java 实现MD5编码
package com.coupon.util;import java.io.UnsupportedEncodingException;import java.security.MessageDigest;import java.security.NoSuchAlgo原创 2011-10-08 12:47:45 · 972 阅读 · 0 评论 -
java发送Email
package com.coupon.util;import java.sql.Timestamp;import java.util.Date;import java.util.Properties;import java.util.Random;import原创 2011-10-08 12:43:45 · 704 阅读 · 0 评论