beans包和jdbc包代码不放了,麻烦

Service.java:

package service;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;

import beans.Profit;
import jdbc.JdbcConn;

public class Service {
    private Connection dbconnection;
    private Statement st,st1,st2;
    private ResultSet rs,rs1,rs2;
    private String sql,sql1,sql2;
    private List list;
    private Profit pf;
    
    public List getProfit(){
        list=new ArrayList();
        dbconnection=JdbcConn.getCon();
        try {
            st=(Statement)dbconnection.createStatement();
            st1=(Statement)dbconnection.createStatement();
            st2=(Statement)dbconnection.createStatement();
            sql="SELECT g.GOODS_NAME goodsName,g.SELLING_PRICE selling,g.COST_PRICE costPrice,g.GOODS_ID goodsId FROM t_goods g,t_trading t WHERE t.TRADING_GOODS_ID=g.GOODS_ID GROUP BY g.GOODS_NAME";
            rs=st.executeQuery(sql);
            int temp;
            while(rs.next()){
                pf=new Profit();
                pf.setGoodsName(rs.getString("goodsName"));
                pf.setSellingPrice(rs.getInt("selling"));
                pf.setCostPrice(rs.getInt("costPrice"));
                pf.setGoodsId(rs.getInt("goodsId"));
                
                temp=0;
                temp=pf.getSellingPrice()-pf.getCostPrice();
                
                sql1="SELECT SUM(t.TRADING_NUMBER) sunNum FROM t_trading t WHERE t.TRADING_GOODS_ID="+pf.getGoodsId();
                rs1=st1.executeQuery(sql1);
                while(rs1.next()){
                    pf.setTradingNum(rs1.getInt("sunNum"));
                }
                
                pf.setProfit(temp*pf.getTradingNum());
                sql2="SELECT COUNT(t.TRADING_GOODS_ID) times FROM t_trading t WHERE t.TRADING_GOODS_ID="+pf.getGoodsId();
                rs2=st2.executeQuery(sql2);
                while(rs2.next()){
                    pf.setTimes(rs2.getInt("times"));
                }
                
                list.add(pf);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        
        return list;
    }
}

ShowReport.java:

package servlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import service.Service;

public class ShowReport extends HttpServlet {
    public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        List list;
        Service service=new Service();
        list=service.getProfit();
        
        request.getSession().setAttribute("PROFIT",list);
        response.sendRedirect("index.jsp");
    }

@Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        this.doPost(request, response);
    }
    
    
}

index.jsp:

<%@ page language="java" import="java.util.*,beans.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>原生态java报表生成</title>
    <style type="text/css">
    table.hovertable{
        font-size:13px;
        color:#333333;
        border-width:1px;
        border-color:#999999;
        border-collapse: collapse;
    }
    table.hovertable th{
        background-color:#c3dde0;
        border-width:1px;
        padding:8px;
        border-style:solid;
        border-color:#a9c6c9;
    }
    table.hovertable tr{
        background-color:#d4e3e5;
    }
    table.hovertable td{
        border-width:1px;
        padding:8px;
        border-style:solid;
        border-color:#a9c6c9;
    }
    
    </style>
  </head>
 
  <body>
  <form action="ShowReport" method="post">
      <input type="submit" value="生成报表">
  </form>
  <table class="hovertable">
  <tr><th colspan="5">利润表</th></tr>
  <tr>
  <th>序号</th>
  <th>商品名称</th>
  <th>卖出数量</th>
  <th>交易笔数</th>
  <th>盈利额</th>
  </tr>
  <%
          List list=null;
          if(session.getAttribute("PROFIT")!=null){
              list=(List)session.getAttribute("PROFIT");
              if(list.size()>0){
                  int temp=0;
                  int temp1=0;
                  int temp2=0;
                  int temp3=0;
                  Profit pf;
                  for(int i=0;i<list.size();i++){
                      pf=new Profit();
                      pf=(Profit)list.get(i);
                      temp1+=pf.getTradingNum();
                      temp2+=pf.getTimes();
                      temp3+=pf.getProfit();
                      %>
                          <tr οnmοuseοver="this.style.backgroundColor='#ffff66';"
                              οnmοuseοut="this.style.backgroundColor='#d4e3e5';">
                              <td><%=temp+=1 %></td>
                              <td><%=pf.getGoodsName() %></td>
                              <td><%=pf.getTradingNum() %></td>
                              <td><%=pf.getTimes() %></td>
                              <td><%=pf.getProfit() %></td>
                          </tr>
                      <%
                  }%>
                          <tr οnmοuseοver="this.style.backgroundColor='#ffff66';"
                              οnmοuseοut="this.style.backgroundColor='#d4e3e5';">
                              <td colspan="2">合计</td>
                              <td><%=temp1 %></td>
                              <td><%=temp2 %></td>
                              <td><%=temp3 %></td>
                          </tr>
                  <%
              }
          }
   %>
   </table>
  </body>
</html>

转载于:https://www.cnblogs.com/daochong/p/4929073.html

利用jsp和servlet,MySQL实现简易报表相关推荐

  1. JAVA(利用jsp+javabean+servlet)实现简易计算器

    代码解释基本都在代码中给出 1 <%@ page language="java" contentType="text/html; charset=UTF-8&quo ...

  2. 基于javaweb的宠物商城系统(java+jsp+javascript+servlet+mysql)

    基于javaweb的宠物商城系统(java+jsp+javascript+servlet+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea ...

  3. 基于javaweb的二手自行车商城系统(java+jsp+javascript+servlet+mysql)

    基于javaweb的二手自行车商城系统(java+jsp+javascript+servlet+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/i ...

  4. 基于javaweb的生鲜商城系统(java+jsp+bootstrap+servlet+mysql)

    基于javaweb的生鲜商城系统(java+jsp+bootstrap+servlet+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/ ...

  5. 基于javaweb的房地产客户关系管理系统(java+jsp+javascript+servlet+mysql)

    基于javaweb的房地产客户关系管理系统(java+jsp+javascript+servlet+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse ...

  6. 基于javaweb的医院挂号管理系统(java+jsp+javascript+servlet+mysql)

    基于javaweb的医院挂号管理系统(java+jsp+javascript+servlet+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/id ...

  7. 基于javaweb的零食商城系统(java+jsp+javascript+servlet+mysql)

    基于javaweb的零食商城系统(java+jsp+javascript+servlet+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea ...

  8. 基于javaweb的二手交易商城系统(java+jsp+javascript+servlet+mysql)

    基于javaweb的二手交易商城系统(java+jsp+javascript+servlet+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/id ...

  9. 基于javaweb的停车库管理系统(java+jsp+jquery+servlet+mysql)

    基于javaweb的停车库管理系统(java+jsp+jquery+servlet+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/my ...

  10. 基于javaweb的在线奶茶店系统(java+jsp+javascript+servlet+mysql)

    基于javaweb的在线奶茶店系统(java+jsp+javascript+servlet+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/ide ...

最新文章

  1. 为你的组织设计自己的障碍消除流程
  2. 对linux文件权限的理解,理解linux文件权限2
  3. jprofiler分析dump文件_内存溢出+CPU占用过高:问题排查+解决方案+复盘(超详细分析教程)...
  4. s5p4418 android 驱动 hal 应用之led 串口 rs485 can总线应用(app 有源码)
  5. go标准库的学习-encoding/xml
  6. 媒体播放器三大底层架构
  7. 2020 kali 切换中文显示_Kali设置中文
  8. 阅读YYKit之YYImage实现gif展示
  9. What is Drilldown configuration
  10. 计算机内存空间为何不能无限扩容,空间是否可以无限扩张?
  11. CentOS官网下载所需版本的CentOS版本方法
  12. html制作学生信息表静态网页,实验一静态网页制作报告.doc
  13. 世界杯最野蛮大战,巴西付出慘重代价步入四强
  14. IDEA使用教程(三) 功能面板
  15. Android Compose——一个简单的Bilibili APP
  16. 论文解读:《多层肽 - 蛋白质相互作用预测的深度学习框架》
  17. 一些常用的判断预测、拟合、回归的精度评价函数和相关性评价函数
  18. Java8的 stream对list数据去重,使用filter()过滤列表,list转map,joining使用,统计分组合并
  19. 我如愿以尝被北交计算机学院录取
  20. 简单的python脚本-如何写一个简短(200行)的Python脚本

热门文章

  1. 吴恩达深度学习1.2笔记_Neural Networks and Deep Learning_神经网络基础
  2. 神经网路权重初始化方式
  3. O036、Snapshot Instance 操作详解
  4. 学习Linux第一天
  5. element-ui table多选CheckBox参数解析
  6. Python 实现进程间通信(网络编程)
  7. 解决mac使用svn: E170000: Unrecognized URL scheme for h
  8. vSphere vsan 6.5部署之一VCSA6.5安装
  9. CentOS系统根目录下各个目录存放的内容
  10. 关于coredump文件生成与查看