1.session
session的作用是跟踪用户的操作状态
jsp使用HTTPSession对象实现session管理的功能
seesion的信息保存在服务器端,Session的Id保存在客户机的Cookie中。
如果客户机禁止Cookie,Session ID就必须放在URL后面。
Session的过期时间:默认为30分钟,当客户停止活动,会自动失效
Session中保存和检索的信息不能使基本数据类型,而必须是它们相对应得Java Object对象
2.Application管理
用于服务器管理面向整个应用的参数,使得每个客户都能获得同样的参数值
JSP使用ServletContext对象,操作方法和Session一样
3.JavaBean
使一些完成预定义功能的封装的对象数据.
4.
JSP标签一定要写在HTML的前面
5.jsp目录问题
我只能在{tomcat_home}/webapps/jsp_examples下运行jsp目录,怎么换个目录?谢谢
把WEB-INF文件记得考进去
把文件夹的名称 也作为 访问路径。
在server.xml里建个虚拟目录
修改TOMCAT安装目录的配置文件中与工程所对应的XML文件
C:/Tomcat 5.0/conf/Catalina/localhost/project.xml(这个文件与工程文件同名)
在其中追加
<Context workDir="E:/eclipse/workspace/myspring/work"
path="/myspring" docBase="E:/eclipse/workspace/myspring"
reloadable="true">
</Context>
workDir是磁盘目录,path是虚拟目录,可以随便命名,
如上例你就可以在IE中打,http://localehost:8080/myspring,好的
6.java的环境变量不起作用
问:
在java的环境变量里设置了MYSSQL的驱动,并把驱动放在了lib下,可是JSP一直提示
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
其中java 1.4.2 mysql 3.2 connector 2.0.14 和3.1.10 都通不过。
问题补充:我已经自己找到答案了。原来tomcat也要引用一下mysql的jdbc驱动才行,
要不然永远用不了。http://wz.ly6.net/ArticleShow.asp?ArticleID=10673 可见
答:
把mysql的jdbc驱动放到相应webapp的lib目录下
wepapp
|
|-WEBINF
| |
| |-classes
| |
| |-lib <-放到这个地方
|
|-index.jsp
然后把mysql的jdbc驱动从classpath里去掉,classpath里面只放最基本的jar包,放入太多的jar包会影响编译效率
7.9.3日周志刚对jsp环境和运行的经验
1.如果不借助开发工具如(eclipse),必须设置环境变量classpath今天用的这个变量值是综合了java_path和
catalina_path两者的安装个目录,以及jsp/servlet运行所需要的api所在的目录: common/lib
classpath=.;%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar;%CATALINA_HOME%/common/lib
(.;一定不能少,因为它代表当前路径,刚才特意试了下,少了不行)
2.注意浏览器有记忆功能,要清除历史后再试下
3.有WEB-INF/web.xml配置文件的,一定不能缺少和随便移动
4.jsp有配置文件时的目录结构
wepapp (此名可改变)
|
|-WEBINF (名字不能改动,且注意大小写)
| |
| |-classes (放置jsp/servlet编译后生成的class文件)
| |
| |-lib (放mysql的jdbc驱动等)
| |-web.xml
|-index.jsp
5.注意:设置环境变量导入某个api的jar包时,不要只导入这个包所在的目录
例如:要导入common/lib 下的servlet-api.jar时,一定要精确到servlet-api.jar 即 common/lib/servlet-api.jar
6.每次对系统变量或程序的改动,cmd都要重新启动.
8.输出系统当前的时间:jsp实例
<html>
<body>
<center>
Now time is: <%=new java.util.Date()%>
</center>
</body>
</html>
9.周志刚
我将含有package test;的servlet编译所得到的.class文件直接拷到WEB-INF下的classes文件夹下,再将配置文件和其他目录结构打好.
发布时通不过.
解决办法:我在WEB-INF下的classes文下建了个test文件夹,将servlet的.class文件移进去.再重启tomcat,按照web.xml中mapping 的
名字发布成功.
10.发布servlet的web应用时的地址栏结构:
http://localhost:8080/myjspapp/Test
myjspapp是WEB-INF所在的根目录.
Test是servlet的配置文件web.xml中的mapping的名字.
11.jsp的web应用也需要建立WEB-INF目录,并将web.xml配置文件防于其中.
.jsp文件防在web-inf目录之外.发布之前需要启动tomcat
.jsp文件一般不需要javac.exe来编译生成.class文件,直接将它拷到含有WEB-INF的目录下,将目录结构构造好.配置文件写好即可发布
12.好文章:
<Tomcat下JSP、Servlet和JavaBean环境的配置>位置网址:http://topic.csdn.net/t/20050712/21/4140252.html#
在D:/Documents and Settings/zhouzhigang/デスクトップ/桌面文档上也有
13.注释中可以用表达式来表达可以变动的东西
<!--comment[<%=expression%>]-->
expression是表达式,根据他在程序中的值显示在注释中
14隐藏注释
<%-comment-%>:comment是你想表达的注释内容.它不会显示在客户的浏览器中,也不会在源代码中看到
15.声明:
语法: <%!declaration;[declaration;]...%>
声明变量:<%!String name="wxn";boolean a,b,c;%>
声明方法:<%!Func a =new Func(param1,param2,param3);%>
可以一次性声明多个变量和方法,只要以;结尾就行