使用JSP开发Web应用系统.doc_第1页
使用JSP开发Web应用系统.doc_第2页
使用JSP开发Web应用系统.doc_第3页
使用JSP开发Web应用系统.doc_第4页
使用JSP开发Web应用系统.doc_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

使用JSP开发Web应用系统第一章 动态网站开发基础1. 开发Jsp动态网站的步骤(1)创建一个Web项目(2)设计Web项目的目录结构(3)编写Web项目的代码(4)部署Web项目(5)运行Web项目2. Web程序的调试与排错 (1)未启动Tomcat服务(2)未部署Web应用(3)URL输入错误(4)目录不能被引用第二章 用集合存储对象1. 集合框架(java.util)1.1接口Collection是最基本的集合接口,一个Collection代表一组元素。List接口继承Collection接口。List是有序集合,允许有相同的元素。使用List能够精确的控制每个元素的插入位置。用户能够使用索引(元素在List中的位置,类似与数组下标)来访问List中的元素,这类似与数组。Map提供key(键)到value(值)的映射。一个Map中不能包含相同的key,每个key只能映射一个value.1.2 具体类实现List接口的常用类ArrayList和LinkedList。他们都可以容纳所有的类型的对象,包括null,并且都保证元素的存储顺序。ArrayList实现了可变大小的数组。它的优点在于遍历元素和随机访问元素的效率比较高。LinkList提供了额外的addFist(),addLast(),getFist(),getLast()等方法。可以在LinkedList的首部或尾部进行插入或删除操作。这些方法可以使得LinkList可被用作堆(stack)或者队列(queue)。1.3算法Java集合框架提供了类Collections,他提供了对集合进行排序等多种运算方法实现。大家在使用Collections的时候可以查阅JDK帮准文档。2. List接口和ArrayList类ArrayList的常用方法返回类型方法说明booleanAdd(object o)在列表的尾部顺序添加元素,起始索引位置从零开始intSize()返回列表中的元素个数objectGet(int index)返回指定索引位置处的元素注意:取出的元素是Object类型,使用前需要进行强制类型转换voidAdd(int index,object o)在指定的索引位置添加元素注意:在索引位置必须介于0和列表中元素个数之间BooleanContains(object o)判断列表中是否存在指定元素BooleanRemove(object o)从列表中删除元素3. List接口和LinkedList类LinkedList的常用方法返回类型方法说明VoidaddFist(object o)在列表的首部加入元素VoidaddLast(object o)在列表的尾部加入元素objectgetFist()返回列表的第一个元素objectgetLast()返回列表的中的最后一个元素objectremoveFist()删除并返回列表中的第一个元素objectremoveLast()删除并返回列表中的最后一个元素4. Map接口和HashMap类HashMap的常用方法返回类型方法说明ObjectPut()以“键-值对”的方式进行存储注意:键是唯一的,值可以重复。如果试图添加重复的键,那么后加如的键-值对将替换掉原先的键-值对Setkeyset()返回键的集合CollectionValues()返回值的集合BooleancontainKey(Object key)如果存在由指定的键映射的“键-值对”,返回trueObjectGet(Object key)根据键返回相关的值,如果不存在指定的键,返回nullObjectRemove(Object key)删除由指定的键映射的“键-值对”第三章 访问数据库1. JDBC简介1.1 JDBC的工作原理1.2 JDBC API(1)DriverManager类:依据数据库的不同,管理JDBC驱动。(2)Connection接口:负责连接数据库并担任传递数据任务。(3)Statement接口:由Connection产生,负责执行SQL语句。(4)ResultSet接口:负责保护Statement执行后所产生的查询结果。1.3 JDBC程序的代码模板(1)把JDBC驱动类装载入Java虚拟机中。 Class.forName(“JDBC驱动类的名称”);(2)加载驱动,并与数据库建立连接。 Connection conn = DriverManager.getConnection(数据连接字符串,数据库用户名,密码);(3)发送SQL语句并得到结果集。 Statement stmt=conn.createStatement()ResultSet res = stmt.executeQuery(select a,b,c from table);(4)处理结果。While(res.next() Int x =res.getInt(“a”);String s= res.getString(“b”);Float f = res.getFloat(“c”);2. JDBC驱动(1)JDBC-ODBC桥接 Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); Connection conn = DriverManager.getConnection(jdbc:odbc:news,hafei,513810);(2)纯Java驱动方式 Class.forName(com.microsoft.sqlserver.jdbc.SQLServerDriver); Connection con = DriverManager.getConnection(jdbc:sqlserver:/localhost:1433;databaseName=news,hafei,513810);3. JDBC应用3.1 Statement语句 (1)ResultSet executeQuery(String sql):可以执行SQL查询并获取到ResultSet对象。 (2)int executeUpdate(String sql):可执行插入,删除,更新等操作,返回值是执行该操作所影响的行数。 (3)boolean execute(String sql):这是一个最为一般的执行方法,可以执行任意SQL语句,然后获得一个布尔值,表示是否返回ResultSet。 3.2 PreparedStatement语句 PreparedStatement借口继承自Stament接口,PreparedStatement比普通的Statement对象使用起来更加灵活,更有效率。import java.sql.*;public class ConnectionManager private static final String DRIVER_CLASS=com.microsoft.sqlserver.jdbc.SQLServerDriver;private static final String DATABASE_URL=jdbc:sqlserver:/localhost:1433;databaseName=news;private static final String DRIVER_USER=hafei;private static final String DRIVER_PASSWORD=513810;public static Connection getConnection()Connection dbConnection = null;tryClass.forName(DRIVER_CLASS);dbConnection = DriverManager.getConnection(DATABASE_URL,DRIVER_USER,DRIVER_PASSWORD);catch(Exception ex)ex.printStackTrace();return dbConnection;public static void closeConnection(Connection dbConnection)tryif(dbConnection!=null &(!dbConnection.isClosed()dbConnection.close();catch(SQLException ex)ex.printStackTrace();public static void closeResultSet(ResultSet res)tryif(res !=null)res.close();res=null;catch(SQLException ex)ex.printStackTrace();public static void closeStatement(PreparedStatement pStatement)tryif(pStatement !=null)pStatement.close();pStatement=null;catch(SQLException ex)ex.printStackTrace(); (1)使用PreparedStatement插入数据import java.sql.*;import java.text.DateFormat;import java.text.SimpleDateFormat;import java.util.Date;public class NewsFirstTitleDB2 /* * param args */public static void main(String args) Connection con =null; PreparedStatement pStatement = null; try SimpleDateFormat hmFromat = new SimpleDateFormat(yyyy-MM-dd hh:mm:ss); con = ConnectionManager.getConnection(); String sql =insert into FirstLevelTitle values(?,?,?,?); pStatement = con.prepareStatement(sql); int i=3; pStatement.setInt(1,3); pStatement.setString(2, 军事); pStatement.setString(3, 管理员);pStatement.setString(4,hmFromat.format(new Date();int row=pStatement.executeUpdate();System.out.println(成功添加+row+行数据!); catch(SQLException sqlex) sqlex.printStackTrace(); finally ConnectionManager.closeStatement(pStatement); ConnectionManager.closeConnection(con); (2)使用PreparedStatement删除数据import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.SQLException;import java.text.SimpleDateFormat;import java.util.Date;public class NewsFirstTitleDB3 /* * param args */public static void main(String args) Connection con =null; PreparedStatement pStatement = null; try con = ConnectionManager.getConnection(); String sql =delete from FirstLevelTitle where TitleName =?; pStatement = con.prepareStatement(sql); pStatement.setString(1, 军事); int row=pStatement.executeUpdate(); System.out.println(成功删除+row+行数据!); catch(SQLException sqlex) sqlex.printStackTrace(); finally ConnectionManager.closeStatement(pStatement); ConnectionManager.closeConnection(con); (3)使用PreparedStatement更新数据import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.SQLException;public class NewsFirstTitleDB4 /* * param args */public static void main(String args) Connection con =null; PreparedStatement pStatement = null; try con = ConnectionManager.getConnection(); String sql =update FirstLevelTitle set Creator =? where Id =?; pStatement = con.prepareStatement(sql); pStatement.setString(1, 编辑); pStatement.setInt(2,3); int row=pStatement.executeUpdate(); System.out.println(成功更新+row+行数据!); catch(SQLException sqlex) sqlex.printStackTrace(); finally ConnectionManager.closeStatement(pStatement); ConnectionManager.closeConnection(con); (4)使用PreparedStatement查询数据import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;public class NewsFirstTitleDB5 /* * param args */public static void main(String args) int id = 0;Connection con =null; PreparedStatement pStatement = null; ResultSet resSet = null; try con = ConnectionManager.getConnection(); String sql =select max(id) from FirstLevelTitle; pStatement = con.prepareStatement(sql); resSet = pStatement.executeQuery(); if(resSet.next() id =resSet.getInt(1); catch(SQLException sqlex) sqlex.printStackTrace(); finally ConnectionManager.closeStatement(pStatement); ConnectionManager.closeConnection(con); System.out.println(新闻的标题Id为+(id+1);import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.util.ArrayList;import java.util.Date;import java.util.List;public class NewsFirstTitleDB6 /* * param args */public static void main(String args) List allTitle = getAll(); System.out.println(新闻的标题总数为+allTitle.size();public static List getAll()ArrayList list = new ArrayList();Connection con =null; PreparedStatement pStatement = null; ResultSet resSet = null; try con = ConnectionManager.getConnection(); String sql =select * from FirstLevelTitle order by CreateTime desc; pStatement = con.prepareStatement(sql); resSet = pStatement.executeQuery(); while(resSet.next() int id =resSet.getInt(id); String title =resSet.getString(TitleName); String creator =resSet.getString(Creator); Date time = resSet.getDate(CreateTime); FirstLevelTitle fTitle = new FirstLevelTitle(id,title,creator,time); list.add(fTitle); catch(SQLException sqlex) sqlex.printStackTrace(); finally ConnectionManager.closeResultSet(resSet); ConnectionManager.closeStatement(pStatement); ConnectionManager.closeConnection(con); return list;第四章 Jsp简介1. Jsp简介(1)指令 Jsp指令一般以“”结束。(2)小脚本 Jsp小脚本一般以“”结束。(3)表达式 基本语法是:(4)注释 (5)静态内容 静态内容是Jsap面页中的静态文本,他基本上是HTML文本,与java和JSP语法无关2. 创建Jsp页面(1)设计目录结构(2)创建JSP页面(注意文件元素连接引用位置)(3)中文乱码问题(4)设置欢迎页面3. Jsp执行过程(1)翻译(translation)阶段。(2)编译(compilation)阶段(3)执行阶段4. jsp运行环境Web容器(如Tomacat)提供JSP引擎,负责JSP文件的执行,提供JSP的运行环境。第五章 Jsp指令和脚本元素1. page指令page指令的常用属性属性描述languageimportcontentType2. Jsp脚本元素表达式(expression),小脚本(scriptlet),声明(declaration)统称为java脚本元素3. Jsp声明在编写Jsp程序时,若需要为Java脚本定义方法,就可以使用JSP声明。JSP声明的基本语法是:第六章 使用Jsp处理客户端请求1. HTML表单2. 处理表单请求3. Jsp内置对象(1)Jsp内置对象out Out对象用于向客户输出数据,out的常用方法是pr

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论