/*
* Generated by the Jasper component of Apache Tomcat
* Version: Apache Tomcat/7.0.47
* Generated at: 2019-11-01 07:39:17 UTC
* Note: The last modified time of this file was set to
* the last modified time of the source file after
* generation to assist with modification tracking.
*/
package org.apache.jsp.WEB_002dINF.page.novel;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.jsp.*;
public final class novel_005fchapter_jsp extends org.apache.jasper.runtime.HttpJspBase
implements org.apache.jasper.runtime.JspSourceDependent {
private static final javax.servlet.jsp.JspFactory _jspxFactory =
javax.servlet.jsp.JspFactory.getDefaultFactory();
private static java.util.Map<java.lang.String,java.lang.Long> _jspx_dependants;
private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005ffmt_005fformatDate_0026_005fvalue_005ftype_005fnobody;
private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005fif_0026_005ftest;
private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005fc_005fforEach_0026_005fvar_005fitems;
private javax.el.ExpressionFactory _el_expressionfactory;
private org.apache.tomcat.InstanceManager _jsp_instancemanager;
public java.util.Map<java.lang.String,java.lang.Long> getDependants() {
return _jspx_dependants;
}
public void _jspInit() {
_005fjspx_005ftagPool_005ffmt_005fformatDate_0026_005fvalue_005ftype_005fnobody = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig());
_005fjspx_005ftagPool_005fc_005fif_0026_005ftest = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig());
_005fjspx_005ftagPool_005fc_005fforEach_0026_005fvar_005fitems = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig());
_el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory();
_jsp_instancemanager = org.apache.jasper.runtime.InstanceManagerFactory.getInstanceManager(getServletConfig());
}
public void _jspDestroy() {
_005fjspx_005ftagPool_005ffmt_005fformatDate_0026_005fvalue_005ftype_005fnobody.release();
_005fjspx_005ftagPool_005fc_005fif_0026_005ftest.release();
_005fjspx_005ftagPool_005fc_005fforEach_0026_005fvar_005fitems.release();
}
public void _jspService(final javax.servlet.http.HttpServletRequest request, final javax.servlet.http.HttpServletResponse response)
throws java.io.IOException, javax.servlet.ServletException {
final javax.servlet.jsp.PageContext pageContext;
javax.servlet.http.HttpSession session = null;
final javax.servlet.ServletContext application;
final javax.servlet.ServletConfig config;
javax.servlet.jsp.JspWriter out = null;
final java.lang.Object page = this;
javax.servlet.jsp.JspWriter _jspx_out = null;
javax.servlet.jsp.PageContext _jspx_page_context = null;
try {
response.setContentType("text/html; charset=UTF-8");
pageContext = _jspxFactory.getPageContext(this, request, response,
null, true, 8192, true);
_jspx_page_context = pageContext;
application = pageContext.getServletContext();
config = pageContext.getServletConfig();
session = pageContext.getSession();
out = pageContext.getOut();
_jspx_out = out;
out.write("\r\n");
out.write("\r\n");
out.write("\r\n");
out.write("<!DOCTYPE html>\r\n");
out.write("<html>\r\n");
out.write("<head>\r\n");
out.write("<title>");
out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${novel.name }", java.lang.String.class, (javax.servlet.jsp.PageContext)_jspx_page_context, null, false));
out.write("章节列表-清风小说网</title>\r\n");
out.write("<meta charset=\"utf-8\" />\r\n");
out.write("<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\r\n");
out.write("<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\r\n");
out.write("<script src=\"");
out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${pageContext.request.contextPath }", java.lang.String.class, (javax.servlet.jsp.PageContext)_jspx_page_context, null, false));
out.write("/js/jquery-3.3.1.min.js\"></script>\r\n");
out.write("<script src=\"");
out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${pageContext.request.contextPath }", java.lang.String.class, (javax.servlet.jsp.PageContext)_jspx_page_context, null, false));
out.write("/js/bootstrap.min.js\"></script>\r\n");
out.write("<link rel=\"stylesheet\"\r\n");
out.write("\thref=\"");
out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${pageContext.request.contextPath }", java.lang.String.class, (javax.servlet.jsp.PageContext)_jspx_page_context, null, false));
out.write("/css/bootstrap.min.css\">\r\n");
out.write("<link rel=\"stylesheet\" type=\"text/css\"\r\n");
out.write("\thref=\"");
out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${pageContext.request.contextPath }", java.lang.String.class, (javax.servlet.jsp.PageContext)_jspx_page_context, null, false));
out.write("/css/header.css\">\r\n");
out.write("<link rel=\"stylesheet\" type=\"text/css\"\r\n");
out.write("\thref=\"");
out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${pageContext.request.contextPath }", java.lang.String.class, (javax.servlet.jsp.PageContext)_jspx_page_context, null, false));
out.write("/css/footer.css\" />\r\n");
out.write("<link rel=\"stylesheet\" type=\"text/css\"\r\n");
out.write("\thref=\"");
out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${pageContext.request.contextPath }", java.lang.String.class, (javax.servlet.jsp.PageContext)_jspx_page_context, null, false));
out.write("/css/novel_chapter.css\" />\r\n");
out.write("<style>\r\n");
out.write("</style>\r\n");
out.write("</head>\r\n");
out.write("<body>\r\n");
out.write("\t<div class=\"container\">\r\n");
out.write("\t\t");
org.apache.jasper.runtime.JspRuntimeLibrary.include(request, response, "../public/novel_header_nav.jsp", out, false);
out.write("\r\n");
out.write("\t\t<div class=\"book\">\r\n");
out.write("\t\t\t<div class=\"path\">\r\n");
out.write("\t\t\t\t<div class=\"p\">\r\n");
out.write("\t\t\t\t\t<a href=\"/\">清风小说网</a> > ");
out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${novel.name }", java.lang.String.class, (javax.servlet.jsp.PageContext)_jspx_page_context, null, false));
out.write("\r\n");
out.write("\t\t\t\t</div>\r\n");
out.write("\t\t\t</div>\r\n");
out.write("\t\t\t<div class=\"info clearfix\">\r\n");
out.write("\t\t\t\t<div class=\"cover\">\r\n");
out.write("\t\t\t\t\t<img src=\"");
out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${novel.cover }", java.lang.String.class, (javax.servlet.jsp.PageContext)_jspx_page_context, null, false));
out.write("\" alt=\"");
out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${novel.name }", java.lang.String.class, (javax.servlet.jsp.PageContext)_jspx_page_context, null, false));
out.write("\">\r\n");
out.write("\t\t\t\t</div>\r\n");
out.write("\t\t\t\t<div class=\"small\">\r\n");
out.write("\t\t\t\t\t<h4>");
out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate("${novel.name }", java.lang.String.class, (javax.servlet.jsp.PageCo
基于SSM+maven+httpClient+jsoup实现小说网站项目.zip
需积分: 0 70 浏览量
更新于2023-08-29
收藏 890KB ZIP 举报
在这个基于SSM+maven+httpClient+jsoup实现的小说网站项目中,我们主要涉及了四个核心的技术栈,分别是Spring、SpringMVC、MyBatis(SSM)以及HTTP客户端库httpClient和网页抓取库jsoup。下面将详细介绍这些技术及其在项目中的应用。
1. **Spring**:Spring 是一个开源的 Java 应用框架,它提供了全面的编程和配置模型,以简化企业级Java应用的开发。在本项目中,Spring 负责管理对象的生命周期和依赖注入,提供事务管理、AOP(面向切面编程)等功能,是整个项目的基石。
2. **SpringMVC**:SpringMVC 是 Spring 框架的一部分,用于构建 Web 应用。它通过模型-视图-控制器(MVC)架构模式,解耦了业务逻辑、数据处理和用户界面。在小说网站项目中,SpringMVC 处理用户的HTTP请求,调用对应的业务服务,并将结果返回给前端。
3. **MyBatis**:MyBatis 是一个持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。在本项目中,MyBatis 被用来连接数据库,执行SQL查询和更新,实现数据的增删改查操作。
4. **maven**:Maven 是一个项目管理和综合工具,它帮助开发者管理项目构建、依赖关系和文档生成。在本项目中,maven 用于管理项目的依赖,如Spring、SpringMVC、MyBatis等库,以及构建流程,使得团队协作和项目构建更加规范和高效。
5. **httpClient**:Apache httpClient 是一个Java HTTP客户端应用编程接口,用于发送HTTP请求并处理响应。在小说网站项目中,可能用于从其他网站抓取小说内容,例如从源站获取章节信息或者下载图片资源。
6. **jsoup**:jsoup 是一个用于处理实际世界HTML的Java库,提供了非常方便的API用于提取和操作数据,如选择DOM元素、解析HTML、修改DOM结构等。在这个项目中,jsoup 可能被用来解析网页内容,抓取小说章节标题、内容等信息,以便于构建和更新数据库。
在实际开发过程中,开发者首先会配置SSM框架,包括Spring的bean配置、SpringMVC的DispatcherServlet配置和MyBatis的SqlSessionFactory配置。接着,定义Service层接口和实现,用于处理业务逻辑,比如查找小说、获取章节列表、获取章节内容等。在DAO层,使用MyBatis的XML映射文件或注解来编写SQL语句。对于网页抓取部分,会创建一个HttpClient实例,构造HTTP请求,然后使用jsoup解析返回的HTML页面,提取所需信息。
在项目结构方面,`source`目录可能包含了项目的源代码,包括Java源文件、配置文件、资源文件等。其中,Java源文件可能按照Maven的标准目录结构组织,如`src/main/java`下按包结构存放各层的类,`src/main/resources`存放配置文件。项目构建后,maven会自动处理依赖关系,编译源代码,生成相应的jar或war包,部署到服务器上,实现小说网站的运行。
一只会写程序的猫
- 粉丝: 1w+
- 资源: 866
最新资源
- 基于MATLAB的500kV LCC-HVDC 输电仿真 两侧交流系统电压为345kV,交流侧分别设计了相应的滤波器,直流电压等级为500kV,直流电流为2KA,直流功率为1000MVA,下面依次为整
- matlab simulink车辆防抱死制动系统ABS建模仿真 单轮 双轮
- 基于hadoop的新闻推荐系统 用户协同过滤推荐 基于大数据的新闻推荐系统 推荐原理:以用户对新闻的喜欢和收藏行为作为基础数据集,应用hadoop通过mapreduce程序进行协同过滤计算,得出用户对
- C#上位机模板程序,使用的是台达AS228主机PLC,功能齐全,自动运行页面、切页面、手动调试、参数设置页面都有
- TCR+fc型svc无功补偿仿真模型有详细资料
- 基于光风储能vsg无缝切(预同步)控制策略 前0.3秒风光储+直流负载独立运行 0.3s时,断开直流负载和直流源,风光储+VSG+交流负载合并运行 0.6s时,VSG预同步模块并网 1.3s时,改变t
- 自动驾驶图像全景分隔,基于HRnetSegmentation从训练工程到tensorRT工程部署Demo闭环一套,包含训练工程及部署工程,和环境的配置说明,已在实际项目中使用 大厂自动驾驶工程师沉淀
- MATLAB代码 风光场景生成 场景削减 概率距离削减法 蒙特卡洛法 MATLAB:基于概率距离快速削减法的风光场景生成与削减方法 参考文档:《含风光水的电厂与配电公司协调调度模型》完全复现场景削减
- 基于mppt的光伏svpwm逆变并网 通过分析光伏电池的输出特性与外部环境的关系搭建出仿真模型,引入了变步长扰动观察法实现的最大功率追踪 MPPT 控制算法 并设计三相逆变器SVPWM双闭环控制策略
- 伺服电机代码 直线电机代码 FPGA架构伺服代码 软件硬件方案, 一个fpga控制多个电机,目前一个fpga最多控制6伺服驱动,所有内容均有fpga完成,控制曲线(T曲线),位置环,速度环,电流环,低
- 三相逆变器重复控制 在simlink中搭建了逆变器的重复控制模型,滤波器环节采用了陷波器与二阶低通滤波器 逆变器输出电压的THD仅仅只有0.52% 整个仿真全部离散化,采用离散解析器,控制与采样
- 锁相环 采用simlink仿真嵌C语言实现锁相环,整个仿真没有一个模块,只有C需要写的锁相环函数 仿真结果如图所示,基于双二阶广义积分器的锁相环成功锁得电网相位 对C语言写的代码做了详尽的注释
- PWM整流器仿真 在simulink中搭建了PWM整流器,采用电压电流双闭环控制,实现了网侧电压与电流同相位,单位功率因数运行 采用基于双二阶广义积分器的锁相环,锁得电网相位 整个仿真全部离散化
- matlab代码:计及条件风险价值的电-气综合能源系统能量-备用分布鲁棒优化 关键词:wasserstein距离 CVAR条件风险价值 分布鲁棒优化 电-气综合能源 能量-备用调度 参考文档Ene
- 基于DSTATCOM无功补偿的风电并网模型 Matlab simulink 质量过硬 仿真简介: 1、2个风电:一个基于双馈风机DFIG、一个基于感应风机 2、仿真总时长30s,10s时,感应风机
- 考虑储能削峰填谷的含DG配电网可靠性评估 1、基于序贯蒙特卡洛的配电网可靠性评估; 2、基于序贯蒙特卡洛的含DG配电网可靠性评估; 3、基于区间迭代法优化储能出力进行削峰填谷; 4、基于上述内容进一