自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

王康的技术博客

Be My Best!!!

  • 博客(23)
  • 资源 (3)
  • 问答 (1)
  • 收藏
  • 关注

转载 MYSQL中如何获取最后一条记录?

<br />在MySQL中,使用auto_increment类型的id字段作为表的主键,并用它作为其他表的外键,形成“主从表结构”,这是数据库设计中常见的用法。但是在具体生成id的时候,我们的操作顺序一般是:先在主表中插入记录,然后获得自动生成的id,以它为基础插入从表的记录。这里面有个困难,就是插入主表记录后,如何获得它对应的id。通常的做法,是通过“select max(id) from tablename”的做法,但是显然这种做法需要考虑并发的情况,需要在事务中对主表加以“X锁“,待获得max(id)

2010-10-31 19:08:00 4840

转载 struts2 自定义拦截器

自定义拦截器作为“框架(framework)”,可扩展性是不可或缺的,因为世上没有放之四海而皆准的东西。虽然,Struts 2为我们提供如此丰富的拦截器实现,但是这并不意味我们失去创建自定义拦截器的能力,恰恰相反,在Struts 2自定义拦截器是相当容易的一件事。<br />  大家在开始着手创建自定义拦截器前,切记以下原则:<br /> 拦截器必须是无状态的,不要使用在API提供的ActionInvocation之外的任何东西。<br />    要

2010-10-29 01:13:00 537

原创 struts2 重复提交拦截器用法 token与token-session

标签:token-sessiontoken拦截器struts2.0it 首先要在jsp的from标签里加入防重复提交标签, 生成如下的内容:(struts.token.name 标识哪个隐藏域存了 token 值) 注意自定义的表单域别重名了。它的作用是防止表单重复提交,每次加载页面 struts.token 的值都不一样,如果两次提交时该值一样,则认为是重复提交。此时要启用 TokenInterceptor(token) 拦截器,最好是也启用 T

2010-10-29 01:07:00 2047 3

转载 FCKeditor的配置与精简

<br />FCKeditor是一个功能强大支持所见即所得功能的文本编辑器,可以为用户提供微软office软件一样的在线文档编辑服务。它不需要安装任何形式的客户端,兼容绝大多数主流浏览器,支持ASP.Net、ASP、ColdFusion 、PHP、Java、Active-FoxPro、Lasso、Perl、ython 等编程环境。<br />官方网站 http://www.fckeditor.net/<br />官方文档 http://wiki.fckeditor.net/<br />下载地址 ht

2010-10-28 23:28:00 573

转载 Struts2中使用Common-FileUpload实现文件上传

在web应用中,文件上传似乎是很常见的,但是采用传统的方法不但复杂而且难以控制,需要写很多代码,像控制文件大小、文件类型的过滤、存放目录等等。这些复杂的问题在Struts2中已经不存在了,struts2默认使用common-fileupload实现文件的上传。在struts.properties中我们可以看到:struts.multipart.parser=Jakarta 。下面我们就以Common-FileUpload来实现文件上传。 首先,把commons-fileupload.jar和common

2010-10-24 10:11:00 900

转载 Struts 上传与下载

<br /> <br />1.    文件上传的原理:表单元素的enctype属性指定的是表单数据的编码方式,该属性有3个值:1)      application/x-www-form-urlencoded:这是默认编码方式,它只处理表单域里的value属性值,采用这种编码方式的表单会将表单域的值处理成URL编码方式。2)      multipart/form-data:这种编码方式的表单会以二进制流的方式来处理表单数据,这种编码方式会把文件域指定文件的内容也封装到请求参数里。3)      text/

2010-10-23 16:37:00 1362

原创 struts2--java.lang.IllegalAccessException: Class ognl.OgnlRuntime can not access a member of...问题解决方案

今天一个struts2 问题困扰了我一天,先把错误信息贴出来,示众一下!!2010-10-19 18:27:22 com.opensymphony.xwork2.util.logging.jdk.JdkLogger warn警告: Error setting expression 'nnew.nTitle' with value '[Ljava.lang.String;@df804e'ognl.NoSuchPropertyException: com.center.vo.News_Table.nTi

2010-10-19 18:49:00 8791 3

转载 在Eclipse中使用JUnit4进行单元测试(高级篇)

一、     高级Fixture上一篇文章中我们介绍了两个Fixture标注,分别是@Before和@After,我们来看看他们是否适合完成如下功能:有一个类是负责对大文件(超过500兆)进行读写,他的每一个方法都是对文件进行操作。换句话说,在调用每一个方法之前,我们都要打开一个大文件并读入文件内容,这绝对是一个非常耗费时间的操作。如果我们使用@Before和@After,那么每次测试都要读取一次文件,效率及其低下。这里我们所希望的是在所有测试一开始读一次文件,所有测试结束之后释放文件,而不是每次测试都读文

2010-10-17 13:48:00 640

转载 在Eclipse中使用JUnit4进行单元测试(中级篇)

<br /><br />我们继续对初级篇中的例子进行分析。初级篇中我们使用Eclipse自动生成了一个测试框架,在这篇文章中,我们来仔细分析一下这个测试框架中的每一个细节,知其然更要知其所以然,才能更加熟练地应用JUnit4。<br />一、     包含必要地Package<br />在测试类中用到了JUnit4框架,自然要把相应地Package包含进来。最主要地一个Package就是org.junit.*。把它包含进来之后,绝大部分功能就有了。还有一句话也非常地重要“import static org.

2010-10-17 13:47:00 440

转载 在Eclipse中使用JUnit4进行单元测试(初级篇)

<br /><br />我们在编写大型程序的时候,需要写成千上万个方法或函数,这些函数的功能可能很强大,但我们在程序中只用到该函数的一小部分功能,并且经过调试可以确定,这一小部分功能是正确的。但是,我们同时应该确保每一个函数都完全正确,因为如果我们今后如果对程序进行扩展,用到了某个函数的其他功能,而这个功能有bug的话,那绝对是一件非常郁闷的事情。所以说,每编写完一个函数之后,都应该对这个函数的方方面面进行测试,这样的测试我们称之为单元测试。传统的编程方式,进行单元测试是一件很麻烦的事情,你要重新写另外一个

2010-10-17 13:46:00 563

转载 Java测试工具JUnit_4

这会很好地工作,但它需要我们手动地将所有测试添加到一个套件中。早期的JUnit采用者告诉我们这样是愚蠢的。只要你编写一个新的测试案例,你就必须记着要将其添加到一个static的suit()方法中,否则其将不会运行。我们添加了一个TestSuit的便捷构造方法,该构造方法将测试案例类作为一个参数。其意图是提取(extract)测试方法,并创建一个包含这些测试方法的套件。测试方法必须遵循的简单的约定是,以前缀“test”开头且不带参数。便捷构造方法就使用该约定,通过使用反射发现测试方法来构造测试对象。使用该构造

2010-10-17 12:47:00 504

转载 java测试工具JUnit_2

按照框架规定:编写的所有测试类,必须继承自junit.framework.TestCase类;里面的测试方法,命名应该以Test开头,必须是public void 而且不能有参数;而且为了测试查错方便,尽量一个TestXXX方法对一个功能单一的方法进行测试;使用assertEquals等junit.framework.TestCase中的断言方法来判断测试结果正确与否。       你可以对比着上面测试类中的实现来体会下规定——很简单!而且你在这个测试类中有加入多少个测试方法,就会运行多少个测试方法。四、向

2010-10-17 12:46:00 484

转载 Java测试工具JUnit_3

在下面的设计快照中,添加进了Adapter和Pluggable Selector。图4 TestCase应用Adapter(与一个匿名内部类一起)或Pluggable Selector  3.5 不必关心一个或多个-TestSuit  为了获得对系统状态的信心,我们需要运行许多测试。到现在为止,JUnit能够运行一个单独的测试案例并在一个TestResult中报告结果。我们接下来的挑战是要对其进行扩展,以使其能够运行许多不同的测试。当测试调用者不必关心其运行的是一个或多个测试案例时,这个问题便能够轻松地解决

2010-10-17 12:46:00 476

转载 JUnit单元测试原则

<br /><br />一、测试原则<br />  Java语言是一个支持面向对象的语言,通常情况下我们可以将程序的一个单元看成是一个独立的类,因此进行单元测试的重点就是对这些类进行测试。<br />  1、不需要测试get和set这样的行为<br />  2、一个方法至少需要测试一次<br />  二、测试步骤<br />  1、判断组件的功能:通过定义应用的整体需求,然后将系统划分成几个对象,我们需要对组件的基本功能十分清楚。因此,J2EE单元测试实际上也属于设计过程的一部分。<br />  2、设计组

2010-10-17 12:44:00 1028

转载 Java测试工具JUnit_1

1.简介  在一篇早些的文章(请参见Test Infected: Programmers Love Writing Tests, Java Report, July 1998, Volume 3, Number 7)中,我们描述了如何使用一个简单的框架来编写可重复的测试。在本文中我们将匆匆一瞥其内中细节,并向你展示该框架本身是如何被构造的。  我们细致地研究JUint框架并思索如何来构造它。我们发现了许多不同层次上的教训。在本文中,我们将尝试着立刻与它们进行沟通,这是一个令人绝望的任务,但至少它是在我们向你

2010-10-17 12:44:00 425

转载 JS学习笔记

<br /><br />1.JavaScript中的对象 <br />分为3种。 <br />(1)JavaScript的内置对象 <br />常用的有Date,Array,String,Math,对象,这些都是经常会用到的,一定要掌握好。 <br />(2)文档对象模型(Document Object Model,DOM) <br />这个对象表示了当前浏览器的多个组件和当前的HTML文档。DOM我认为是JS中最重要的一个对象,通过他可以获得任何一个HTML元素,1.通过document.form1.na

2010-10-16 00:25:00 734

原创 关于mysql中enum数据字段类型的一些想法!!

今天做东西的时候需要一个权限管理,分为三个级别。本来想用数值类型来控制,但是灵感一闪想到了enum类型。但是关于enum类网上说是返回String类型,但是今天测试了一下,用getString("columnname")能取出数据,但是用getInt("columnname")也能取出数据。挺诡异的。做了一番测试的出了一个不成熟的想法: 1. 如果enum中储存的内容是数字,则用getString("cname")或getInt()都可行。2. 但是如果enum中存储的是字符那毫无疑问进应该用getSt

2010-10-12 23:13:00 1627

转载 类命名规范、数据库命名规范和页面文件命名规范

<br /><br />一、类命名规范<br /> 1. Entity层 :<br />          继承关系:所有类继承自BasicEntity, 其中BasicEntity实现 java.io.Serializable接口;<br />          命名规则: 类名称 = Object + 类后缀,其中类后缀为 Bean,如:SalesOrderBean<br />  2. Form层 :<br />          继承关系:所有类继承自BasicForm, 由于本项目基于Struts结

2010-10-12 20:29:00 600

原创 关于mysql中的数值字段!!

M指示最大显示宽度。最大有效显示宽度是255。显示宽度与存储大小或类型包含的值的范围无关。如果为一个数值列指定ZEROFILL,MySQL自动为该列添加UNSIGNED属性。SERIAL是BIGINT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE的一个别名。在整数列定义中,SERIAL DEFAULT VALUE是NOT NULL AUTO_INCREMENT UNIQUE的一个别名。警告:应当清楚,当使用在整数值(其中一个是UNSIGNED类型)之间使用减号时,结

2010-10-12 19:52:00 986

原创 在mysql中int[x]中x的作用!!

<br /><br />1 INT(M), M是管什么用的?<br />     作为对 ANSI/ISO SQL92 标准的一个扩展,Mysql 也支持上面的表格所列出的整型类型 TINYINT、MEDIUMINT 和 BIGINT。另外一个扩展是 MySQL 支持随意指定一个整型数值的显示格式,这通过在类型的基本关键词后跟一个括号来实现(例如 INT(4))。这个可选的宽度规格说明是用于在数值显示时,对某些值的宽度短于该列宽度的值进行左填补显示的,而不是为了限制在该列中存储值的宽度,也 不是为了限制那些

2010-10-12 19:45:00 982

转载 数据库设计技巧【转】

<br /><br />说到数据库,我认为不能不先谈数据结构。1996年,在我初入大学学习计算机编程时,当时的老师就告诉我们说:计算机程序=数据结构+算法。尽管现在的程序开发已由面向过程为主逐步过渡到面向对象为主,但我还是深深赞同8年前老师的告诉我们的公式:计算机程序=数据结构+算法。面向对象的程序开发,要做的第一件事就是,先分析整个程序中需处理的数据,从中提取出抽象模板,以这个抽象模板设计类,再在其中逐步添加处理其数据的函数(即算法),最后,再给类中的数据成员和函数划分访问权限,从而实现封装。<br />

2010-10-12 09:46:00 382

转载 数据库设计经验【转】

<br />一个成功的管理系统,是由:[50% 的业务 + 50% 的软件] 所组成,而 50% 的成功软件又有 [25% 的数据库 + 25% 的程序] 所组成, 数据库设计的好坏是一个关键。如果把企业的数据比做生命所必需的血液,那么数据库的设计就是应用中最重要的一部分。有关数据库设 计的材料汗牛充栋,大学学位课程里也有专门的讲述。不过,就如我们反复强调的那样,再好的老师也比不过经验的教诲。 所以我归纳历年来所走的弯路及体会,并把这些技巧编写

2010-10-12 09:44:00 388

原创 基于Mysql的分页显示

<br /> <br />代码写在了下面,可以将Java代码进行封装,然后直接页面调用就行了,这样直接写在jsp页面中显得比较混乱,不过写下来防止忘记,方便查阅!!<br /> <br /><%@ page language="java" import="java.util.*" pageEncoding="GB18030"%><br /><%@ page import="java.sql.*;"%><br /><%<br />    String path = request.getContextPath

2010-10-05 12:23:00 508

Thinking in java中文版4

thing in java中文第四版,希望刚接触java的人能够好好钻研一下。

2011-02-15

java做的一个简单的抽奖机

java做的抽奖机,用线程控制抽奖的滚动,不过还应不断完善,大家一块学习!!!

2010-10-13

一个java实现的计算器

一个java实现的计算器,挺简单的,适合java初学者!!

2010-10-13

求公司推荐

2012-03-07

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除