奇酷学院-数据采集及其可视化(五)

本文介绍了一种实现小说数据采集查询的方法,包括创建Servlet和JSP文件来处理数据库查询,并展示了如何通过网页进行小说搜索。在过程中遇到了小说名称显示不全和查询按钮失效的问题,这些问题有待后续解决。
摘要由CSDN通过智能技术生成

 

接着说,在创建类前仍分别创建相应的包去区分:

像获取数据库连接的 DBUtils,封装小说类对象的 entity 这些直接用前面的代码即可,我这里也不演示了,关于对数据库操作的 dao 我们需要做下修改,改为查询:

package com.qiku.dao;

import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;

import com.mysql.jdbc.Connection;

import com.qiku.DBUtils.DBUtil;
import com.qiku.entity.NovelInfo;;


public class NovelDao {		
	//获取满足条件的小说列表信息,并封装到 NovelInfo 里面。
	public List<NovelInfo> getNovelList(int novelAdviceNumber) throws Exception{
		//创建一个小说列表
		List<NovelInfo> NovelList = new ArrayList<NovelInfo>();
		
		//获取数据库连接
		//DBUtils 是一个单例类,一般在单例模式下使用 .getIntance();创建对象
		
		Connection connection =DBUtil.getIntance().getConnection();
		
		String sql="select NovelName,NovelWordCount,novelAdviceNumber from novelinfo";
		if(novelAdviceNumber>0){
			sql = sql + " where novelAdviceNumber>= " +novelAdviceNumber ; 
		}
		
		//开始查询,将 SQL 语句绑到可以查询数据的 jdbc 对象上面去:prepareStatement
		//使用 PreparedStatement 是 Statement 的子接口,可以传入带占位符的 SQL 语句,提供了补充占位符变量的方法。
		PreparedStatement ps = connection.prepareStatement(sql);	
		
		//返回满足条件的列表:
		ResultSet rs = ps.executeQuery();
		
		//循环ResultSet 对象,将里面的信息封装到 NovelInfo 对象,并添加到 list 中
		while(rs.next()){
			
			String NovelName = rs.getString("NovelName");
			int NovelWordCount = rs.getInt("NovelWordCount");
			int NovelAdviceNumber_1 = rs.getInt("NovelAdviceNumber");
			NovelInfo novelInfo = new NovelInfo();
			novelInfo.setNovelName(NovelName);
			novelInfo.setNovelWordCount(NovelWordCount);
			novelInfo.setNovelAdviceNumber(NovelAdviceNumber_1);
			NovelList.add(novelInfo);
		}
		
		//按顺序关闭对应资源(释放资源):
		rs.close();
		ps.close();
		connection.close();
		
		return NovelList;	
	}
}

接着我们需要创建一个 Servlet 文件:

命名为 NovelServlet ,然后下一步:

这部分的名字可以改,但改过之后后面某个部分也需要保持一致。然后下一步,完成就行了。创好文件如下&#x

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值