Java Web
文章平均质量分 71
Bird
这个作者很懒,什么都没留下…
展开
-
Java WEB之Servlet学习之路(一)一个最简单的Servlet应用
好久没有更新博客了,有点冷清,主要是最近忙着看Java WEb前段时间都是基础,一些http理论和WEB容器理论,没有什么实践性代码,所以没写代码,现在终于正式开始Servlet编程了,下面就得好好的开始写代码了呃,下面奉上第一篇,Setblet的Hello World!!!首先放上Setvlett代码package com.bird.servlet;import java.io.IO原创 2011-11-26 20:03:16 · 2139 阅读 · 0 评论 -
JSP与JavaBean
在JSP中,有几个专门针对JavaBean标签,下面来罗列一下他们的用处,其实很简单,首先是创建一个Beanpackage com.bird.domain;import java.util.Date;public class Person { private String name = "小白"; private int age; private Date birthday;原创 2012-01-19 22:32:14 · 1270 阅读 · 2 评论 -
JSP+JavaBea实现简单的Web计算器
Sun公司推出JSP之后,有两种设计方法供选择,一个是JSP+JavaBean来实现一些比较简单的案例,另一个就是使用JSP+Servlet+Javabean来实现较为复杂的案例,但是对于现在流行的MVC设计模式而言,后者无可厚非是最好的,前者现在几乎已经不再使用,但是作为一个案例,还是写了一个最简单的Web版面的计算器。主要的注意点有,精确计算一定要使用BigDecimal类来完成,否则会出原创 2012-01-20 15:40:27 · 4990 阅读 · 0 评论 -
使用EL表达式获取数据和使用JSTL标签库迭代容器
为了避免在JSP页面中出现Java代码和显示Servlet处理完成带过来的数据并且显示,使用EL表达式会非常容易而且简介,但是对于存放在容器中的数据,EL表达式不能单独完成迭代输出,所以必须使用JSTL标签库配合使用,这个是JavaEE附带的一个非常强大的标签库,估计在以后还会用到。首先是EL表达式的几个不同情况的用法 EL表达式的应用原创 2012-01-20 23:14:23 · 3850 阅读 · 0 评论 -
MVC案例,开发用户登录模块(一)
对于MVC相比都不陌生,现在就以MVC设计模式为指导思想写一个真实的案例,先是第一步,规划,和进行必要的开发环境的搭建。首先是规划1.搭建开发环境 1.1导开发包 dom4j开发包 jstl开发包 beanUtils开发包 log4j开发包 1.2创建组织程序的包 com.bird.domain com.bird.dao com.bird.dao.im原创 2012-01-21 16:10:23 · 3650 阅读 · 2 评论 -
JSP技术中的开发自定义标签
因为在JSP中不要使用一行Java代码,所以说必须使用标签来移除显示的Java代码,下面罗列一下标签的开发过程。1.首先编写一个实现tag接口的java类package com.bird.web.tag;import java.io.IOException;import javax.servlet.http.HttpServletRequest;import javax.serv原创 2012-01-25 19:19:39 · 1000 阅读 · 0 评论 -
传统标签库功能实例
传统标签库,也就是JSP1.0的时候,主要有Tag,BodyTag, IterationTag,这三个接口,分别实现不同的功能。1.可以实现控制是否显示标签体里面的内容首先必须写一个类实现Tag接口,代码如下package com.bird.web.tag;import javax.servlet.jsp.JspException;import javax.servlet.jsp原创 2012-01-26 20:51:57 · 994 阅读 · 0 评论 -
开发带属性的标签
如果一个标签有了属性,则这个标签将是更加灵活而且好使用。下面来列举一下开发带属性的标签的步骤。首先还是写一个类继承SimpleTagSupport,然后为属性声明一个值,当然,也得为了这个值进行按照JavaBean那样设置Set方法以便服务器进行调用。下面的内容和写正常的标签类就差不多了。当然,在书写TLD标签的时候还是有些不一样的。package com.bird.web.simpleT原创 2012-01-27 14:03:03 · 1039 阅读 · 0 评论 -
JSP标签案例----开发If-else和单独的if标签
首先是开发一个if标签,先是实现类package com.bird.web.tag.example;import java.io.IOException;import javax.servlet.jsp.JspException;import javax.servlet.jsp.tagext.SimpleTagSupport;public class IfTag extends原创 2012-01-27 17:30:59 · 4570 阅读 · 0 评论 -
简单标签功能实例
在JSP2.0以后,为了减少标签学习成本,SUN 公司推荐使用SimpleTag接口,这个接口的方法所有的对于标签的控件全部在doTag()这个标签里面,所以使用起来更加简单,下面列举简单标签实现的四个功能。1.使用简单标签控制是否执行标签体首先写一个类继承SimpleTagSupport这个实现类package com.bird.web.simpleTag;import java原创 2012-01-27 11:30:52 · 919 阅读 · 0 评论 -
在JSP中使用标签构造防盗链
标签的好处就是能够让JSP界面不出现Java脚本代码,然后加上属性这个东西就大大增强了标签的可复用性,下面我们使用标签技术来开发一个防盗链标签。首先还是写一个类实现SimpleTagSupportpackage com.bird.web.tag.example;import java.io.IOException;import javax.servlet.http.HttpServ原创 2012-01-27 15:45:30 · 1605 阅读 · 0 评论 -
JSP自定义标签开发Foreach迭代标签
对于JSP中的容器,进行迭代的方法最好就是使用标签,当然,SUN提供了JSTL标签库,但是我打算自己开发这个标签。首先得考虑对于单关键字容器和多关键字容器,分别对应Collection 和Map,然后还有数组还有特殊的八种基本数据类型,这八个基本数据类型因为不是对象所有需要特殊对待。我们使用的方法是是使用反射技术,反射包里面的Array提供了对于所有的数组元素的操作。下面还是先是实现标签的原创 2012-01-28 11:38:33 · 4482 阅读 · 0 评论 -
JSP开发转义自定义标签
转义标签非常常用,这个东西是在论坛里面经常会被使用的东西,比如对方想问一个问题,这个超链接怎么写,然后你写出来href肯定会被浏览器以正常的方式显示而不能达到需求,所以需要转义标签的支持。下面来具体说一下转义标签到底该怎么进行写。首先还是代码package com.bird.web.tag.example;import java.io.IOException;import java.原创 2012-01-28 14:23:30 · 1311 阅读 · 0 评论 -
通过Servlet过滤器处理Web的编码问题
Servlet 过滤器是小型的 Web 组件,它们拦截请求和响应,以便查看、提取或以某种方式操作正在客户机和服务器之间交换的数据。过滤器是通常封装了一些功能的 Web 组件,这些功能虽然很重要,但是对于处理客户机请求或发送响应来说不是决定性的。典型的例子包括记录关于请求和响应的数据、处理安全协议、管理会话属性,等等。过滤器提供一种面向对象的模块化机制,用以将公共任务原创 2012-01-29 10:03:12 · 1289 阅读 · 0 评论 -
使用common-fileupload实现文件的上传
文件上传是网站非常常用的功能,直接使用Servlet获取上传文件还得解析请求参数,比较麻烦,所以一般选择采用apache的开源工具,common-fileupload.这个jar包可以再apache官网上面找到,也可以在struts的lib文件夹下面找到,struts上传的功能就是基于这个实现的。common-fileupload是依赖于common-io这个包的,所以还需要下载这个包原创 2012-04-19 12:42:51 · 29964 阅读 · 3 评论 -
JSP的常用标签和JSP映射
为了不在JSP中明显的写Java代码,JSP还是推荐使用JSP标签来代替一些Java代码,下面列举两个简单的JSP标签来看一看,分别是跳转标签和附加参数标签 JSP常用标签 " name="username1"/> 对于JSP的映射,和Servlet的映射一样,还是配置X原创 2012-01-17 15:13:09 · 1961 阅读 · 0 评论 -
JSP中的PageContext全局变量的应用
PageContext是包含了8大对象的全局对象,在构建自定义标签的时候有很大的用处,下面举例几个非常简单的应用 PageContext <% request.setAttribute("date","aa"); pageContext.getAttribute("date",pageContext.REQUEST_SCO原创 2012-01-16 15:13:06 · 2557 阅读 · 0 评论 -
JSP中的inlcude标签(包含的使用)
在开发中,经常要使用包含指令,比如应用中所有界面的页头和页脚都一样,那就不需要分别写出来,而只需要写一个公共的然后在其他的界面中包含就行了,这就是包含的用处,当然,包含也分为两种,一种是静态包含一种是动态包含,他们的区别就是在JSP翻译成Servlet的时候,静态包含不翻译那个需要包含的界面,只是简单的将所有的最终界面放到一起成为一个Servlet,而动态包含则是分别生成多个servlet,等到访原创 2012-01-16 13:54:25 · 2151 阅读 · 0 评论 -
ServletConfig读取web.xml文件的应用实例
在实际开发中,有时候一些变量或者条件不好写死到程序中,需要使用者动态的配置这些内容,比如连接数据库的时候数据库的地址,用户名和密码等等,这些东西一班配置到web.xml中,但是如何才能提前或者这些内容呢,下面使用的ServletCongue 类就能完成这个内容,下面奉上代码,请看,呵呵呵,首先贴上web.xml代码,这个比较看起来容易一些<web-app version="2.4"原创 2011-11-27 20:17:16 · 3293 阅读 · 0 评论 -
ServletContext实现转发和读取Properties配置文件
在Servlet开发中,一般很少使用Servlet输出数据,所以需要转发机制实现Servlet向JSp等等的转发,使用Servletontext就能完成这个功能,代码如下package com.bird.servlet;import java.io.IOException;/** * @use 使用ServletContext实现请求的转移 * @author Bird */im原创 2011-11-29 19:59:23 · 5195 阅读 · 0 评论 -
基础Java类使用类装载器实现装载配置文件
package com.bird.dao;import java.io.FileInputStream;import java.io.InputStream;import java.util.Properties;import org.junit.Test;/** * @use Java普通类实现装载配置文件 * @author Bird * */public class原创 2011-11-29 20:49:31 · 1441 阅读 · 0 评论 -
HttpServletResponse输出中文的问题
在编码的时候,对于中文一直出现乱码,Servlet也不例外,向浏览器中输出中文就出现中文字符编码问题,气质一条信条为,你以什么方式或者什么编码写的数据就一定要高数浏览器以什么方式或者什么码表打开,否则会出现乱码,当时,告知浏览器以什么方式打开文件爱你或者数据也是同伙HTTP 相应头来写的,这个貌似说明相应头还是很重要的,下面把代码贴上看看,,,,,,这个是上下都使用UTF-8码表package原创 2011-11-29 21:34:48 · 3364 阅读 · 0 评论 -
使用Servlet实现注册网页的随机认证图片
在注册帐号的时候,经常出现那种随机认证图片,每次刷新都会变化而且有些干扰和旋转功能,防止恶意注册,但是这个东西到底是怎么做的呢,下面使用Servlet来实现这个功能,其实很简单,一个Servlet搞定,下面是上代码package com.bird.ServletResponse;import java.awt.Color;import java.awt.Font;import java原创 2011-12-03 22:00:40 · 1542 阅读 · 1 评论 -
Servlet中的Request的一些实现细节和应用
Servlet中,response是向浏览器发出请求,而request就是获得浏览器向服务器发出的请求了,下面首先演示request的常用方法package com.bird.request;import java.io.IOException;import javax.servlet.ServletException;import javax.servlet.http.HttpSe原创 2011-12-05 20:50:25 · 4707 阅读 · 0 评论 -
Session对象初探
相对于cookie对象而言,session对象是对每一个浏览器的,session是存放在服务器上的,而cookie是存放在客户端机器上的,其实session底层还是使用的cookie帮助实现的一些功能。首先,session的声明周期为第一次调用request.getsession这句代码的时候,当他发现客户机没有带过来session给指定的id的时候,session就会根据你的一个浏览器给i创原创 2012-01-10 22:46:22 · 932 阅读 · 0 评论 -
Cookie案例-显示商品浏览历史纪录
在购物网站中,最常见的一个功能就是当年浏览完几个商品之后,再次访问这个网站,网站会提醒你,你上次看了什么什么商品,或者当你选择好几个商品放入购物车时候最终的结账,都有这个东西,大概是使用Cookie实现的,最终还是Servlet的载入,下面就来实现这个案例1.首先是首页执行显示的Servlet,他的功能是输出网站的所有商品和显示最近浏览过什么商品package com.bird.cooki原创 2012-01-10 16:31:51 · 3533 阅读 · 3 评论 -
利用Session完成用户的登录和注销
用户的登录和注销是最常见的Web应用案例,当一个应用的客户登录了以后,其他所有的会话都得知道这个用户已经登录还很有可能得提取用户的昵称予以显示等等,所以,只有把登录成功的用户的信息放入到Session中才能够办到使所有的Servlet都能访问到用户的登录状态,下面把这个案例放上来。 第一是登录的界面,是HTML的一个表单,非常的简单登陆界面 帐号: 密码:原创 2012-01-13 16:44:33 · 32080 阅读 · 1 评论 -
Session案例,显示商品浏览记录
相对于Cookie而言,Session并不经常在服务器中使用,因为session为每一个浏览器用户创建了一个session,这样对服务器的要求无形之中高了很多,而cookie是对每个浏览器发送数据,所以服务器负担小,所以大部分浏览器还是选择使用cookie来实现浏览记录的显示。当用户的浏览器禁用Cookie的时候,可以使用超链接里面带着指定的id去访问servlet,具体代码为response原创 2012-01-11 22:56:48 · 3528 阅读 · 0 评论 -
Servlet机制中Request、Session、servletContext的区别分析
就servlet规范本身,servlet可以再三个不同的作用域存储数据,分别是: Request对象、Session对象和getServletContext()方法返回的servletContext对象中保存。以下是本人对他们之间区别的分析: 1 首先从作用范围来说 Request 保存的键值仅在下一个request对原创 2012-01-14 22:17:05 · 1513 阅读 · 0 评论 -
JSP语法和指令以及乱码问题
首先是JSP语法问题,主要有基本的嵌套Java代码的,还有JSP脚本表达式,还有JSP声明 显示当前时间 当前时间是: <% Date date = new Date(); String time = date.toLocaleString(); %> <%-- JSP注原创 2012-01-15 18:15:02 · 1099 阅读 · 0 评论 -
客户端防表单重复提交和服务器端session防表单重复提交
为了防止用户在客户端重复提交表单,要分析从客户端和服务端对重复提交的表单就行处理,首先是客户端处理重复提交表单,使用JavaScript方法,第一种是只允许表单提交一次,后来的不能再提交,第二种是提交一次后按钮变成不可用,下面是代码的实现Insert title here/* var isCommit = false; function doSubmit(){ if(! i原创 2012-01-14 18:08:07 · 4760 阅读 · 2 评论 -
JSP入门和JSP运行原理
你访问JSP的时候,实际上浏览器访问的并不是JSP,而是由服务器把这个JSP页面翻译成的对应的Servlet,这个Servlet对于Tomcat来说,存放在Work目录你的Web项目的下面,他是继承自HttpJspBase这个抽象类,同时这个抽象类继承了Servlet,所以JSP说白了还是一个Servlet.下面举一个例子,使用JSP页面显示当前时间 显示当前时间原创 2012-01-15 15:57:57 · 912 阅读 · 0 评论 -
读取数据库中内容实现文件的下载
因为将上传的内容放入到数据库中,所以也就不方便给定一个确切的地址让浏览器来下载,希望直接通过数据流的读取实现文件的下载,这样更加方便一些。下面我们来演示一下文件的下载代码package oop.hg.ytu.servlet;import java.io.IOException;import java.io.InputStream;import java.net.URLEncoder原创 2012-04-19 19:16:42 · 4553 阅读 · 1 评论