您的位置:首页 > Web前端 > JavaScript

JSP页面如何调用到.class文件【原创】

2013-08-16 14:51 351 查看
曾几何时,自工作至今的几年间,已经不知道写过多少篇配置JSP环境的文章了,不知道雄心壮志地打算开始学习JSP多少次了,然而,每次在兴师动众,饶有兴致地拉开工架,而后成功配置完毕,看到tomcat的猫样的首页之后,做好博客记录配置过程后,竟然,几次都惊人相似地,嘎然而止了。每次的学习以配置环境开始,以配置环境结束,也每次止步于配置环境。有一次稍微好点的,连过一下数据库,显示过一些数据,别无其他。因为每次都浅尝辄止,所以,也就印象不深刻,印象不深刻,也就自然容易忘记,时间一长,就完全好像没学过一样。都有点感觉像是浪费时间了。当然,这里面和工作中没有机会实际天天使用也是有一定关系的。

所以,此次,又开始不知道哪根神经被触动了,又想起来看JSP了,前两天就开始网上看教程,配环境,但是这次想好了,不超过过去的深度,肯定不写博客。有了自我突破,回过头,再补上博客。

今天,刚才,还是在同事的帮忙下,诡异地调试出来了第一个调用了类文件的JSP页面小程序,虽然诡异,但也算成功了吧,呵呵。回顾一下过程。

先写个a.java文件,保存在C盘根目录下,代码如下:

package xin;
public class a
{
private static int count;
public static int getCount()
{
count++;
return count;
}
}


然后通过DOS窗口,在C盘根目录下,进行编译:c:\> javac a.java。然后瞬间,在C盘根目录下,会出现a.class文件。然后,将这个class文件挪到tomcat安装目录下的\webapps\ROOT\WEB-INF\classes\xin文件夹下。

然后,编写页面文件test.jsp,存在tomcat安装目录下的\webapps\ROOT目录下,代码如下:

<%@ page import="xin.*,java.util.*" %>

<html>
<body>
<center>the page count is
<%= a.getCount()%>
</center>
</body>
</html>


随后,在浏览器中输入http://localhost:8080/test.jsp即可看到



以上就是一个看似简单的jsp调用class的过程了。但其实,从安装配置开始初学,到成功调试出这结果,这当中已经历经了不少问题了。环境配置暂且不提。先说这里的代码吧。

关于<%@ page import...%>指令

在jsp页面中,头一句是引用了两个类,一个是常规的java.util.*,这个照抄即可。另外个是xin.*,它的意思是引用tomcat的class文件目录里的xin文件夹下的所有的类。Class文件一般都必须存放在Tomcat的安装目录的\webapps\ROOT\WEB-INF\classes\文件夹下。这里实例中的a.class文件是存放在\webapps\ROOT\WEB-INF\classes\xin\下面的,所以,在jsp页面引用时,必须写成xin.*。这种写法,其实也就意味着这个jsp页面中可以直接调用xin文件夹下的任意类文件。

调用表达式

然后,在页面中可以直接使用<%=...%>这种叫表达式的方式来直接调用类中的内容。具体写法是类名.方法名()。

类文件及类的定义

好了,页面实例内容其实很简单很少,接下来回头说那个.java文件。调用的是class文件,但是实际编辑的可是原始的,编译之前的.java文件哦!首先一定要写package xin;!因为它在xin目录下,不写的情况除非这个class文件就在class目录下。

其次是定义类public class a{}。

类当中有变量的声明:private static int count;。至于这里的public/private,static什么的,以后再说,一时半会儿搞不清楚。

有方法的定义:public static int getCount(){}。

这里值得注意的一点是,类文件当中定义的类的名称,要与创建的.java文件的文件名一致,否则,会错的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐