jsp跳转html,java web中一个jsp页面如何跳转到一个html页面
jsp跳转html,java web中一个jsp页面如何跳转到一个html页面详细介绍
本文目录一览: jsp页面如何跳转到html页面,在线急等
Response.Redirect("***.html");
你好!
通过tomcat 容器,jsp会请求servlet 将jsp 渲染成html页面,如果想简单点就部署到tomcat,打开这个页面,单击右键查看源码,里面就是你想要的itjob.html,其实它也是走了servlet然后渲染出来的。
希望对你有帮助!
怎么从jsp页面跳转到html页面
可以实现的方法很多,看你的需求
你可以在jsp页面使用超链接标签 例如 点击我跳转 也可以在后台servlet中使用 重定向 例如 response.sendRedirect("xxx.jsp"); 也可以使用转发 例如 request.getRequestDispatcher("xxx.jsp").forward(request.response);
jsp和html关系,是不是我用jsp写,就不用写html了?jsp里面也有html标签?
对于这个问题,我们首先要清楚,HTML和JSP各自的作用以及使用的环境,这里就简单的介绍一下:
对于HTML来说,它是一种超文本标记语言,用来定义网页的基本结构,它是是由一系列标签组成的,可以用浏览器直接打开,也可以部署到服务器之后通过HTTP协议打开,一般我们会将HTML编写好的页面看作是静态页面;
对于JSP来说,它是运行在服务器中的一种脚本语言,在JSP页面中可以包括HTML代码、Java代码以及其他一些脚本,而且JSP编写好的页面需要部署到服务器中才可以打开,所以说它和PHP、ASP的作用是一样的,使用JSP可以将页面和代码分离,增强代码的可读性和可维护性;
到这里为止,不知道您发现没有,HTML、JSP有很大的差别,对于HTML来说,它只是一种标记语言,没有编程的能力,所以它的页面是静态的,而JSP则不然,是一种运行在服务器端的脚本语言,可以包括HTML代码展示页面,也可以包含Java代码处理逻辑。
综上所述,HTML和JSP并不一样,可以将JSP看作是一种包含HTML和数据的动态页面,而HTML则只是一种静态页面。
jsp页面转换成HTML
搂主的问题是不是在用户第一次访问一个动态页面的时候将该动态页面保存为一个静态页面,当有用户再次访问该动态页面时只需要将保存的静态页面展示给用户即可. 这样可以减少服务器解释jsp代码的次数. 1、编写一个实现 Filter 接口的类,这个类命名为 CacheFilter.java 2、修改web.xml添加Cache Filter的配置参数,将jsp的过滤类指向 CacheFilter 类。 3、在 CacheFilter 类中获取请求,如果请求为需要缓存页面,首先先判断是否被缓存过,如果没有被缓存过便将请求的页面保存为静态页面文件。最后从文件中读取静态页面并写入请求的响应里。重复本次操作进行其它页面的缓存。 原理如上所诉,很简单 为了方便,在实现中使用了网上的 jspbook 包,对包中的程序进行了修改,具体实现步骤如下: 1、下载 jspbook 包,地址: http://onjava.com/onjava/2003/11/19/examples/jspbook.zip 2、解压缩 jspbook 包,修改 CacheFilter 类和 CacheResponseWrapper 类。 CacheFilter 类 69行:name = name.substring(0,name.lastIndexOf("/")==-1?0:name.lastIndexOf("/")); 改为:String filesp = System.getProperty("file.separator"); name = name.substring(0, name.lastIndexOf(filesp) == -1 ? 0 : name.lastIndexOf(filesp));//修改 获得系统文件夹符号(源程序作者应该是外国人没有考虑中文符号) 75行:wrappedResponse.flushBuffer();// 增加 强制刷新 CacheResponseWrapper 类 35行:stream.flush(); 改为: writer.flush(); 3、建立动态web项目,建立com.jspbook包,将修改好的jspbook包中的类加入该包下面 4、将jspbook包中的jsp文件拷入web目录下 5、修改web.xml文件,下面是我写的项目的配置文件,请重点看带 filter 的标签
JSP2HTML
index.html
index.htm
index.jsp
default.html
default.htm
default.jsp
CacheFilter
com.jspbook.CacheFilter
/TimeMonger.jsp
nocache
/TestCache.jsp
nocache
cacheTimeout
600
locale-sensitive
true
<!-- CacheFilter /news.jsp -->
CacheFilter
*.jsp
6、配置web环境,运行web应用,你会发现由于 TestCache.jsp 和 TimeMonger.jsp 被配置成为 nocache 所以每次都回被重新加载。
/TimeMonger.jsp
nocache
其它的jsp页面会被保存成为静态文件,然后将静态文件返回给请求的响应。
CacheFilter
*.jsp
具体的缓存保存路径,请查找 CacheFilter 类中53行的 String temp = tempDir.getAbsolutePath(); 以上代码已经执行通过,如有问题请留言
怎么从jsp页面跳转到html页面
写法有问题。
forward动作对应的是Servlet中RequestDispatcher类的forward(ServletRequest request, ServletResponse response)方法,也就是把请求进行转发。
也可以写成
xxx/xxx.jsp
这种写法等价于上面的写法。
用response.sendRedirect("frameset/main.html");
改成jsp不就行了,又不影响
request.getRequestDispatcher("url").forward(request,response);也可以
登陆跳转不宜用
应该用redirect
java web中一个jsp页面如何跳转到一个html页面
request.getRequestDispatcher("/WEB-INF/CartUI.jsp").forward(request, response);
在你的servlet中这样写就可以
springmvc 配置了跳转到jsp页面 怎么实现跳转到html页面
先看controller:
@RequestMapping(value = "/{id}/view", method = RequestMethod.GET, produces = "text/html")
public String getPostByIdHtml( @PathVariable String id) throws IOException {
return "/resources/Post.html";
}
再看配置:
@Configuration
@EnableWebMvc
@EnableTransactionManagement
@ComponentScan({ "com.my.web.api"})
@ImportResource("classpath:db-context.xml")
public class ApiServletConfig extends WebMvcConfigurerAdapter {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/resources/**").addResourceLocations("/resources/");
}
@Bean
public InternalResourceViewResolver internalResourceViewResolver() {
InternalResourceViewResolver internalResourceViewResolver = new InternalResourceViewResolver();
internalResourceViewResolver.setPrefix("/resources/");
internalResourceViewResolver.setSuffix("*.html");
return internalResourceViewResolver;
}
}
如何在jsp页面引入html页面
简单说一下思路吧:
1,ajax
网页加载完毕以后使用ajax调用后台方法获取应该使用哪个网页,然后使用ifame显示网页(不知道js里面是否可以用inclde,你可以试试)
2,非ajax
比如你可以跳转到这个页面的时候request里面加一个参数,然后用<% if() %> 或者jstl都可以来判断了,然后可以用肯定可以用incude