JSP动态Web技术实例教程代码教案课件第四章 JSP数库访问技术.ppt

JSP动态Web技术实例教程代码教案课件第四章 JSP数库访问技术.ppt

此“教育”领域文档为创作者个人分享资料,不作为权威性指导和指引,仅供参考
  1. 1、本文档共29页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
JSP动态Web技术实例教程代码教案课件第四章 JSP数库访问技术

学习目标 掌握JDBC连接数据库技术 掌握在Web页面实现数据查询、修改、增加、删除技术 掌握数据分页显示 了解网站后台的开发和管理 学生信息系统登录注册模块 登录注册模块分析 预备知识——JDBC JDBC(Java DataBase Connectivity): JDBC是执行SQL语句的API:是第一个标准化地把关系数据库和Java程序集成到一起的尝试; 与一个数据库建立连接; 向数据库发送SQL语句; 处理数据库返回的结果。 加载桥接器驱动程序 Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”); Class是包java.lang中的一个类,该类调用静态方法forName就可以建立桥接器。 注意:处理异常。 try{ Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”); catch(ClassNotFoundException e) { } 连接到数据库 使用java.sql包中的Connection类声明一个对象; 使用DriverManager类调用静态方法getConnection创建这个连接对象 Connection con=DriverManager.getConnection(“jdbc:odbc:数据源名字”,”login name”,”password”); 向数据库发送SQL语句 用Statement声明一个SQL语句对象; 调用连接数据库的对象con调用方法createStartment()创建SQL对象; 处理查询结果 查询对象:ResultSet类声明的对象; SQL语句对象:调用方法对表查询和修改; ResultSet rs=sql.executeQuery(“select * from 表名”); 多行数据显示方法:ResultSet对象一次只能看到一个数据行,使用next()方法移到下一数据行: rs.next() 数据库连接过程 建立数据库stuinfo,建立数据表user_info 建立数据源:banji 步骤:控制面板——ODBC数据源——系统(用户)DSN——添加——不同数据库驱动程序——完成——数据源名——选择数据库 装载驱动程序; 连接数据库; 创建Statement接口对象; 处理结果集 模块实现 设计首页:index.jsp 注意: form的action属性“login_check.jsp”; 用户名文本框:name属性“name” 密码文本框:name属性“password” 验证登录:“login_check.jsp” 用户注册页面:register.jsp 模块分析 插入文件——%@include file=要插入的文件名% 课堂实训 学生信息浏览模块 问题分析——限制非法用户登录 信息查询实现 数据库设计 功能实现“main.jsp“ 设计查询页面 编程 程序分析 模糊查询用——用SQL语句操作符like进行模式般配,使用“%”代替一个或多个字符,用一个下划线“_”代替一个字符 分页显示算法思想 原理解析: 假设总记录为m,每页显示数量是n,那么总页数的计算公式是: 如果m除以n的余数是n,总页数等于m除以n的商加1; 如果m除以n的余数等于0,总页数等于m除以n的商。 即:总的页数=(m%n)==0?(m/n)(m/n+1); 如果准备显示第p页的内容,应当把游标移动到第(p-1)*n+1条记录处。 预备知识——游动查询 Statement statement=con.createStatement(int type,int concurrency); type的取值决定滚动方式,取值还可以是: TYPE_SCROLL_SENSITIVE 指针能够向前或向后自由移动,其他ResultSet对象变动指针时,会影响指针的位置; TYPE_SCROLL_INSENSITIVE 指针能够向前或向后自由移动,其他ResultSet对象变动指针时,不会影响指针的位置。 Concurrency取值决定是否可以用数据集更新数据库 CONCUR_READ_ONLY: 不能用结果集更新数据库中的表; CONCUR_UPDATEABLE: ResultSet对象中的数据可以读也可以修改,不能用结果集更新数据库中的表; 程序分析 清除空格——trim(String)方法 课堂实训 后台管理模块 程序分析 信息添加—— String condition=insert into Student values(+number+,+

文档评论(0)

130****9768 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档