一、文件下载及版本
apache-tomcat-6.0.20.exe
jdk-6u2-windows-i586-p.exe
二、安装及环境变量设置
软件安装后,需要配置环境变量。新建JAVA_HOME, CATALINA_HOME, classpath,修改path:
classpath = ".;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\lib\servlet-api.jar"
path += ";%JAVA_HOME%\bin"
为保障servlet Java程序的编译通过,还要将%TOMCAT_HOME%\lib目录下的servlet-api.jar复制到%JAVA_HOME%\jre\lib\ext目录下,因为javax.servlet.*相关代码需要该jar包。
三、创建新应用及相关代码
在%TOMCAT_HOME%\webapps\目录下,创建myapp目录,作为自己的新应用目录。依次创建如下目录结构:myapp\WEB-INF\classes\test\
在myapp目录下,创建index.jsp和testBean.jsp;在WEB-INF目录下,创建web.xml;在test目录下,创建TestServlet.java和TestBean.java
相关代码分别如下:
index.jsp, 测试jsp配置用。
-------------
<html>
<body>
This is a test index
</body>
</html>
-------------
testBean.jsp, 测试Java Bean配置用
-------------
<%@ page import="test.TestBean" %>
<htm ......
Java代码:
package com.zhaipuhong.common.util;
import java.util.ArrayList;
import org.apache.log4j.Logger;
import javax.servlet.http.HttpServletRequest;
public class PageBean {
private static Logger logger = Logger.getLogger(PageBean.class);
/**
* 对查询数据封装
*/
private ArrayList objList = new ArrayList();
/**
* 页面记录大小
*/
private int pageSize = 10;
/**
* 总行数
*/
private int rowcnt;
/**
......
一:web.xml配置
<servlet>
<servlet-name>context</servlet-name>
<servlet-class>
org.springframework.web.context.ContextLoaderServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>
二:在JSP
<%@ page import="org.springframework.context.ApplicationContext"%>
<%@ page import="org.springframework.web.context.support.WebApplicationContextUtils"%>
<%@ page import="com.yourcompany.service.CategoryService"%>
<%
//上面的CategoryService引用是我自己的东西
//applicationContext.xml中一定要有完整的依赖链,从dataSource到CategoryService
ApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext(request.getSession().getServletContext());
CategoryService cs = (CategoryService) c ......
原文地址:http://hi.baidu.com/wangking/blog/item/8a109423ff3d2341ac34dec9.html
在Java web开发中常会使用到功能强大的过滤器,他毕竟能给我们带来很大的方便,但是针对过滤的资源我们需要详细的了解他们在web.xml中的配置信息。这个根据几种常用的不同情况进行了总结:
1。如果要映射过滤应用程序中所有资源:
<filter>
<filter-name>loggerfilter</filter-name>
<filter-class>myfilter.LoggerFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>loggerfilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
2.过滤指定的类型文件资源
<filter>
<filter-name>loggerfilter</filter-name>
<filter-class>myfilter.LoggerFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>loggerfilter</filter-name>
< ......
首先说说为什么要静态化。
对于现在的Web Application来说,动态页面是占有绝对高的地位的,正因为有了动态化,才有了现在Web的丰富多彩,但是如同所有别的事实一样,好处往往都是有代价的。
为了产生出动态的效果,每一次对页面的请求都会要求服务器对页面进行编译或者执行,这些操作都很消耗系统资源。如果这期间还有和数据库的通讯,那么代价将会更大。
如果一个页面在一定的时间内,其内容没有发生改变,那么就不必为每一次对它的访问进行一次“新”的编译或执行。我们可以把它在这段没有发生改变的时间内的结果保存到一个静态的页面里面,然后每次访问这个页面时,就用刚才保存的静态页面进行回复。这样便能大大地减少系统资源的消耗,并且提高对客户的响应速度。而这个过程就称之为页面静态化。
现在所面临的问题就是如何在JSP中将页面的内容保存下来。
在访问JSP页面的时候,服务器会先将JSP文件编译为Servlet文件,然后对这个Servlet编译、执行,并最终把结果返回给客户端。而我们的任务就是要把这个最终生成的HTML静态页面保留下来,存放在服务器上。
解决的方法其实很简单。普通的对于JSP的访问,最终的数据流是回写到客户端的,如果我们把它重定 ......
此实现共分三个文件,即:CreatImage.java 生成图像流的类,提供用于生成图片流的方法;images.jsp 图片包装,用于将图片加入到response输出流中;login.jsp 调用前面的jsp,显示验证码。
CreatImage.java 类:
3 import java.awt.Color;
4 import java.awt.Font;
5 import java.awt.Graphics;
6 import java.awt.Image;
7 import java.awt.image.BufferedImage;
8 import java.util.Random;
9
10 import javax.servlet.http.HttpServletRequest;
11 import javax.servlet.http.HttpServletResponse;
12 import javax.servlet.http.HttpSession;
13
14 public class CreatImage{
15
16 private static final long serialVersionUID = 1L;
17 Image image = null;
18 HttpServletRequest request = null;
19 HttpServletResponse response = null;
20
21 public CreatImage(HttpServletRequest request, HttpServletResponse response){
......