基于jsp的教师工资管理系统的设计与实现--源代码--【毕业设计】

文章目录

  • 本系列校训
  • 毕设的技术铺垫
  • 环境及工具:
  • 项目说明
    • 总体设计
      • B/S结构
      • Servlet(Server Applet)
    • 有特色的技术
      • jspSmartUpload
      • POI Office 文档的 Java 处理包
    • 前台技术
      • frameset 元素
    • 功能模块
      • 本毕业设计功能如图1所示
    • 核心代码部分
    • 界面(系统实现)
  • 配套资源

本系列校训

互相伤害互相卷,玩命学习要你管,天生我才必有用,我命由我不由天!
毕业论文不怕难,毕业设计来铺垫!打磨技术精心写,拿证之后尽开颜!

毕设的技术铺垫

语言选择 收录专辑链接 卷的程度
C 张雪峰推荐选择了计算机专业之后-在大学期间卷起来-【大学生活篇】 ★★★✫✰
JAVA 黑马B站视频JAVA部分的知识范围、学习步骤详解 ★★★★★
JAVAWEB 黑马B站视频JAVAWEB部分的知识范围、学习步骤详解 ★★★★★
SpringBoot SpringBoot知识范围-学习步骤【JSB系列之000】 ★★★★★
微信小程序 详细解析黑马微信小程序视频–【思维导图知识范围】 ★★★✰✰
python 详细解析python视频选择–【思维导图知识范围】 ★★✫✰✰
php PHP要怎么学–【思维导图知识范围】 ★★★✫✰

环境及工具:

本系列环境

环境 win11
工具 idea 2017
jdk 1.8
数据库 mysql5.5
maven
项目导入方式 打开目录
数据库前端工具 navicat

项目说明

本系统是一个BS系统,使用了Servlet 技术,特色技术:上传教师图片,导出教师信息
基于jsp的教师工资管理系统的设计与实现--源代码--【毕业设计】_第1张图片

总体设计

== 没办法,这种老架构也没啥能吹的技术了。与其说是毕业设计,还不如说是课程设计。只能说明闭眼睛讲故事== ,但是并不代表着啥啥功能不行。

B/S结构

B/S结构(Browser/Server,浏览器/服务器模式),是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器,如Chrome、Safari、Microsoft Edge、Netscape Navigator或Internet Explorer,服务器安装SQL Server、Oracle、MYSQL等数据库。浏览器通过Web Server 同数据库进行数据交互。
随着Internet和WWW的流行,以往的主机/终端和C/S都无法满足当前的全球网络开放、互连、信息随处可见和信息共享的新要求,于是就出现了B/S型模式,即浏览器/服务器结构。它是C/S架构的一种改进,可以说属于三层C/S架构。主要是利用了不断成熟的WWW浏览器技术,用通用浏览器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。
第一层是浏览器,即客户端,只有简单的输入输出功能,处理极少部分的事务逻辑。由于客户不需要安装客户端,只要有浏览器就能上网浏览,所以它面向的是大范围的用户,所以界面设计得比较简单,通用。
第二层是WEB服务器,扮演着信息传送的角色。当用户想要访问数据库时,就会首先向WEB服务器发送请求,WEB服务器统一请求后会向数据库服务器发送访问数据库的请求,这个请求是以SQL语句实现的。
第三层是数据库服务器,他扮演着重要的角色,因为它存放着大量的数据。当数据库服务器收到了WEB服务器的请求后,会对SQL语句进行处理,并将返回的结果发送给WEB服务器,接下来,WEB服务器将收到的数据结果转换为HTML文本形式发送给浏览器,也就是我们打开浏览器看到的界面。

Servlet(Server Applet)

是Java Servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,具有独立于平台和协议的特性,主要功能在于交互式地浏览和生成数据,生成动态Web内容。
狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。Servlet运行于支持Java的应用服务器中。从原理上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器。
最早支持Servlet标准的是JavaSoft的Java Web Server,此后,一些其它的基于Java的Web服务器开始支持标准的Servlet。

有特色的技术

jspSmartUpload

jspSmartUpload组件是应用JSP进行B/S程序开发过程中经常使用的上传下载组件,它使用简单,方便。现在我又为其加上了下载中文名字的文件的支持,真的是如虎添翼,必将赢得更多开发者的青睐。

POI Office 文档的 Java 处理包

软件简介
Apache POI 是基于 Office Open XML 标准(OOXML)和 Microsoft 的 OLE 2 复合文档格式(OLE2)处理各种文件格式的开源项目。 简而言之,您可以使用 Java 读写 MS Excel 文件,可以使用 Java 读写 MS Word 和 MS PowerPoint 文件。

模块
HSSF - 提供读写 Microsoft Excel XLS 格式 (Microsoft Excel 97 (-2003)) 档案的功能。
XSSF - 提供读写 Microsoft Excel OOXML XLSX 格式 (Microsoft Excel XML (2007+)) 档案的功能。
SXSSF - 提供低内存占用量读写 Microsoft Excel OOXML XLSX 格式档案的功能。
HWPF - 提供读写 Microsoft Word DOC97 格式 (Microsoft Word 97 (-2003)) 档案的功能。
XWPF - 提供读写 Microsoft Word DOC2003 格式 (WordprocessingML (2007+)) 档案的功能。
HSLF/XSLF - 提供读写 Microsoft PowerPoint 格式档案的功能。
HDGF/XDGF - 提供读 Microsoft Visio 格式档案的功能。
HPBF - 提供读 Microsoft Publisher 格式档案的功能。
HSMF - 提供读 Microsoft Outlook 格式档案的功能。

前台技术

frameset 元素

可定义一个框架集。它被用来组织多个窗口(框架)。每个框架存有独立的文档。在其最简单的应用中,frameset 元素仅仅会规定在框架集中存在多少列或多少行。您必须使用 cols 或 rows 属性。
其作用是指定一个框架集,用于组织多个框架和嵌套框架集。
FRAMESET 元素是 FRAME 元素的容器。HTML 文档可包含 FRAMESET 元素或 BODY 元素之一,而不能同时包含两者。
如果用户在框架中打开了 Web 文件夹后单击了 Web 文件夹中的内容,那么被单击的文件或文件夹将取代整个窗口。例如,假设页面包含两个框架,一个框架指向 网址第二个框架指向网络驱动器。如果用户单击第二个框架中的文件或文件夹,该框架将活动整个窗口的控制,包括第一个框架。对于浏览器不能处理的文件类型,如 *.txt 文件,将会打开对应的应用程序窗口。
尽管 Web 文件夹是文件系统层次的一部分,但是该技术并不总是表示文件系统中的实际内容。一个典型的例子就是网络邻居。

功能模块

基于jsp的教师工资管理系统的设计与实现--源代码--【毕业设计】_第2张图片

基于jsp的教师工资管理系统的设计与实现--源代码--【毕业设计】_第3张图片

本毕业设计功能如图1所示

基于jsp的教师工资管理系统的设计与实现--源代码--【毕业设计】_第4张图片
基于jsp的教师工资管理系统的设计与实现--源代码--【毕业设计】_第5张图片
基于jsp的教师工资管理系统的设计与实现--源代码--【毕业设计】_第6张图片

核心代码部分

文件编码问题。
在这里插入图片描述

项目文件目录如下:
基于jsp的教师工资管理系统的设计与实现--源代码--【毕业设计】_第7张图片
关键核心代码:
应用软件的核心代码是指这个程序最关键部分的代码。例如WinRAR,它的核心代码就是压缩算法部分,而诸如用户界面、操作系统移植等部分就无足轻重了。
商城类的核心代码是指业务层的代码,比如你商城的核心代码就是:商品、购物车、创建订单、支付这些代码就是核心代码。

作为程序员,我们经常需要看懂别人的代码。特别是在开源社区中,我们需要理解许多优秀的开源项目的代码。而在Gitee这样的代码托管平台上,我们如何快速有效地看懂别人的代码呢?本文将为大家介绍一些方法。

1.阅读README和项目介绍

在Gitee上,许多开源项目都会有自己的README文件或项目介绍。这些文件一般会介绍项目的背景、功能、使用方法等内容,可以帮助我们快速了解这个开源项目的基本情况。如果我们能够从这些文件中找到与自己相关的内容,就可以快速入手这个开源项目的代码。

2.了解项目结构和代码组织

在阅读代码之前,我们需要先了解这个开源项目的代码结构和代码组织方式。通常,开源项目会将不同的功能模块封装到不同的代码文件中,并按照一定的目录结构组织起来。如果我们能够了解这个开源项目的代码组织方式,就能更加快速地找到所需的代码。

3.利用IDE和工具

IDE和一些代码阅读工具可以帮助我们更快速、更高效地阅读代码。例如,Java开发者可以使用Eclipse或IntelliJ IDEA这样的IDE,可以快速打开代码文件、查看类、方法和变量等信息。另外,一些代码阅读工具,如Source Insight、CodeCompare等,可以帮助我们更方便地查看代码的结构和关系,以及快速跳转到相关代码。

4.关注代码注释和文档

良好的代码注释和文档可以帮助我们更快速地理解代码。因此,在阅读别人的代码时,我们可以将注意力放在代码注释和文档上。有些开源项目会提供详细的文档,有些则注重代码注释。如果我们能够针对代码注释和文档有一个系统的阅读和理解,就能更快速地掌握别人的代码。

5.跑通测试和运行项目

如果我们想更深入地了解别人的代码,可以试着跑通相关的测试,或者直接运行这个开源项目。通过跑测试和运行项目,我们可以更加直观地了解代码的实现细节和具体的业务逻辑。

总结:

以上就是在Gitee上快速理解他人代码的一些方法,希望对大家有所帮助。当然,阅读代码是一件需要耐心和细心的事情,需要我们多花一点时间和心思。只有沉下心来,慢慢阅读每一行代码,才能真正理解它们的含义和作用。

package servlet;

import gongong.DateUtils;

import java.io.IOException;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.GregorianCalendar;
import java.util.List;

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

import model.TJiaoshi;

import db.DB;

public class jiaoshi_servlet extends HttpServlet{
	public void service(HttpServletRequest req,HttpServletResponse res)throws ServletException, IOException 
	{
        String type=req.getParameter("type");
        if(type.endsWith("jiaoshiAdd"))
        {
        	jiaoshiAdd(req, res);
        }
		if(type.endsWith("jiaoshiUpd"))
		{
			jiaoshiUpd(req, res);
		}
		if(type.endsWith("jiaoshiDel"))
		{
			jiaoshiDel(req, res);
		}
		if(type.endsWith("jiaoshiMana"))
		{
			jiaoshiMana(req, res);
		}
		if(type.endsWith("jiaoshiQuery"))
		{
			jiaoshiQuery(req, res);
		}
	}
	public void jiaoshiDel(HttpServletRequest req,HttpServletResponse res)
	{
		int id = Integer.parseInt(req.getParameter("id"));
		String del = "yes";
		
		String sql = "update t_jiaoshi set del=? where id=?";
		
		Object[] params={del,id};
		DB mydb=new DB();
		mydb.doPstm(sql, params);
		mydb.closed();
		
		req.setAttribute("message", "教师信息删除成功!");
		req.setAttribute("path", "jiaoshi?type=jiaoshiMana");
		
        String targetURL = "/common/success.jsp";
		dispatch(targetURL, req, res);		
	}
	public void jiaoshiUpd(HttpServletRequest req,HttpServletResponse res)
	{
		int id = Integer.parseInt(req.getParameter("id"));
		String gonghao = req.getParameter("gonghao");
		String xingming = req.getParameter("xingming");
		String xingbie = req.getParameter("xingbie");
		String nianling = req.getParameter("nianling");
		String shengri = req.getParameter("shengri");
		String gongzuo = req.getParameter("gongzuo");
		String zhuanye = req.getParameter("zhuanye");
		String zhaopian = req.getParameter("zhaopian");
		String beizhu = req.getParameter("beizhu");
		
		String sql = "update t_jiaoshi set gonghao=?,xingming=?,xingbie=?,nianling=?,shengri=?,gongzuo=?,zhuanye=?,zhaopian=?,beizhu=? where id=?";
		
		Object[] params={gonghao,xingming,xingbie,nianling,shengri,gongzuo,zhuanye,zhaopian,beizhu,id};
		DB mydb=new DB();
		mydb.doPstm(sql, params);
		mydb.closed();
		
		req.setAttribute("message", "教师信息修改成功!");
		req.setAttribute("path", "jiaoshi?type=jiaoshiMana");
		
        String targetURL = "/common/success.jsp";
		dispatch(targetURL, req, res);
	}
	public void jiaoshiAdd(HttpServletRequest req,HttpServletResponse res)
	{
		String gonghao = req.getParameter("gonghao");
		String xingming = req.getParameter("xingming");
		String xingbie = req.getParameter("xingbie");
		String nianling = req.getParameter("nianling");
		String shengri = req.getParameter("shengri");
		String gongzuo = req.getParameter("gongzuo");
		String zhuanye = req.getParameter("zhuanye");
		String zhaopian = req.getParameter("zhaopian");
		String beizhu = req.getParameter("beizhu");
		String del = "no";
		
		String sql = "insert into t_jiaoshi (gonghao,xingming,xingbie,nianling,shengri,gongzuo,zhuanye,zhaopian,beizhu,del)" +
					 " values (?,?,?,?,?,?,?,?,?,?)";
		
		Object[] params={gonghao,xingming,xingbie,nianling,shengri,gongzuo,zhuanye,zhaopian,beizhu,del};
		DB mydb=new DB();
		mydb.doPstm(sql, params);
		mydb.closed();
		
		req.setAttribute("message", "教师信息添加成功!");
		req.setAttribute("path", "jiaoshi?type=jiaoshiMana");
		
        String targetURL = "/common/success.jsp";
		dispatch(targetURL, req, res);
	}
	
	public void jiaoshiMana(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException
	{
		List jiaoshiList=new ArrayList();
		String sql="select * from t_jiaoshi where del='no'";
		Object[] params={};
		DB mydb=new DB();
		try
		{
			mydb.doPstm(sql, params);
			ResultSet rs=mydb.getRs();
			while(rs.next())
			{
				TJiaoshi jiaoshi=new TJiaoshi();
				
				jiaoshi.setId(rs.getInt("id"));
				jiaoshi.setGonghao(rs.getString("gonghao"));
				jiaoshi.setXingming(rs.getString("xingming"));
				jiaoshi.setXingbie(rs.getString("xingbie"));
				jiaoshi.setNianling(rs.getString("nianling"));
				jiaoshi.setShengri(rs.getString("shengri"));
				jiaoshi.setGongzuo(rs.getString("gongzuo"));
				jiaoshi.setZhuanye(rs.getString("zhuanye"));
				jiaoshi.setZhaopian(rs.getString("zhaopian"));
				jiaoshi.setBeizhu(rs.getString("beizhu"));
				
				jiaoshiList.add(jiaoshi);
			}
			rs.close();
		}
		catch(Exception e)
		{
			e.printStackTrace();
		}
		mydb.closed();
		
		req.setAttribute("jiaoshiList", jiaoshiList);
		req.getRequestDispatcher("admin/jiaoshi/jiaoshiMana.jsp").forward(req, res);
	}
	public void jiaoshiQuery(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException
	{
		String xingming = req.getParameter("xingming")==null?"":req.getParameter("xingming");
		String zhuanye = req.getParameter("zhuanye")==null?"":req.getParameter("zhuanye");
		
		List jiaoshiList=new ArrayList();
		String sql="select * from t_jiaoshi where del='no'";
		
		if(!("".equals(xingming))){
			sql += " and xingming like '%"+xingming+"%'";
		}
		if(!("".equals(zhuanye))){
			sql += "and zhuanye like '%"+zhuanye+"%'";
		}
		
		Object[] params={};
		DB mydb=new DB();
		try
		{
			mydb.doPstm(sql, params);
			ResultSet rs=mydb.getRs();
			while(rs.next())
			{
				TJiaoshi jiaoshi=new TJiaoshi();
				
				jiaoshi.setId(rs.getInt("id"));
				jiaoshi.setGonghao(rs.getString("gonghao"));
				jiaoshi.setXingming(rs.getString("xingming"));
				jiaoshi.setXingbie(rs.getString("xingbie"));
				jiaoshi.setNianling(rs.getString("nianling"));
				jiaoshi.setShengri(rs.getString("shengri"));
				jiaoshi.setGongzuo(rs.getString("gongzuo"));
				jiaoshi.setZhuanye(rs.getString("zhuanye"));
				jiaoshi.setZhaopian(rs.getString("zhaopian"));
				jiaoshi.setBeizhu(rs.getString("beizhu"));
				
				jiaoshiList.add(jiaoshi);
		    }
			rs.close();
		}
		catch(Exception e)
		{
			e.printStackTrace();
		}
		mydb.closed();
		
		req.setAttribute("xingming", xingming);
		req.setAttribute("zhuanye", zhuanye);
		req.setAttribute("jiaoshiList", jiaoshiList);
		req.getRequestDispatcher("admin/jiaoshi/jiaoshiQuery.jsp").forward(req, res);
	}
	
	public void dispatch(String targetURI,HttpServletRequest request,HttpServletResponse response) 
	{
		RequestDispatcher dispatch = getServletContext().getRequestDispatcher(targetURI);
		try 
		{
		    dispatch.forward(request, response);
		    return;
		} 
		catch (ServletException e) 
		{
                    e.printStackTrace();
		} 
		catch (IOException e) 
		{
			
		    e.printStackTrace();
		}
	}
}


教师工资


上传文件的部分

<%@ page contentType="text/html;charset=utf-8" language="java" import="com.jspsmart.upload.*"%>
<%@ page import="com.jspsmart.upload.*"%>
<%@ page import="java.util.*"%>
<%
String path = request.getContextPath();
%>
<%
    
    String newFile1Name=null;
    String file_name=null;
    
	SmartUpload mySmartUpload = new SmartUpload();

	//初始化上传
	mySmartUpload.initialize(pageContext);

	//只允许上载此类文件
	try 
	{
		//mySmartUpload.setAllowedFilesList("jpg,Jpg,JPG,GIF,gif,Gif,png");
		mySmartUpload.upload();
	} 
	catch (Exception e)
    {
		//out.println("");
		//return;
	}
	
	try 
	{
		   com.jspsmart.upload.File myFile = mySmartUpload.getFiles().getFile(0);
		   if (myFile.isMissing())
		   {
			  out.println("");
			  return;

		   } 
		   else 
		   {
			   int file_size = myFile.getSize(); //取得文件的大小 (单位是b) 
			   file_name=myFile.getFileName();
			   System.out.println("文件大小:"+file_size+"文件名称:"+file_name);
			   //if (file_size > 10*1024*1024)
			   //{
				  //out.println("");
				  //return;
			   //}
               //else
               //{
                   newFile1Name=new Date().getTime()+file_name.substring(file_name.indexOf("."));
	               System.out.println("新文件名称:"+newFile1Name);
				
				   String saveurl = request.getSession().getServletContext().getRealPath("upload");
				
				   saveurl = saveurl+"/"+newFile1Name;
				   myFile.saveAs(saveurl, mySmartUpload.SAVE_PHYSICAL);
	
              // }
			} 
	  } 
	  catch (Exception e)
	  {
	    e.toString();
	  }
%>

<script language="javascript">
    document.write("上传成功");
	window.parent.document.getElementById("fujian").value="<%= file_name%>";
	window.parent.document.getElementById("zhaopian").value="<%= file_name%>";
</script>


导出EXCEL

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ page import="com.jspsmart.upload.*" %>
<%@ page import="org.apache.poi.hssf.usermodel.*" %>
<%@ page import="java.io.*" %>
<jsp:directive.page import="db.DB"/>
<jsp:directive.page import="java.sql.ResultSet"/>
<jsp:directive.page import="model.TJiaoshi"/>
<%
String path = request.getContextPath();
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
  </head>
  
  <body> 
      <% 
      
            List jiaoshiList=new ArrayList();
            
			String sql="select * from t_jiaoshi where del='no'";
			Object[] params={};
			DB mydb=new DB();
			try
			{
				mydb.doPstm(sql, params);
				ResultSet rs=mydb.getRs();
				while(rs.next())
				{
					TJiaoshi jiaoshi=new TJiaoshi();
					
					jiaoshi.setId(rs.getInt("id"));
					jiaoshi.setGonghao(rs.getString("gonghao"));
					jiaoshi.setXingming(rs.getString("xingming"));
					jiaoshi.setXingbie(rs.getString("xingbie"));
					jiaoshi.setNianling(rs.getString("nianling"));
					jiaoshi.setShengri(rs.getString("shengri"));
					jiaoshi.setGongzuo(rs.getString("gongzuo"));
					jiaoshi.setZhuanye(rs.getString("zhuanye"));
					jiaoshi.setZhaopian(rs.getString("zhaopian"));
					jiaoshi.setBeizhu(rs.getString("beizhu"));
					
					jiaoshiList.add(jiaoshi);
			    }
				rs.close();
			}
			catch(Exception e)
			{
				e.printStackTrace();
			}
			mydb.closed();
      
            
      
            HSSFWorkbook wb = new HSSFWorkbook();
			HSSFSheet sheet = wb.createSheet("new sheet");
			
			HSSFRow row = sheet.createRow(0);
			HSSFCell cell=row.createCell((short)0);
			cell.setEncoding(HSSFCell.ENCODING_UTF_16);
			cell.setCellValue("教师号");
					
			cell=row.createCell((short)1);
			cell.setEncoding(HSSFCell.ENCODING_UTF_16);
			cell.setCellValue("姓名");
					
			cell=row.createCell((short)2);
			cell.setEncoding(HSSFCell.ENCODING_UTF_16);
			cell.setCellValue("性别");
			
			cell=row.createCell((short)3);
			cell.setEncoding(HSSFCell.ENCODING_UTF_16);
			cell.setCellValue("年龄");
			
			cell=row.createCell((short)4);
			cell.setEncoding(HSSFCell.ENCODING_UTF_16);
			cell.setCellValue("出生日期");
			
			cell=row.createCell((short)5);
			cell.setEncoding(HSSFCell.ENCODING_UTF_16);
			cell.setCellValue("参加工作日期");
			
			cell=row.createCell((short)6);
			cell.setEncoding(HSSFCell.ENCODING_UTF_16);
			cell.setCellValue("专业");
			
			cell=row.createCell((short)7);
			cell.setEncoding(HSSFCell.ENCODING_UTF_16);
			cell.setCellValue("备注");
			
			
			for(int i=0;i<jiaoshiList.size();i++)
			{
				TJiaoshi jiaoshi = (TJiaoshi)jiaoshiList.get(i);
				
				row=sheet.createRow(i+1);
				cell=row.createCell((short)0);
				cell.setEncoding(HSSFCell.ENCODING_UTF_16);
				cell.setCellValue(jiaoshi.getGonghao());
						
				cell=row.createCell((short)1);
				cell.setEncoding(HSSFCell.ENCODING_UTF_16);
				cell.setCellValue(jiaoshi.getXingming());
				
				cell=row.createCell((short)2);
				cell.setEncoding(HSSFCell.ENCODING_UTF_16);
				cell.setCellValue(jiaoshi.getXingbie());
				
				cell=row.createCell((short)3);
				cell.setEncoding(HSSFCell.ENCODING_UTF_16);
				cell.setCellValue(jiaoshi.getNianling());
				
				cell=row.createCell((short)4);
				cell.setEncoding(HSSFCell.ENCODING_UTF_16);
				cell.setCellValue(jiaoshi.getShengri());
				
				cell=row.createCell((short)5);
				cell.setEncoding(HSSFCell.ENCODING_UTF_16);
				cell.setCellValue(jiaoshi.getGongzuo());
				
				cell=row.createCell((short)6);
				cell.setEncoding(HSSFCell.ENCODING_UTF_16);
				cell.setCellValue(jiaoshi.getZhuanye());
				
				cell=row.createCell((short)7);
				cell.setEncoding(HSSFCell.ENCODING_UTF_16);
				cell.setCellValue(jiaoshi.getBeizhu());
				
			}
			
			
			String fujianPath="c:\\教师信息.xls";
			try
			{
				FileOutputStream fileOut = new FileOutputStream(fujianPath);
				wb.write(fileOut);
				fileOut.close();
			} 
			catch (Exception e)
			{
			       e.printStackTrace();
			}
			
          
      
          
          SmartUpload su = new SmartUpload(); // 新建一个SmartUpload对象 

          su.initialize(pageContext); // 初始化 

          su.setContentDisposition(null); 
          // 设定contentDisposition为null以禁止浏览器自动打开文件, 
          //保证点击链接后是下载文件。若不设定,则下载的文件扩展名为 
          //doc时,浏览器将自动用word打开它。扩展名为pdf时,将用acrobat打开

          //su.downloadFile("/uploadPath/file/liu.doc"); // 下载英文文件
          su.downloadFile(fujianPath, null, new String(java.net.URLDecoder.decode("教师信息.xls","UTF-8").getBytes(), "ISO8859-1")); // 下载中文文件
          //downloadFile(String sourceFilePathName, String contentType, String destFileName)
          out.clear();
          out=pageContext.pushBody(); 
      %> 

      
  </body>
</html>

界面(系统实现)

登陆帐号: a 密码 a
基于jsp的教师工资管理系统的设计与实现--源代码--【毕业设计】_第8张图片
基于jsp的教师工资管理系统的设计与实现--源代码--【毕业设计】_第9张图片
基于jsp的教师工资管理系统的设计与实现--源代码--【毕业设计】_第10张图片
基于jsp的教师工资管理系统的设计与实现--源代码--【毕业设计】_第11张图片
统计信息没有图表。

论文参考
《基于java的坦克大战游戏的设计与实现–毕业论文–【毕业论文】》
https://blog.csdn.net/dearmite/article/details/131962993

配套资源

基于jsp的教师工资管理系统的设计与实现–源代码–【毕业设计】
https://download.csdn.net/download/dearmite/88123289

你可能感兴趣的:(#,JAVAWEB,毕设与论文,#,JAVA,java,课程设计,开发语言)