jsp学习笔记0(9月1日)

来源:互联网 发布:爱知科技有限公司 编辑:程序博客网 时间:2024/06/05 20:00

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);%>
   可以一次性声明多个变量和方法,只要以;结尾就行

原创粉丝点击