简单电子资源下载网站实现

1、引言

        前段时间做了一个简单的电子资源下载网站,希望能通过这个网站实现电子资源的变现,但是由于时间的缘故,很多功能都没有实现,特别是用户无法直接查看网站所有资源的信息,这就是个致命的弱点,这两天加上了这个功能,目前已经能查看了,虽然依旧比较简陋,但凑合能用,只能在后期慢慢升级,逐渐将其发展成一个成熟的网站,下面就给大家简单介绍一下。

2、网站介绍

        为了节省成本,我没有选择购买新域名,而是在我原有的一个域名之下,分出了一个二级域名,并将网站和他进行绑定,通过这个二级域名就能访问我的网站,网站地址如下:

http://code.drjtrtj.xyz/

2.1、网站构成

        目前网站只有三个页面,一个主页,一个跳转下载地址的页面,最后就是展示所有下载信息的页面。

2.1.1、主页介绍

        下图是主页在pc端访问的效果:

简单电子资源下载网站实现_第1张图片

        下图是主页在移动端访问的效果:

简单电子资源下载网站实现_第2张图片

        移动端访问和pc端访问效果都差不多,点击上方更多源码那里就能跳转所有源码信息的展示页面,通过下方的微信二维码就能联系到我,我目前主要提供针对网站的数据的定向爬取操作,不对app进行爬取,因为现在只有对网站爬取数据能做到几乎无视所有反爬操作。

2.1.2、页面代码

<%@ page contentType="text/html;charset=UTF-8" language="java" %>

    
        
        
        主页
        
    
    
        
如需定制源码请扫描下方微信二维码联系

2.2、下载信息展示页面

        pc端访问效果:

简单电子资源下载网站实现_第3张图片

        移动端访问效果:

简单电子资源下载网站实现_第4张图片

        移动端访问和pc端访问效果都略有差别,移动端要紧凑一些,这个后面再慢慢修改升级,左边是源码类型,中间是源码描述,右边是下载地址,点击就能跳转到源码下载的获取页面,下面是源码信息展示页面的代码:

<%@ page import="com.pay.maven.utils.code.GetCodeList" %>
<%@ page import="com.pay.maven.data.DownCode" %>
<%@ page import="java.util.List" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>

    
        
        
        所有源码下载
        
    
    
        
所有源码下载页面
<% List list = GetCodeList.queryDownMsg(); String url; %> <% for (int i = 0; i < list.size(); i++) { url="http://code.drjtrtj.xyz/downCode?id="+list.get(i).getCode_id(); %> <% } %>
源码类型 源码描述 下载地址
Android <%=list.get(i).getCode_msg()%> 点击下载

        里面用到了一个数据库操作的工具类,代码如下:

package com.pay.maven.utils.code;

import com.pay.maven.data.DownCode;
import com.pay.maven.utils.JDBCUtils;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.handlers.BeanHandler;
import org.apache.commons.dbutils.handlers.BeanListHandler;

import java.sql.Connection;
import java.sql.SQLException;
import java.util.List;

/**
 * 获取所有源码信息
 */
public class GetCodeList {
    public static List queryDownMsg(){
        List list=null;
        Connection conn=null;
        try {
            QueryRunner runner=new QueryRunner();
            conn = JDBCUtils.getConnection();
            String sql="SELECT * FROM down_code";
            BeanListHandler handler=new BeanListHandler<>(DownCode.class);
            list=runner.query(conn,sql,handler);
        } catch (SQLException e) {
            e.printStackTrace();
        }finally {
            JDBCUtils.closeResource(conn,null);
        }
        return list;
    }
}

2.3、源码下载地址获取页面

        pc端访问效果:

简单电子资源下载网站实现_第5张图片

        移动端访问效果:

简单电子资源下载网站实现_第6张图片

        我的资源下载是需要付费的,但是价格都不高,几乎都在5元以内,支付宝扫码支付成功后等待几秒就会自动跳转到下载地址,由于常规的源码都很小,所以我是把数据放在蓝奏云网盘里面的,跳转的下载地址就是蓝奏云下载地址,直接下载即可,蓝奏云无需登录就能下载。

2.3.1、核心源码展示

        鉴于我这里接入了支付宝支付,所以只能展示核心源码,涉及支付宝密匙之类的私密信息不予以展示,不懂得接入支付宝支付的朋友可以联系我,我这里提供个人接入支付宝支付接口的相关服务,通过我的网站上面展示的微信二维码就能联系到我,核心代码如下:

    protected void doPost(HttpServletRequest request,
                          HttpServletResponse response)
            throws ServletException, IOException {
        request.setCharacterEncoding("utf-8");
        String order = request.getParameter("order");//根据订单查询url下载地址
        response.setContentType("text/plain; charset=utf-8");//文本类型数据
        response.getWriter().write(queryDownStatus(order));
    }
protected void doGet(HttpServletRequest request,
                         HttpServletResponse response)
            throws ServletException, IOException {
        request.setCharacterEncoding("utf-8");
        String id = request.getParameter("id");
        if (id.equals("")){
            response.sendError(HttpServletResponse.SC_NOT_FOUND);
        }else {
            int intId=Integer.parseInt(id);//根据id查询下载数据
            DownCode downCode = queryDownMsg(id);
            String format = sdf.format(new Date());
            String url=PayCreate(format,downCode.getCode_account());
            if (!url.equals("")){
                insertDownMsg(format,downCode.getCode_url());
                response.setContentType("text/html; charset=utf-8");//html类型数据
                response.getWriter().write("\n" +
                        "\n" +
                        "    \n" +
                        "        \n" +
                        "        \n" +
                        "        源码下载\n" +
                        "        \n" +
                        "        \n" +
                        "        \n" +
                        "        \n" +
                        "    \n" +
                        "    \n" +
                        "        
\n" + "
\n" + "
" + downCode.getCode_msg() + "
\n" + "
\n" + "
支付宝扫描上方二维码支付¥" + downCode.getCode_account() + "后自动跳转源码下载地址
\n" + "
" + format + "
\n" + " \n" + "
\n" + "
\n" + " \n" + ""); }else { response.setContentType("text/plain; charset=utf-8");//html类型数据 response.getWriter().write("网络卡顿,请刷新页面重新尝试!"); } } }

你可能感兴趣的:(java,sql,后端)