在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>
......
JSTL <c:out value="${EL}">不能正确输出的问题
由于Jsp2.0向后兼容的特性, 当遇到使用Jsp 1.2(Servlet v2.3)的网站时会默认的禁用JSP2.0 EL,所以导致c:out不能正确输出。
(这里注意Jsp 1.2禁用JSP2.0的EL,而是去使用JSTL 1.0 taglib去解析EL。所以使用JSP 1.2+JSTL 1.0不会出问题,
而使用了JSP 1.2+JSTL 1.1就会导致c:out不能正确输出)
启用EL或修改webv.xml为jsp2.0可以解决问题。
启用EL:在jsp页面中加入 <%@ page isELIgnored="false"%>
page指令的isELIgnored屬性是控制EL的使用權的,它的兩個值,true和false
如果 isELIgnored='true'表示禁用EL,isELIgnored='false' 表示可以使用EL, 默認是false
修改webv.xml为jsp2.0
为了用EL改为
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
ver ......
1、新建一个网站
(1) 启动 IIS 管理器,并新建一个网站(虚拟主机);如图所示:
1.jpg (34 KB)
2009-02-21 05:04
2.jpg (21 KB)
2009-02-21 05:04
(2) 输入网站名称,改名称仅为 IIS 中的标识,可任意输入。如图:
3.jpg (16 KB)
2009-02-21 05:09
(3) 网站IP地址不用填写,端口如没有特殊要求则保持 80 即可,最后正确输入网站域名。如图所示:
4.jpg (22 KB)
2009-02-21 05:09
(4) 在网站分区中建立 wwwroot 以及下级站点文件夹 bbs。如图 所示:
5.jpg (19 KB)
2009-02-21 05:09
(5) 对于 jsp 应用,需要给予该站点"读取"和"运行脚本"的权限。如图:
6.jpg (21 KB)
2009-02-21 05:09
(6) 至此,已经成功的新建了一个站点。如图所示:
7.jpg (21 KB)
2009-02-21 05:09
2、配置IIS和Tomcat,使服务器支持80端口同时访问asp站点和jsp站点
(1) 下载isapi_redirect-1.2.27.dll,在X:\Server_Core\Tomcat\conf下新建“connector”文件夹,然后复制isapi_redirect-1.2.27.dll到X:\Server_Core\Tomcat\conf\conne ......
以下为在jsp页面javascript实现方式:
如果需要设置地址供用户下载使用
1. 需要导入jspSmartUpload.jar包。
2. 在页面添加<%@ page import=”com..jspsmart.upload.*”%>
function createOCX()
{
try
{
//创建ActiveXobject对象时传入插件的VersionIndependProgID
//此处判断系统中是否安装meidaPlay插件
var t = new ActiveXObject("WMPlayer.OCX");
alert("this is a player");
}
catch(e)
{
//当出现异常的时候指定用户下载地址下载此插件
<%
out.clear();
response.reset();
SmartUpload su=newSmartUpload();
su.initialize(pageContext);
su.downloadFile("D:/****.rar");
//su.downloadFile中为供用户下载的地址
%>
......
日期问题
1、获取服务器端当前日期:
<%@ page import="java.util.Date"%>
<%
Date myDate = new Date();
%>
2、获取当前年、月、日:
<%@ page import="java.util.Date"%>
<%
Date myDate = new Date();
int thisYear = myDate.getYear() + 1900;//thisYear = 2003
int thisMonth = myDate.getMonth() + 1;//thisMonth = 5
int thisDate = myDate.getDate();//thisDate = 30
%>
3、按本地时区输出当前日期
<%@ page import="java.util.Date"%>
<%
Date myDate = new Date();
out.println(myDate.toLocaleString());
%>
输出结果为:
2003-5-30
4、获取数据库中字段名为”publish_time“、类型为Datetime的值
<%@ page import="java.util.Date"%>
<%
...连接数据库...
ResultSet rs = ...
Date sDate = rs.getDate("publish_time");
%>
[code]
5、按照指定格式打印日期
[code]
<%@ page import="java.util.Date"%>
<%@ page import="java.text.DateFormat"%>
<%
Date dNow = new Date();
SimpleDateFormat formatter = new SimpleDateFormat("E yyyy.MM.dd ' ......
Servlet:
当然,在servlet中,一般跳转都发生在doGet, doPost等方法里面。
一、原理
1) redirect 方式
response.sendRedirect("/a.jsp");
页面的路径是相对路径。sendRedirect可以将页面跳转到任何页面,不一定局限于本web应用中,如:
response.sendRedirect("http://www.ycul.com");
跳转后浏览器地址栏变化。
这种方式要传值出去的话,只能在url中带parameter或者放在session中,无法使用request.setAttribute来传递。
这种方式是在客户端作的重定向处理。该方法通过修改HTTP协议的HEADER部分,对浏览器下达重定向指令的,让浏览器对在location中指定的URL提出请求,使浏览器显示重定向网页的内容。该方法可以接受绝对的或相对的URLs。如果传递到该方法的参数是一个相对的URL,那么Web container在将它发送到客户端前会把它转换成一个绝对的URL。public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException
{
response.setContentType("text/html; charset=UTF-8");
&n ......