文档详情

Web程序设计jsp课件-JSP中使用数据库3.ppt

发布:2017-07-24约2.88千字共27页下载文档
文本预览下载声明
主要内容 连接池 数据源 分页显示 存取二进制文件 连接池(Connection Pool) 引入连接池的原因 传统模式 在主程序中建立数据库连接 进行SQL操作,取出数据 断开数据连接 缺点 系统开销大,数据库连接的操作是系统中消耗资源最大的操作之一 必须管理每个连接,确保其正确关闭,否则导致数据库系统中的内存泄漏 连接池(续) 原理:预先建立一些连接,放置于内存对象中以备使用 优点 节省内存 提高程序效率 数据源配置 配置server.xml文件: Resource的属性 server.xml 程序中访问数据 JNDI(Java Naming and Directory Interface) Java的命名和目录接口,是Java定义的一种标准注册机制 JNDI可简单理解为将对象和名字绑定的技术 程序中访问数据源 javax.naming.Context提供了查找JNDI Resource的接口 Context ctx = new InitialContext(); DataSource ds = (DataSource)ctx.lookup(“java:comp/env/DSUser”); Connection con = ds.getConnection(); 示例2-1 示例2-2 server.xml中配置数据源 DSConnect.java:JNDI查找数据源 User.java:与User表对应的JavaBean UserDAO.java:User表的数据访问对象,采用连接池方式获取数据库连接 addUser2.htm:录入用户信息界面 jdbc2.jsp:用户信息插入User表中,并将User表中的所有数据全部查询出来 区别 获得MySQL的JDBC Driver Class.forName(“com.mysql.jdbc.Driver”); Tomcat5.5以下版本 Tomcat5.5以下版本 配置web.xml文件 分页显示2-1 两种方案 一次查询,把所有的记录查询出来,利用游标在每页显示指定的资源 多次查询,每次只获得本页数据 当数据量很大时,一次性获取会占用大量的内存资源,系统性能降低,通常采用第二种方法 分页显示2-2 关于获取部分记录的sql MySQL:从n+1开始取,取m条记录 select ? * ? from ? 表 ? limit ? n,m; select * from tbUser limit 10,5; select * from tbUser order by name limit 10,5; SQLServer:取前n条记录 select top n * ? from ? 表; select top 10 * ? from tbUser order by name; 获取当前页记录 示例 Pagination.java UserDAO.java 示例 userpage.jsp pageman.jsp 实验 实现网上书店 测试连接池 测试分页显示 Tomcat-admin Tomcat-manager tomcat 下载admin模块 拷贝文件到相应tomcat安装目录下 Lib commons-logging-1.1.jar commons-logging-adapters-1.1.jar commons-logging-api-1.1.jar commons-modeler-2.0.1.jar log4j-1.2.15.jar tomcat-users.xml user username=admin password=tomcat roles=admin,manager/ ACCP V4.0 * 第十一节 JSP中使用数据库3 Connection1 Connection2 Connectionn … DB连接池 MySQL 数据源 JSP javax.sql.DataSource JNDI 指定Resource所属的Java类名 type 指定Resource的Manager:Container和Application auth 指定Resource的JNDI名字 name 描述 属性 指定连接数据库的URL url 指定连接数据库的JDBC驱动程序 driverClassName 指定连接数据库的口令 password 指定数据库的用户名 username 指定数据库连接池中的数据库连接处于空闲状态的最长时间 maxWait 指定数据库连接池中处于空闲状态的数据库连接的最大数目 maxIdle 指定数据库连接池中处于活动状态的数据库连接的最大数目 maxActive 指定生成DataSource的factory的类名 factory 数据库驱动程序必须放在t
显示全部
相似文档