自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 jxl以下载方式导出excel 不在服务器生成文件

以下代码中使用outputStream 对生成的报表进行接收,通过下载方式进行响应OutputStream os = response.getOutputStream();WritableWorkbook workbook = Workbook.createWorkbook(os);将生成的excel文件在workbook关闭后直接写入到输出流中。以下代码包含了jxl技术中的以...

2011-11-16 09:50:20 264

原创 自定义标签 四 开发带属性的标签

要想让一个自定义标签具有属性,通常需要完成两个任务:在标签处理器中编写每个属性对应的setter方法在TLD文件中描术标签的属性为自定义标签定义属性时,每个属性都必须按照JavaBean的属性命名方式,在标签处理器中定义属性名对应的setter方法,用来接收JSP页面调用自定义标签时传递进来的属性值。 例如属性url,在标签处理器类中就要定义相应的setUrl(String url...

2011-01-26 21:35:54 167

原创 自定义标签 三 simpleTag

1.由于传统标签使用三个标签接口来完成不同的功能,显得过于繁琐,不利于标签技术的推广, SUN公司为降低标签技术的学习难度,在JSP 2.0中定义了一个更为简单、便于编写和调用的SimpleTag接口来实现标签的功能。实现SimpleTag接口的标签通常称为简单标签。2.简单标签共定义了5个方法:setJspContext方法用于把JSP页面的pageConte...

2011-01-26 21:19:08 212

原创 自定义标签 二 tld模板

在web-inf目录中新建一个tld文件,在tld文件中对标签进行描述(为标签处理器类配一个标签名 JSTL 1.1 core library JSTL core 1.1 c http://java.sun.com/jsp/jstl/core viewIP cn.guo.web.tag.ViewIPTag ...

2011-01-26 20:59:02 226

自定义标签 一 对传统标签接口的使用

1.用自定义标签如何控制jsp页面某一部分内容是否执行:编写一个java类,实现tag接口,通常是继承tag的实现类,TagSupport,控制doStartTag方法的返回值,如果返回EVLAL_BODY_INCLUDE,则标签体会执行,如果返回SKIP_BODY,则标签体不会执行public class TagDemo1 extends TagSupport {...

2011-01-26 20:49:51 101

原创 http请求头和响应头的含义

http请求头:Accept: text/html,image/* 浏览器通过这个头,告诉服务器它所支持的数据类型Accept-Charset: 浏览器通过这个头,告诉服务器它采用的字符集Accept-Encoding:浏览器通过这个头,告诉服务器,它所支持的压缩格式Accept-Language:浏览器通过这个头,告诉服务器,它所采用的语言Host:浏览器通过这个头,告...

2011-01-24 22:15:13 99

原创 将document写入xml文档

1.文档中全为英文,不设置编码,直接写入的形式. XMLWriter writer = new XMLWriter(new FileWriter("output.xml")); writer.write(document); writer.close();2.文档中含有中文,设置编码格式写入的形式.OutputFormat format = OutputForma...

2011-01-24 21:57:30 525

原创 dom4j解析xml

Dom4j是一个简单、灵活的开放源代码的库。Dom4j是由早期开发JDOM的人分离出来而后独立开发的。与JDOM不同的是,dom4j使用接口和抽象基类,虽然Dom4j的API相对要复杂一些,但它提供了比JDOM更好的灵活性。 Dom4j是一个非常优秀的Java XML API,具有性能优异、功能强大和极易使用的特点。现在很多软件采用的Dom4j,例如Hibernate,包括su...

2011-01-24 21:52:40 66

原创 japx进行dom解析

JAXP 开发包是J2SE的一部分,它由javax.xml、org.w3c.dom 、org.xml.sax 包及其子包组成在 javax.xml.parsers 包中,定义了几个工厂类,程序员调用这些工厂类,可以得到对xml文档进行解析的 DOM 或 SAX 的解析器对象。javax.xml.parsers 包中的DocumentBuilderFactory用于创建DOM模式...

2011-01-24 21:15:31 468

原创 dom编程

1.DOM解析器在解析XML文档时,会把文档中的所有元素,按照其出现的层次关系,解析成一个个Node对象(节点)。2.在dom中,节点之间关系如下:位于一个节点之上的节点是该节点的父节点(parent)一个节点之下的节点是该节点的子节点(children) 同一层次,具有相同父节点的节点是兄弟节点(sibling) 一个节点的下一个层次的节点集合是节点后代(descenda...

2011-01-24 21:06:50 111

原创 sax方式解析xml文档

1. SAX采用事件处理的方式解析XML文件,利用 SAX 解析 XML 文档,涉及两个部分:解析器和事件处理器:解析器可以使用JAXP的API创建,创建出SAX解析器后,就可以指定解析器去解析某个XML文档。解析器采用SAX方式在解析某个XML文档时,它只要解析到XML文档的一个组成部分,都会去调用事件处理器的一个方法,解析器在调用事件处理器的方法时,会把当前解析到的...

2011-01-24 21:04:39 104

原创 java api内省的流程

流程:第一,得到所有属性描述器得到bean--》得到bean的所有属性信息info(Introspector.getBeanInfo(bean.class))--》得到所有属性的描述器()info.getPropertyDescriptiors pds[]-->遍历pds,得到每个属性的描述器--》pd.getName,可以得到所有的属性名--》通过属性名,获得...

2011-01-24 16:02:21 176

原创 泛型 三 泛型对集合类型的控制

list:List list = new ArrayList();遍历list: 用Iterator接口: Iterator it = list.iterator(); while(it.hasNext()){ String value = it.next(); System.out.println(value); } 用增强的for循环更加简...

2011-01-24 16:00:20 94

原创 泛型 二 自定义泛型

自定义泛型:1.Java程序中的普通方法、构造方法和静态方法中都可以使用泛型。方法使用泛形前,必须对泛形进行声明,语法: ,T可以是任意字母,但通常必须要大写。通常需放在方法的返回值声明之前。例如: public static void doxx(T t);2.注意:只有对象类型才能作为泛型方法的实际参数。在泛型中可以同时有多个类型,例如:public...

2011-01-24 15:58:51 127

原创 泛型 一 综合

泛型(Generic)1.作用:JDK5中的泛形允许程序员在编写集合代码时,就限制集合的处理类型,从而把原来程序运行时可能发生问题,转变为编译时的问题,以此提高程序的可读性和稳定性(尤其在大型程序中更为突出)。防止强转时出现是安全性问题,将类型的转换错误在编译时即报错2.注意:泛型是提供给javac编译器使用的,它用于限定集合的输入类型,让编译器在源代码级别上,即挡住向...

2011-01-24 15:57:37 92

反射 四 反射Filed 字段

/** * 总结:先加载类,然后用getDeclaredField方法获得声明了的字段, * 然后暴力反射 * set(对象,“设置的字段值”) * get(字段类型)(对象) * *///设置name属性的值 @Test public void test1() throws Exception{ Person p = new Pe...

2011-01-23 23:34:27 126

原创 反射 三 反射method

/** * 总结:与获取构造函数的方式类似 *这里用clazz.getMethod(方法名,方法的参数的类型的字节码),来获取方法 *然后通过得到的method.invoke(对象,传进参数值)来调用method*///public void xx1() @Test public void test1() throws Exception{ Person ...

2011-01-23 23:32:52 107

原创 反射 二 反射构造函数

/***总结:1.先加载类,获得字节码后,用getConstructor(构造函数的参数的类型的字节码)获得构造器,其中无参的,用null。 注意:private的构造方法:用getDeclaredConstructor(构造函数的参数的类型的字节码)加setAccessible(true); //暴力反射的方式获得。然后可以用形如:Person p = (Person) c.newIn...

2011-01-23 23:19:06 94

原创 反射 一

一个类有多个组成部分,例如:成员变量,方法,构造方法等。反射就是加载类,并解剖出类的各个组成部分。Java中有一个Class类用于代表某一个类的字节码。加载类: Class类即然代表某个类的字节码,它当然就要提供加载某个类字节码的方法:forName()。forName方法用于加载某个类的字节码到内存中,并使用class对象进行封装另外两种得到...

2011-01-23 23:08:44 62

原创 可变数组

List list = Arrays.asList("1","2","3","4"); System.out.println(list); //list.toString() //注意的问题:可变参数在传的时候可以直接传数组 String s[] = {"11","22"}; list = Arrays.asList(s); System.out

2011-01-23 22:26:13 69

原创 关于增强for循环对map的遍历

//传统方式 Set set = map.keySet(); Iterator it = set.iterator(); while(it.hasNext()){ String key = (String) it.next(); String value = (String) map.get(key); System.out.println(key ...

2011-01-23 22:20:00 175

原创 JDK1.5新特性

静态导入自动装箱/拆箱自动装箱:指开发人员可以把一个基本数据类型直接赋给对应的包装类。自动拆箱:指开发人员可以把一个包装类对象直接付给对应的基本数据类型List list = new ArrayList(); list.add(1); int j = (Integer)list.get(0);  增强for循环:    引入增强for循环的原因:在JDK5以前的版本中,...

2011-01-23 22:15:39 53

原创 session与cookie

Session是服务器端技术,利用这个技术,服务器在运行时可以为每一个用户的浏览器创建一个其独享的session对象,由于session为用户浏览器独享,所以用户在访问服务器的web资源时,可以把各自的数据放在各自的session中,当用户再去访问服务器中的其它web资源时,其它web资源再从用户各自的session中取出数据为用户服务。在WEB开发中,服务器可以为每个用户浏览...

2011-01-22 21:31:39 56

原创 用cookie的方式显示上次浏览过的商品

以下以网上书店为例,演示用cookie的方式,显示上次浏览过的商品采用自顶向上的编程思想//在一个servlet中//给用户浏览器回送包含浏览历史纪录的cookie//2_1_3 使用makeHistory函数获得bookHistory。即book的id号。用“-”分隔开,得到一个字符串String bookHistory = makeHistory(request,id); ...

2011-01-22 21:25:09 319

原创 请求转发与请求重定向的区别

请求转发与请求重定向的区别::RequestDispatcher.forward方法只能将请求转发给同一个WEB应用中的组件;而HttpServletResponse.sendRedirect 方法还可以重定向到同一个站点上的其他应用程序中的资源,甚至是使用绝对URL重定向到其他站点的资源。 如果传递给HttpServletResponse.sendRedirect 方...

2011-01-19 22:24:37 97

防盗链

防盗链::1.得到用户是从哪个页面来的 (通过request的getHeader方法)String referer = request.getHeader("referer");2.判断获取的referer信息,是否来自期望的网站,这里用sina举例。如果referer为空,或者不是期望的网站地址,那么将请求重定向到期望的网页,也就是自己网站的首页或者广告页最佳了。如果...

2011-01-19 21:44:09 63

原创 泛型的好处

泛型1.可以将一个集合中储存的数据类型规定为同一种,从而更加安全,而且不必再进行强制转换的操作!2.在编译过程中,编译器能够获悉变量的类型信息,但是编译完成后在运行时,将去除变量的类型 信息!3.泛型的参数类型间不存在任何继承关系,不能通过编译如 ArrayList d = new ArrayList();//错误的写法;4.使用?通配符可以引用其他各种参数化的类型呢,?通配符...

2011-01-19 21:40:08 101

原创 Response中文输出

1. 使用ouputStream输出示例:程序给客户机打出的是什么数据,则程序一定要记得通知浏览器以什么码表打开([u][i][b][color=red][size=medium]字节流[/size][/color][/b][/i][/u]) response.setHeader("content-type", "text/html;charset=UTF-8"); String da...

2011-01-19 21:20:56 146

常见的几种表单输入的写法

用户名: 密码: 性别:男

2011-01-19 21:17:05 220

原创 中文乱码问题

其实所有的中文乱码问题总结出来就是一句 话:只要中文数据在[b]服务器[/b]转码时用的码表与在[b]浏览器端[/b]使用的码表一致就不会出现乱码问题以下代码可以证明这个结论:(服务器中request使用utf-8码表进行转码,然后再使用服务器response中gb2312码表进行转码,最后又再将浏览器端设置为使用gb2312码进行转码,这样得到的中文却不是乱码。所以证明了,只...

2011-01-19 21:08:03 141

空空如也

空空如也

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

TA关注的人

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