第一章JSP基础JSP实用教程教程整理jacksq2007年8月2日第一章JSP基础第一章JSP基础2.1什么是JSP1、JzvaServerPages(JSP)2、SUN公司倡导开发,1999年推出的动态见面编程技术。JSP是基于JavaServlet以及整个Java体系的Web开发技术。利用该技术可以建立安全、跨平台的先进动态网站。JSP和ASP的比较相同点:都是Web服务器端的开发技术。不同点:ASP使用的语言是VBScript和JavaScript,JSP使用的是Java;ASP的运行方式是脚本级执行,JSP的运行方式是编译后运行;JSP由于使用Java技术,所以可以使动态页面和表态页面分离,脱离硬件平台的束缚。2.2安装配置JSP运行环境(先安装JDK,后安装Tomcat)1、服务器端的JSP引擎多种多样。2、1999年著名的Web用品组织Apache开发了JSP用品项目Tomcat。Tomcat可以和大部分主流用品一起高效率的工作。3、免费下载Tomcat的最新版。Win2000下安装JDK1、下载SUN公司的JDK最新版。2、安装完后,需设置几个环境变量,假设JDK的安装目录:c:\jdk1.4.2变量名变量值java_homec:\jdk1.4.2classpathc:\jdk1.4.2\jre\lib\rt.jar;,;Pathc:\jdk1.4.2\bin环境变量设置方法:我的电脑的属性—“高级”选项卡—环境变量安装Tomcat1、运行Tomcat安装文件2、安装方式的选择3、安装目录的选择4、端口号和管理密码设置5、确定JDK所在目录6、安装完成启动Tomcat服务器1、运行Tomcat安装目录下的bin下的启动服务程序。2、在Win2000下Tomcat可以设置为后台自动启动,也可以手动启动。3、在IE浏览器中输入或启动测试页面2.3JSP页面和服务目录1、JSP页面包括:HTML标记符;Java程序片(包含在%%间的内容)。2、JSP页面文件扩展各是.JSP,注意JSP文件标识符区分大小写。一般用大写字母书写HTML标记符。小写字母书写Java程序片。3、文本编辑器编辑JSP页面文件。例如:ultraedit。例2.1%@pagecontentType=”text/html;charset=gb2312”%htmlhead/headbody-1-p这是一个简单的JSP页面%intI,sum=0;for(i=1;i=100;i++){Sum=sum+1;}%p1到100的连续和是:divstyle=”color:red;”%=sum%/div/body/htmlTomcat的配置(两种方法)1、修改主配置文件server.xml2、通过启动Tomcat主配置页面配置相关参数Server.xml文件(原始文件)Tomcat配置页面或http:/127.0.0.1:8080/admin启动主配置页面。注意Tomcat5.5版本默认是没有内置admin模块的。该模块需要单独安装。请到Apache网站找jakartatomcat-5.5x-admin.zip解压到安装目录下。当进入admin以后,可能会做的操作有(对service项操作):1、修改端口例如端口由8080改为9080。要注意端口不要设置为已经使用的端口。-2-如果改为则表明该服务器同时拥有两个端口为之服务(8080和9080)。注意:修改了server.xml以后,要重新启动Tomcat。2、增加虚拟服务目录Path指虚拟目录的名字,docBase指虚拟目录所在的绝对路径。设置完成后,要重新启动Tomcat服务。启动新增加虚拟服务目录中的主页的方法是:。看好,这里没有指出路径名“wxh”。JSP中的文件包含方法形如:!--a.jsp--3、增加虚拟主机2.4JSP的运行原理1、JSP页面首次执行时,服务器引擎首先将该JSP页面转译成Java文件,再将该Java文件编译成字节码文件,通过执行字节码文件响应客户的请求。2、该JSP页面再次选择时,JSP引擎直接执行这个字节码文件响应客户,这也就是JSP比ASP速度快的原因。字节码文件的主要工作:街道,将JSP页面中的不同HTML标记符号交给客户的浏览器显示。其次,执行%%之间的Java片,并把执行结果交给浏览器显示。当多个客户同时请求一个JSP页面时,JSP引擎为每个客户启动一个纯种,而不是一个进程,效率明显提高。JSP引擎为JSP页面生成的Java文件和字节码文件放在安装文件下的\work\Catalina\localhost\_\org\apache\jsp目录下。本节知识要点:JSP页面和服务目录,主配置文件server.xml;配置工具admin模块介绍。通过修改主配置文件和admin模块修改端口;增加虚拟服务目录;增加虚拟主机。JSP的运行原理。字节码文件的主要工作;原文件和生成的Java文件的对照。第二章JSP数据库操作代码大全JSP数据库操作代码大全一、jsp连接Oracle8/8i/9i数据库(用thin模式)testOracle.jsp如下:%@pagecontentType=text/html;charset=gb2312%%@pageimport=java.sql.*%%Stringresult=;//查询结果字符串Stringsql=select*fromtest;//SQL字符串//连接字符串,格式:jdbc:数据库驱动名称:连接模式:@数据库服务器ip:端口号:数据库SIDStringurl=jdbc:oracle:thin:@localhost:1521:orcl;Stringusername=scott;//用户名Stringpassword=tiger;//密码//创建oracle数据库驱动实例Class.forName(oracle.jdbc.driver.OracleDriver).newInstance();//获得与数据库的连接Connectionconn=DriverManager.getConnection(url,username,password);//创建执行语句对象Statementstmt=conn.createStatement();//执行sql语句,返回结果集ResultSetrs=stmt.executeQuery(sql);while(rs.next()){result+=\n第一个字段内容:+rs.getString(1)+BR;}rs.close();//关闭结果集stmt.close();//关闭执行语句对象conn.close();//关闭与数据库的连接%HTMLBODY%=result%/BODY/HTML二、jsp连接SqlServer7.0/2000数据库testSqlServer.jsp如下%@pagecontentType=text/html;charset=gb2312%%@pageimport=java.sql.*%-1-%Stringsql=select*fromtest;//连接字符串,格式:jdbc:公司名称:数据库驱动名称://数据库服务器ip:端口号;DatabaseName=数据库名称Stringurl=jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs;Stringusername=scott;Stringpassword=tiger;Class.forName(com.microsoft.jdbc.sqlserver.SQLServerDriver).newInstance();Connectionconn=DriverManager.getConnection(url,username,password);Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);ResultSetrs=stmt.executeQuery(sql);%HTMLBODY%while(rs.next()){%第一个字段内容为:%=rs.getStrisng(1)%BR%}rs.close();stmt.close();conn.close();%/BODY/HTML三、jsp连接DB2数据库testDB2.jsp如下:%@pagecontentType=text/html;charset=gb2312%%@pageimport=java.sql.*%%Stringsql=select*fromtest;//连接字符串,格式:jdbc:数据库驱动名称://数据库服务器ip:端口号/数据库名称Stringurl=jdbc:db2://localhost:5000/sample;-2-Stringusername=scott;Stringpassword=tiger;Class.forName(com.ibm.db2.jdbc.app.DB2Driver).newInstance();Connectionconn=DriverManager.getConnection(url,username,password);Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);ResultSetrs=stmt.executeQuery(sql);rs.close();stmt.close();conn.close();%四、jsp连接Informix数据库testInformix.jsp如下:%@pagecontentType=text/html;charset=gb2312%%@pageimport=java.sql.*%%Stringsql=select*fromtest;//连接字符串,格式:jdbc:数据库驱动名称://数据库服务器ip:端口号/数据库名称:INFORMIXSERVER=服务器名;user=用户名;password=密码Stringurl=jdbc:informix-sqli://123.45.67.89:1533/testDB:INFORMIXSERVER=myserver;user=testuser;password=testpassword;Class.forName(com.informix.jdbc.IfxDriver).newInstance();Connectionconn=DriverManager.getConnection(url);Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);ResultSetrs=stmt.executeQuery(sql);rs.close();stmt.close();conn.close();%五、jsp连接Sybase数据库testSybase.jsp如下:%@pagecontentType=