基于javaweb+mysql的jsp+servlet学生信息管理系统(java+servlet+jsp+easyui+mysql)
私信源码获取及调试交流
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb的JSP+Servlet学生信息管理系统(java+servlet+jsp+easyui+mysql)
介绍
学生信息管理系统,该项目分为管理员、老师、学生三种角色; 管理员主要功能: 学生信息管理、班级信息管理、教师信息管理、系统管理; 老师主要功能: 学生信息管理、班级信息管理、教师信息管理、系统管理; 学生主要功能: 学生信息管理、系统管理;
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可 4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 5.是否Maven项目: 否;查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven项目 6.数据库:MySql 5.7版本;
技术栈
- Servlet+Jsp+easyui
使用说明
- 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;若为maven项目,导入成功后请执行maven clean;maven install命令,配置tomcat,然后运行; 2. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 3. 将项目中DbUtil.java中的数据库配置改为自己的配置 4. 配置tomcat,运行项目,在浏览器中输入localhost:8080/xxx 登录 5.管理员账号:admin 密码:admin 教师账号:王鹤翔老师 密码:111 学生账号:江小雷 密码:1
*
*/
private static final long serialVersionUID = -8421947373714720118L;
public void doGet(HttpServletRequest request,HttpServletResponse response) throws IOException{
doPost(request, response);
}
public void doPost(HttpServletRequest request,HttpServletResponse response) throws IOException{
String method = request.getParameter("method");
if("toTeacherListView".equals(method)){
teacherList(request,response);
}else if("AddTeacher".equals(method)){
addTeacher(request,response);
}else if("TeacherList".equals(method)){
getTeacherList(request,response);
}else if("EditTeacher".equals(method)){
editTeacher(request,response);
}else if("DeleteTeacher".equals(method)){
deleteTeacher(request,response);
}
}
private void deleteTeacher(HttpServletRequest request,
HttpServletResponse response) {
// TODO Auto-generated method stub
String[] ids = request.getParameterValues("ids[]");
String idStr = "";
for(String id : ids){
idStr += id + ",";
}
idStr = idStr.substring(0, idStr.length()-1);
TeacherDao teacherDao = new TeacherDao();
if(teacherDao.deleteTeacher(idStr)){
try {
response.getWriter().write("success");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
teacherDao.closeCon();
}
}
}
private void editTeacher(HttpServletRequest request,
HttpServletResponse response) {
// TODO Auto-generated method stub
}
}
}
if(userType == 2){
//学生
Student student = (Student)request.getSession().getAttribute("user");
if(!student.getPassword().equals(password)){
try {
response.getWriter().write("原密码错误!");
return;
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
StudentDao studentDao = new StudentDao();
if(studentDao.editPassword(student, newPassword)){
try {
response.getWriter().write("success");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
finally{
studentDao.closeCon();
}
}else{
try {
response.getWriter().write("数据库修改错误");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
studentDao.closeCon();
}
}
}
if(userType == 3){
//教师
Teacher teacher = (Teacher)request.getSession().getAttribute("user");
if(!teacher.getPassword().equals(password)){
try {
response.getWriter().write("原密码错误!");
return;
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
rangeStringList.add("90~100分");
String courseName = "";
for(Map<String, Object> entry:scoreList){
courseName = entry.get("courseName").toString();
double scoreValue = Double.parseDouble(entry.get("score").toString());
if(scoreValue < 60){
numberList.set(0, numberList.get(0)+1);
continue;
}
if(scoreValue <= 70 && scoreValue >= 60){
numberList.set(1, numberList.get(1)+1);
continue;
}
if(scoreValue <= 80 && scoreValue > 70){
numberList.set(2, numberList.get(2)+1);
continue;
}
if(scoreValue <= 90 && scoreValue > 80){
numberList.set(3, numberList.get(3)+1);
continue;
}
if(scoreValue <= 100 && scoreValue > 90){
numberList.set(4, numberList.get(4)+1);
continue;
}
}
Map<String, Object> retMap = new HashMap<String, Object>();
retMap.put("courseName", courseName);
retMap.put("numberList", numberList);
retMap.put("rangeList", rangeStringList);
retMap.put("type", "suceess");
try {
response.getWriter().write(JSONObject.fromObject(retMap).toString());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
private void exportScore(HttpServletRequest request,
HttpServletResponse response) {
// TODO Auto-generated method stub
int studentId = request.getParameter("studentid") == null ? 0 : Integer.parseInt(request.getParameter("studentid").toString());
int courseId = request.getParameter("courseid") == null ? 0 : Integer.parseInt(request.getParameter("courseid").toString());
//获取当前登录用户类型
int userType = Integer.parseInt(request.getSession().getAttribute("userType").toString());
if(userType == 2){
//如果是学生,只能查看自己的信息
Student currentUser = (Student)request.getSession().getAttribute("user");
studentId = currentUser.getId();
}
Score score = new Score();
score.setStudentId(studentId);
score.setCourseId(courseId);
try {
}
private void clazzList(HttpServletRequest request,
HttpServletResponse response) {
// TODO Auto-generated method stub
try {
request.getRequestDispatcher("view/clazzList.jsp").forward(request, response);
} catch (ServletException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
private void getClazzList(HttpServletRequest request,HttpServletResponse response){
String name = request.getParameter("clazzName");
Integer currentPage = request.getParameter("page") == null ? 1 : Integer.parseInt(request.getParameter("page"));
Integer pageSize = request.getParameter("rows") == null ? 999 : Integer.parseInt(request.getParameter("rows"));
Clazz clazz = new Clazz();
clazz.setName(name);
ClazzDao clazzDao = new ClazzDao();
List<Clazz> clazzList = clazzDao.getClazzList(clazz, new Page(currentPage, pageSize));
int total = clazzDao.getClazzListTotal(clazz);
clazzDao.closeCon();
response.setCharacterEncoding("UTF-8");
Map<String, Object> ret = new HashMap<String, Object>();
ret.put("total", total);
ret.put("rows", clazzList);
try {
String from = request.getParameter("from");
if("combox".equals(from)){
response.getWriter().write(JSONArray.fromObject(clazzList).toString());
}else{
response.getWriter().write(JSONObject.fromObject(ret).toString());
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
public class PhotoServlet extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = 3274927179113071465L;
public void doGet(HttpServletRequest request,HttpServletResponse response) throws IOException{
doPost(request, response);
}
public void doPost(HttpServletRequest request,HttpServletResponse response) throws IOException{
String method = request.getParameter("method");
if("getPhoto".equals(method)){
getPhoto(request,response);
}else if("SetPhoto".equals(method)){
uploadPhoto(request,response);
}
}
private void uploadPhoto(HttpServletRequest request,
HttpServletResponse response) {
// TODO Auto-generated method stub
int sid = request.getParameter("sid") == null ? 0 : Integer.parseInt(request.getParameter("sid"));
int tid = request.getParameter("tid") == null ? 0 : Integer.parseInt(request.getParameter("tid"));
FileUpload fileUpload = new FileUpload(request);
fileUpload.setFileFormat("jpg");
fileUpload.setFileFormat("png");
fileUpload.setFileFormat("jpeg");
fileUpload.setFileFormat("gif");
fileUpload.setFileSize(2048);
response.setCharacterEncoding("UTF-8");
try {
InputStream uploadInputStream = fileUpload.getUploadInputStream();
if(sid != 0){
Student student = new Student();
student.setId(sid);
student.setPhoto(uploadInputStream);
StudentDao studentDao = new StudentDao();
if(studentDao.setStudentPhoto(student)){
response.getWriter().write("<div id='message'>上传成功!</div>");
}else{
response.getWriter().write("<div id='message'>上传失败!</div>");
}
}
numberList.set(3, numberList.get(3)+1);
continue;
}
if(scoreValue <= 100 && scoreValue > 90){
numberList.set(4, numberList.get(4)+1);
continue;
}
}
Map<String, Object> retMap = new HashMap<String, Object>();
retMap.put("courseName", courseName);
retMap.put("numberList", numberList);
retMap.put("rangeList", rangeStringList);
retMap.put("type", "suceess");
try {
response.getWriter().write(JSONObject.fromObject(retMap).toString());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
private void exportScore(HttpServletRequest request,
HttpServletResponse response) {
// TODO Auto-generated method stub
int studentId = request.getParameter("studentid") == null ? 0 : Integer.parseInt(request.getParameter("studentid").toString());
int courseId = request.getParameter("courseid") == null ? 0 : Integer.parseInt(request.getParameter("courseid").toString());
//获取当前登录用户类型
int userType = Integer.parseInt(request.getSession().getAttribute("userType").toString());
if(userType == 2){
//如果是学生,只能查看自己的信息
Student currentUser = (Student)request.getSession().getAttribute("user");
studentId = currentUser.getId();
}
Score score = new Score();
score.setStudentId(studentId);
score.setCourseId(courseId);
try {
response.setHeader("Content-Disposition", "attachment;filename="+URLEncoder.encode("score_list_sid_"+studentId+"_cid_"+courseId+".xls", "UTF-8"));
response.setHeader("Connection", "close");
response.setHeader("Content-Type", "application/octet-stream");
ServletOutputStream outputStream = response.getOutputStream();
ScoreDao scoreDao = new ScoreDao();
public class ScoreServlet extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = -153736421631912372L;
public void doGet(HttpServletRequest request,HttpServletResponse response) throws IOException{
doPost(request, response);
}
public void doPost(HttpServletRequest request,HttpServletResponse response) throws IOException{
String method = request.getParameter("method");
if("toScoreListView".equals(method)){
try {
request.getRequestDispatcher("view/scoreList.jsp").forward(request, response);
} catch (ServletException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}else if("AddScore".equals(method)){
addScore(request,response);
}else if("ScoreList".equals(method)){
/**
* 教师信息管理servlet类
*/
public class TeacherServlet extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = -8421947373714720118L;
public void doGet(HttpServletRequest request,HttpServletResponse response) throws IOException{
doPost(request, response);
}
public void doPost(HttpServletRequest request,HttpServletResponse response) throws IOException{
String method = request.getParameter("method");
if("toTeacherListView".equals(method)){
teacherList(request,response);
}else if("AddTeacher".equals(method)){
addTeacher(request,response);
}else if("TeacherList".equals(method)){
getTeacherList(request,response);
}else if("EditTeacher".equals(method)){
editTeacher(request,response);
}else if("DeleteTeacher".equals(method)){
deleteTeacher(request,response);
}
}
private void deleteTeacher(HttpServletRequest request,
HttpServletResponse response) {
// TODO Auto-generated method stub
String[] ids = request.getParameterValues("ids[]");
String idStr = "";
for(String id : ids){
idStr += id + ",";
}
idStr = idStr.substring(0, idStr.length()-1);
doPost(request, response);
}
public void doPost(HttpServletRequest request,HttpServletResponse response) throws IOException{
String method = request.getParameter("method");
if("toCourseListView".equals(method)){
try {
request.getRequestDispatcher("view/courseList.jsp").forward(request, response);
} catch (ServletException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}else if("AddCourse".equals(method)){
addCourse(request,response);
}else if("CourseList".equals(method)){
getCourseList(request,response);
}else if("EditCourse".equals(method)){
editCourse(request,response);
}else if("DeleteCourse".equals(method)){
deleteCourse(request,response);
}
}
private void deleteCourse(HttpServletRequest request,
HttpServletResponse response) {
// TODO Auto-generated method stub
String[] ids = request.getParameterValues("ids[]");
String idStr = "";
for(String id : ids){
idStr += id + ",";
}
idStr = idStr.substring(0, idStr.length()-1);
CourseDao courseDao = new CourseDao();
if(courseDao.deleteCourse(idStr)){
try {
response.getWriter().write("success");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
courseDao.closeCon();
}
}
}
private void editCourse(HttpServletRequest request,
HttpServletResponse response) {
// TODO Auto-generated method stub
String name = request.getParameter("name");
String qq = request.getParameter("qq");
int clazzId = Integer.parseInt(request.getParameter("clazzid"));
Teacher teacher = new Teacher();
teacher.setClazzId(clazzId);
teacher.setMobile(mobile);
teacher.setName(name);
teacher.setId(id);
teacher.setQq(qq);
teacher.setSex(sex);
TeacherDao teacherDao = new TeacherDao();
if(teacherDao.editTeacher(teacher)){
try {
response.getWriter().write("success");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
teacherDao.closeCon();
}
}
}
private void getTeacherList(HttpServletRequest request,
HttpServletResponse response) {
// TODO Auto-generated method stub
String name = request.getParameter("teacherName");
Integer currentPage = request.getParameter("page") == null ? 1 : Integer.parseInt(request.getParameter("page"));
Integer pageSize = request.getParameter("rows") == null ? 999 : Integer.parseInt(request.getParameter("rows"));
Integer clazz = request.getParameter("clazzid") == null ? 0 : Integer.parseInt(request.getParameter("clazzid"));
//获取当前登录用户类型
int userType = Integer.parseInt(request.getSession().getAttribute("userType").toString());
Teacher teacher = new Teacher();
teacher.setName(name);
teacher.setClazzId(clazz);
if(userType == 3){
//如果是学生,只能查看自己的信息
Teacher currentUser = (Teacher)request.getSession().getAttribute("user");
teacher.setId(currentUser.getId());
}
TeacherDao teacherDao = new TeacherDao();
List<Teacher> teacherList = teacherDao.getTeacherList(teacher, new Page(currentPage, pageSize));
int total = teacherDao.getTeacherListTotal(teacher);
teacherDao.closeCon();
response.setCharacterEncoding("UTF-8");
Map<String, Object> ret = new HashMap<String, Object>();
ret.put("total", total);
fileUpload.setFileFormat("jpeg");
fileUpload.setFileFormat("gif");
fileUpload.setFileSize(2048);
response.setCharacterEncoding("UTF-8");
try {
InputStream uploadInputStream = fileUpload.getUploadInputStream();
if(sid != 0){
Student student = new Student();
student.setId(sid);
student.setPhoto(uploadInputStream);
StudentDao studentDao = new StudentDao();
if(studentDao.setStudentPhoto(student)){
response.getWriter().write("<div id='message'>上传成功!</div>");
}else{
response.getWriter().write("<div id='message'>上传失败!</div>");
}
}
if(tid != 0){
Teacher teacher = new Teacher();
teacher.setId(tid);
teacher.setPhoto(uploadInputStream);
TeacherDao teacherDao = new TeacherDao();
if(teacherDao.setTeacherPhoto(teacher)){
response.getWriter().write("<div id='message'>上传成功!</div>");
}else{
response.getWriter().write("<div id='message'>上传失败!</div>");
}
}
} catch (ProtocolException e) {
// TODO Auto-generated catch block
try {
response.getWriter().write("<div id='message'>上传协议错误!</div>");
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
e.printStackTrace();
}catch (NullFileException e1) {
// TODO: handle exception
try {
}
private void checkLeave(HttpServletRequest request,
HttpServletResponse response) {
// TODO Auto-generated method stub
int studentId = Integer.parseInt(request.getParameter("studentid"));
int id = Integer.parseInt(request.getParameter("id"));
int status = Integer.parseInt(request.getParameter("status"));
String info = request.getParameter("info");
String remark = request.getParameter("remark");
Leave leave = new Leave();
leave.setStudentId(studentId);
leave.setInfo(info);
leave.setRemark(remark);
leave.setStatus(status);
leave.setId(id);
LeaveDao leaveDao = new LeaveDao();
String msg = "error";
if(leaveDao.editLeave(leave)){
msg = "success";
}
try {
response.getWriter().write(msg);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
leaveDao.closeCon();
}
}
private void editLeave(HttpServletRequest request,
HttpServletResponse response) {
// TODO Auto-generated method stub
int studentId = Integer.parseInt(request.getParameter("studentid"));
int id = Integer.parseInt(request.getParameter("id"));
String info = request.getParameter("info");
Leave leave = new Leave();
leave.setStudentId(studentId);
leave.setInfo(info);
leave.setRemark("");
leave.setStatus(Leave.LEAVE_STATUS_WAIT);
leave.setId(id);
}
private void addStudent(HttpServletRequest request,
HttpServletResponse response) {
// TODO Auto-generated method stub
String name = request.getParameter("name");
String password = request.getParameter("password");
String sex = request.getParameter("sex");
String mobile = request.getParameter("mobile");
String qq = request.getParameter("qq");
int clazzId = Integer.parseInt(request.getParameter("clazzid"));
Student student = new Student();
student.setClazzId(clazzId);
student.setMobile(mobile);
student.setName(name);
student.setPassword(password);
student.setQq(qq);
student.setSex(sex);
student.setSn(SnGenerateUtil.generateSn(clazzId));
StudentDao studentDao = new StudentDao();
if(studentDao.addStudent(student)){
try {
response.getWriter().write("success");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
studentDao.closeCon();
}
}
}
private void studentList(HttpServletRequest request,
HttpServletResponse response) throws IOException {
// TODO Auto-generated method stub
try {
request.getRequestDispatcher("view/studentList.jsp").forward(request, response);
} catch (ServletException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request,HttpServletResponse response) throws IOException{
doPost(request, response);
}
public void doPost(HttpServletRequest request,HttpServletResponse response) throws IOException{
String method = request.getParameter("method");
if("toLeaveServletListView".equals(method)){
try {
request.getRequestDispatcher("view/leaveList.jsp").forward(request, response);
} catch (ServletException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}else if("AddLeave".equals(method)){
addLeave(request,response);
}else if("LeaveList".equals(method)){
getLeaveList(request,response);
}else if("EditLeave".equals(method)){
editLeave(request,response);
}else if("CheckLeave".equals(method)){
checkLeave(request,response);
}
else if("DeleteLeave".equals(method)){
deleteLeave(request,response);
}
}
private void deleteLeave(HttpServletRequest request,
HttpServletResponse response) {
// TODO Auto-generated method stub
int id = Integer.parseInt(request.getParameter("id"));
LeaveDao leaveDao = new LeaveDao();
String msg = "success";
if(!leaveDao.deleteLeave(id)){
msg = "error";
}
try {
response.getWriter().write(msg);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
private void checkLeave(HttpServletRequest request,
HttpServletResponse response) {
// TODO Auto-generated method stub
int studentId = Integer.parseInt(request.getParameter("studentid"));
int id = Integer.parseInt(request.getParameter("id"));
int status = Integer.parseInt(request.getParameter("status"));
String info = request.getParameter("info");
/**
*
*/
private static final long serialVersionUID = -7258264317769166483L;
public void doGet(HttpServletRequest request,HttpServletResponse response) throws IOException{
doPost(request, response);
}
public void doPost(HttpServletRequest request,HttpServletResponse response) throws IOException{
String method = request.getParameter("method");
if("toPersonalView".equals(method)){
personalView(request,response);
return;
}else if("EditPasswod".equals(method)){
editPassword(request,response);
return;
}
try {
request.getRequestDispatcher("view/system.jsp").forward(request, response);
} catch (ServletException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
private void editPassword(HttpServletRequest request,
HttpServletResponse response) {
// TODO Auto-generated method stub
String password = request.getParameter("password");
String newPassword = request.getParameter("newpassword");
response.setCharacterEncoding("UTF-8");
int userType = Integer.parseInt(request.getSession().getAttribute("userType").toString());
if(userType == 1){
//管理员
Admin admin = (Admin)request.getSession().getAttribute("user");
if(!admin.getPassword().equals(password)){
try {
response.getWriter().write("原密码错误!");
return;
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
AdminDao adminDao = new AdminDao();
if(adminDao.editPassword(admin, newPassword)){
try {
response.getWriter().write("success");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
e3.printStackTrace();
}
catch (FileFormatException e4) {
// TODO: handle exception
try {
response.getWriter().write("<div id='message'>上传文件格式不正确,请上传 "+fileUpload.getFileFormat()+" 格式的文件!</div>");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
e4.printStackTrace();
}
catch (FileUploadException e5) {
// TODO: handle exception
try {
response.getWriter().write("<div id='message'>上传文件失败!</div>");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
e5.printStackTrace();
}
}
private void getPhoto(HttpServletRequest request,
HttpServletResponse response) {
// TODO Auto-generated method stub
//File file = new File();
int sid = request.getParameter("sid") == null ? 0 : Integer.parseInt(request.getParameter("sid"));
int tid = request.getParameter("tid") == null ? 0 : Integer.parseInt(request.getParameter("tid"));
if(sid != 0){
//学生
StudentDao studentDao = new StudentDao();
Student student = studentDao.getStudent(sid);
studentDao.closeCon();
if(student != null){
InputStream photo = student.getPhoto();
if(photo != null){
try {
byte[] b = new byte[photo.available()];
photo.read(b);
response.getOutputStream().write(b,0,b.length);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
response.getWriter().write("success");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
studentDao.closeCon();
}
}
}
private void studentList(HttpServletRequest request,
HttpServletResponse response) throws IOException {
// TODO Auto-generated method stub
try {
request.getRequestDispatcher("view/studentList.jsp").forward(request, response);
} catch (ServletException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
public class SelectedCourseServlet extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = 7120913402001186955L;
public void doGet(HttpServletRequest request,HttpServletResponse response) throws IOException{
doPost(request, response);
}
public void doPost(HttpServletRequest request,HttpServletResponse response) throws IOException{
Map<String, Object> retMap = new HashMap<String, Object>();
retMap.put("courseName", courseName);
retMap.put("numberList", numberList);
retMap.put("rangeList", rangeStringList);
retMap.put("type", "suceess");
try {
response.getWriter().write(JSONObject.fromObject(retMap).toString());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
private void exportScore(HttpServletRequest request,
HttpServletResponse response) {
// TODO Auto-generated method stub
int studentId = request.getParameter("studentid") == null ? 0 : Integer.parseInt(request.getParameter("studentid").toString());
int courseId = request.getParameter("courseid") == null ? 0 : Integer.parseInt(request.getParameter("courseid").toString());
//获取当前登录用户类型
int userType = Integer.parseInt(request.getSession().getAttribute("userType").toString());
if(userType == 2){
//如果是学生,只能查看自己的信息
Student currentUser = (Student)request.getSession().getAttribute("user");
studentId = currentUser.getId();
}
Score score = new Score();
score.setStudentId(studentId);
score.setCourseId(courseId);
try {
response.setHeader("Content-Disposition", "attachment;filename="+URLEncoder.encode("score_list_sid_"+studentId+"_cid_"+courseId+".xls", "UTF-8"));
response.setHeader("Connection", "close");
response.setHeader("Content-Type", "application/octet-stream");
ServletOutputStream outputStream = response.getOutputStream();
ScoreDao scoreDao = new ScoreDao();
List<Map<String, Object>> scoreList = scoreDao.getScoreList(score);
scoreDao.closeCon();
HSSFWorkbook hssfWorkbook = new HSSFWorkbook();
HSSFSheet createSheet = hssfWorkbook.createSheet("成绩列表");
HSSFRow createRow = createSheet.createRow(0);
createRow.createCell(0).setCellValue("学生");
createRow.createCell(1).setCellValue("课程");
createRow.createCell(2).setCellValue("成绩");
createRow.createCell(3).setCellValue("备注");
//实现将数据装入到excel文件中
int row = 1;
for(Map<String, Object> entry:scoreList){
createRow = createSheet.createRow(row++);
createRow.createCell(0).setCellValue(entry.get("studentName").toString());
createRow.createCell(1).setCellValue(entry.get("courseName").toString());
createRow.createCell(2).setCellValue(new Double(entry.get("score")+""));
createRow.createCell(3).setCellValue(entry.get("remark")+"");
}