jsp用浏览器打开是源码(为什么jsp页面打开是代码)
本文目录一览:
为什么我的html连接到jsp显示的是jsp代码而不是页面
说说我的看法。
首先,我也遇到了和你类似的情况。其次,我检查后发现jsp的代码和html的代码都没有问题。但为什么会出现这样的问题呢?原因就在于我用eclipse来运行html文件是选用打开方式中的web浏览器,也就是下图被选中的部分:
事实上,如果选择这种方式来打开html文件(它里面有一个表单,单击提交按钮后,会将输入框里面的内容传给jsp文件,并在jsp文件中显示出来),那么点击提交按钮后就会得到jsp文件的代码。
但是如果你选择如下图被选中的打开方式:
那么用这种方式打开html文件并跳转到jsp文件后,显示的就不会是jsp的源代码了,而是实际上这段代码将要输出的内容。
使用电脑上的绝对路径打开jsp文件时,为什么显示的是源代码?
先给你看下JSP的编译过程:
1.客户端发送请求给web容器
2.web容器将jsp首先转译成servlet源代码
3.web容器将servlet源代码编译成.class 文件
4.web容器执行.class 文件
5.web容器将结果响应给客户端
看明白了吗,JSP并不是浏览器能直接解析JSP的。如果你想看这个JSP就要通过web容器,比如tomcat。
jsp文件用IE打开出现的是源代码?
JSP文件打开是需要部署到服务器端的,如tomcat
直接放到Webapps目录下就可以了,步骤如下:
Tomcat的Webapps目录是Tomcat默认的应用目录,务器启动时,会加载所有这个目录 下的应用。
也可以将JSP程序打包成一个war包放在目录下,服务器会自动解开这个war包,并在这个目录下生成一个同名的文件夹。
一个war包就是有特 性格式的jar包,它是将一个Web程序的所有内容进行压缩得到。
在程序执行中打包:
try{
string strjavahome = system.getproperty("java.home");
strjavahome = strjavahome.substring(0,strjavahome.lastindexof(\\))+"\\bin\\";
runtime.getruntime().exec("cmd /c start "+strjavahome+"jar cvf hello.war c:\\tomcat5.0\\webapps\\root\\*");
}
catch(exception e){system.out.println(e);}
webapps这个默认的应用目录也是可以改变。
打开Tomcat的conf目录下的server.xml文件,找到下面内容即可:
Host name="localhost" debug="0" appBase="webapps" unpackWARs="true" autoDeloy="true" xmlValidation="falase" xmlNamespaceAware="false"