<%@ page contentType="text/xml;charset=gbk"%><%@ page import="org.apache.commons.dbcp.*" %><%@ page import="java.io.*" %><%@ page import="java.util.*" %><%@ page import="java.util.regex.*" %><%@ page import="java.sql.*" %><%
PrintWriter pw = response.getWriter();
pw.write("<?xml version=\"1.0\" encoding=\"gbk\"?>");
String query = String.format("select * from qidi where id>=%s order by id limit %s", id_start, count);
System.err.println(query);
System.err.println("conn!=null " + conn != null);
conn = getConnection();
pw.write("<crawled_news>");
if (conn != null) {
try {
ResultSet rs = conn.prepareStatement(query).executeQuery();
if (rs == null) {
return;
}
while (rs.next()) {
}
} catch (Exception e) {
e.printStackTrace();
} finally {
if(conn != null){
try{
conn.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
}
pw.write("</crawled_news>");
pw.flush();
%>
<%!
public static Connection conn = getConnection();
public static BasicDataSource bds = getDataSource();
public static BasicDataSource getDataSource() {
BasicDataSource ds = new BasicDataSource();
ds.setDriverClassName("com.mysql.jdbc.Driver");
ds.setUrl("jdbc:mysql://sp4:3306/etc?user=user&password=psw&characterEncoding=gbk&autoReconnect=true");
return ds;
}
//关闭数据源
public static void shutdownDataSource(BasicDataSource ds) throws SQLException {
ds.close();
}
public static Connection getConnection() {
if(bds == null){
bds = getDataSource() ;
}
Connection con = null;
try{
con = bds.getConnection();
}catch(Exception e){
e.printStackTrace();
}
return con;
}
%>
分享到:
相关推荐
在实际应用中,为了提高性能和管理数据库连接,通常使用连接池,如Apache DBCP、C3P0或HikariCP。连接池预先创建并维护一定数量的数据库连接,应用程序需要时可以从池中获取,用完后归还。 9. **JNDI(Java Naming...
在本项目小例中,我们将探讨JSP的一些经典应用技术,包括批量删除操作、数据库连接以及实现购物车功能。 **一、批量删除操作** 在Web应用中,批量删除是一项常见的功能,特别是在数据管理界面。在JSP中,通常会通过...
本资源“jsp实用编程百例.rar”包含了丰富的JSP编程实例,旨在帮助开发者提升JSP技能,解决实际开发中遇到的问题。 1. **JSP基础** - JSP语法:理解`<% %>`,`<%= %>`,`<jsp:scriptlet>`,`<jsp:expression>`,`...
而JDBC作为一个Java API,由Java语言编写的类和接口组成,允许Java应用使用纯Java代码与数据库进行交互。JDBC代码能够跨平台自动安装,并且是可移植和安全的,这一特性与ODBC相比,对Java开发者更为友好和方便。 在...
总的来说,JSP中的数据库连接涉及JDBC API的使用、数据库驱动的加载、连接的创建与管理,以及异常处理等多个方面。理解并熟练掌握这些知识对于一个JSP开发者来说至关重要,因为它们是构建功能完善的Web应用的基础。...
3. **与数据库的交互**:在本例中,JSP程序连接到Oracle数据库,可能使用了Java Database Connectivity(JDBC)API。JDBC提供了连接、执行SQL查询、处理结果集等功能。开发者通常需要编写SQL语句来查询或更新数据库...
数据库设计包括创建一个图片管理表,本例中有四个属性:`id`(主键,唯一标识图片)、`title`(图片标题)、`filename`(图片原始文件名)、`data`(图片二进制数据)。`id`通常设置为自动增长,确保唯一性;`title...
在JSP中使用数据库通常涉及建立数据库连接,执行SQL查询,并将结果传递给JSP页面显示。这可以通过JDBC(Java Database Connectivity)实现,JSP内建对象`connection`和`statement`可用于创建数据库连接和执行SQL语句...
连接池是Java Web开发中的一个重要概念,它在数据库操作中扮演着提高性能和效率的角色。本篇文章将深入探讨连接池的基本工作原理、关键问题以及如何进行配置。 **一、连接池基本工作原理** 1. **资源复用**:在...
以HikariCP为例,配置连接池并在JSP应用中使用如下: 1. 添加依赖(如果是Maven项目): ```xml <groupId>com.zaxxer</groupId> <artifactId>HikariCP 版本号 ``` 2. 创建配置文件(如application.properties...
在本例中,查询语句是`SELECT * FROM students`,意味着选取"students"表中的所有列。`ResultSet`对象`rs`存储了查询结果。接下来,代码遍历结果集,将每条记录的字段值插入到HTML表格中。注意,`rs.getString()`和`...
在本文中,我们将深入探讨一个名为“GlobalEC_Enterprise_SQL_1.1”的JSP项目,分析其源码结构和功能,为理解JSP编程提供实际案例。 首先,"GlobalEC_Enterprise_SQL_1.1.exe"可能是这个项目的安装程序,它可能包含...
在JSP中使用连接池,可以将数据库操作封装在JavaBean或Servlet中,然后在JSP页面中调用,这样既保持了页面的清晰性,又实现了数据库连接的高效管理。 在实例86jspJDBCPool中,我们可能会看到以下关键代码片段: - ...
4. **实体类(Entity)**:在本例中,我们可以创建一个`Student`类,表示学生信息,包括姓名、学号等属性,以及对应的getter和setter方法。 5. **DAO(Data Access Object)层**:DAO接口和其实现类负责执行SQL语句...
以Apache DBCP为例,我们需要在项目的资源配置文件(如`web.xml`)中定义数据源: ```xml <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> ...
在实际开发中,为了提高代码的可维护性和可读性,通常会使用连接池来管理数据库连接,如Apache的DBCP或C3P0,这样可以更有效地管理和复用数据库连接,提高应用性能。 在Java Web项目中,如【例10.1】所示,可以在...
本文将深入探讨如何在Java中实现数据库连接,包括直接使用Java类、利用JSP和JavaBean以及使用Tomcat连接池三种方法。 首先,我们来看直接使用Java类进行数据库连接的方式。这通常涉及到Java的JDBC(Java Database ...
在本例中,使用的是jtds-0.7.1.jar,这是一个开源的JDBC驱动,专为Microsoft SQL Server和Sybase Adaptive Server设计。 5. **JDBC数据源(DataSource)**:在Tomcat中,数据源是一种管理数据库连接的资源。它允许...
本文将详细讲解如何在Tomcat6中配置数据库连接池,并以`index.jsp`为例展示如何在Web应用中使用这些配置。首先,我们需要了解数据库连接池的基本概念和常用的连接池实现,如Apache的DBCP或C3P0。这里我们假设使用的...