基于javaweb+mysql的jsp+servlet在线考试系统(java+jsp+servlet+mysql)
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
网络考试系统主要用于实现高校在线考试,基本功能包括:自动组卷、试卷发布、试卷批阅、试卷成绩统计等。本系统结构如下:
后台管理员:系统功能、用户、角色、题目管理、试卷管理、
后台教师:题目管理、试卷管理
前台学生:查看试题、答题、查看错题
后台管理员
后台教师
前台学生
技术框架
JSP Servlet MySQL JDBC Tomcat jQuery Bootstrap
基于javaweb+mysql的JSP+Servlet在线考试系统(java+jsp+servlet+mysql)
* @param request
* @param response
*//*
private void addsubject(HttpServletRequest request, HttpServletResponse response) {
Subject subject = new Subject();
try {
BeanUtils.populate(subject,request.getParameterMap());
Integer rtn = service.addsubject(subject);
if(rtn>0){
response.sendRedirect(Tools.Basepath(request, response)+"sys/subject?cmd=list");
}else{
request.setAttribute("msg", "增加试题功能失败或请不要添加相同试题!");
request.getRequestDispatcher("/sys/subject/add.jsp").forward(request, response);
}
} catch (Exception e) {
e.printStackTrace();
}
}
*/
private void StudentPaperList(HttpServletRequest request, HttpServletResponse response) {
Studentpaper studentpaper = new Studentpaper();
Integer userid = (Integer) request.getSession().getAttribute("userid");
studentpaper.setUserid(userid);
List<Studentpaper> papers = service.StudentPaperList(studentpaper);
request.setAttribute("papers", papers);
try {
request.getRequestDispatcher("/user/paper/studentpaper.jsp").forward(request, response);
} catch (ServletException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
package com.demo.sys.servlets;
/**
* 获取角色列表
* @param request
* @param response
* @throws IOException
* @throws ServletException
*/
private void list(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String sname = request.getParameter("sname");
Sysrole role = new Sysrole();
if(sname!=null && !sname.equals("")){
role.setRolename(sname);
}
PageControl pc = new PageControl();
Integer currindex = 1;
if(request.getParameter("index")!=null){
currindex = Integer.parseInt(request.getParameter("index"));
}
pc.setCurrentindex(currindex);
//pc.setPagesize(5);
Pager<Sysrole> pager = service.list(role, pc);
request.setAttribute("pager", pager);
request.getRequestDispatcher("/sys/role/list.jsp").forward(request, response);
}
/**
* 修改角色功能
* @param request
* @param response
*/
private void edit(HttpServletRequest request, HttpServletResponse response) {
Sysrole role = new Sysrole();
try {
BeanUtils.populate(role, request.getParameterMap());
Integer rtn = service.edit(role);
if(rtn>0){
response.sendRedirect(Tools.Basepath(request, response)+"sys/role?cmd=list");
}else{
HttpServletResponse response) throws ServletException, IOException {
Studentpaper studentpaper = new Studentpaper();
PageControl pc = new PageControl();
Integer currindex = 1;
if(request.getParameter("index")!=null){
currindex = Integer.parseInt(request.getParameter("index"));
}
pc.setCurrentindex(currindex);
//pc.setPagesize(5);
studentpaper.setUserid((Integer) request.getSession().getAttribute("userid"));
studentpaper.setSpid(request.getParameter("spid"));
Pager<Subject> pager = service.list(studentpaper, pc);
request.setAttribute("pager", pager);
request.getRequestDispatcher("/user/paper/studenterror.jsp").forward(request, response);
}
/**
* 增加试题功能
* @param request
* @param response
*//*
private void addsubject(HttpServletRequest request, HttpServletResponse response) {
Subject subject = new Subject();
try {
BeanUtils.populate(subject,request.getParameterMap());
Integer rtn = service.addsubject(subject);
if(rtn>0){
response.sendRedirect(Tools.Basepath(request, response)+"sys/subject?cmd=list");
}else{
request.setAttribute("msg", "增加试题功能失败或请不要添加相同试题!");
request.getRequestDispatcher("/sys/subject/add.jsp").forward(request, response);
}
} catch (Exception e) {
e.printStackTrace();
}
}
*/
private void StudentPaperList(HttpServletRequest request, HttpServletResponse response) {
Studentpaper studentpaper = new Studentpaper();
Integer userid = (Integer) request.getSession().getAttribute("userid");
studentpaper.setUserid(userid);
List<Studentpaper> papers = service.StudentPaperList(studentpaper);
request.setAttribute("papers", papers);
try {
request.getRequestDispatcher("/user/paper/studentpaper.jsp").forward(request, response);
} catch (ServletException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
if(user==null){
request.setAttribute("msg", "用户名密码错误");
request.getRequestDispatcher("/login.jsp").forward(request, response);
return;
}else{
HttpSession session = request.getSession(true);
session.setAttribute("user", user);
session.setAttribute("userid", user.getUserid());
index(request, response);
// request.getRequestDispatcher("/sys/user?cmd=init").forward(request, response);
}
}
}
package com.demo.sys.servlets;
public class RoleServlet extends HttpServlet {
IRoleService service = new RoleService();
@Override
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String cmd = request.getParameter("cmd");
paper.setPname(pname);
List<Subject> subjects = service.subjectlist(paper);
request.setAttribute("subjects", subjects);
request.getRequestDispatcher("/sys/paper/subjects.jsp").forward(request, response);
}
}
package com.demo.common.filters;
public class LoginFilter implements Filter {
public void destroy() {
// TODO Auto-generated method stub
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
// TODO Auto-generated method stub
HttpServletRequest req = (HttpServletRequest)request;
HttpServletResponse rsp = (HttpServletResponse)response;
HttpSession session = req.getSession();
if(session==null || session.getAttribute("user")==null){
//处理未登陆问题。重定向到登陆页面
//String path = req.getContextPath();
//String basePath = req.getScheme()+"://"+req.getServerName()+":"+req.getServerPort()+path+"/";
rsp.sendRedirect("/projdemo/login.jsp");
return;
}
else{
System.out.println("成功执行操作");
* 初始化主页
* @param request
* @param response
*/
private void initpage(HttpServletRequest request, HttpServletResponse response) {
HttpSession session = request.getSession(true);
Sysuser user = (Sysuser)session.getAttribute("user");
List<SysFunction> list = service.initpage(user);
try {
request.setAttribute("list", list);
RequestDispatcher rds=request.getRequestDispatcher("/index.jsp");
rds.forward(request, response);
return;
//request.getRequestDispatcher("/index.jsp").forward(request, response);
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 用户登陆
* @param request
* @param response
* @throws IOException
* @throws ServletException
*/
private void login(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Sysuser user = new Sysuser();
user.setUsername(request.getParameter("username"));
user.setUserpwd(request.getParameter("userpwd"));
user = service.login(user);
if(user==null){
request.setAttribute("msg", "用户名密码错误");
request.getRequestDispatcher("/login.jsp").forward(request, response);
return;
}else{
HttpSession session = request.getSession(true);
session.setAttribute("user", user);
initpage(request, response);
//request.getRequestDispatcher("/sys/user?cmd=init").forward(request, response);
}
}
/**
* 学生获取试题内容
* @param request
* @param response
* @throws IOException
* @throws ServletException
*/
private void paper(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
*/
private void initpage(HttpServletRequest request, HttpServletResponse response) {
HttpSession session = request.getSession(true);
Sysuser user = (Sysuser)session.getAttribute("user");
List<SysFunction> list = service.initpage(user);
try {
request.setAttribute("list", list);
RequestDispatcher rds=request.getRequestDispatcher("/index.jsp");
rds.forward(request, response);
return;
//request.getRequestDispatcher("/index.jsp").forward(request, response);
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 用户登陆
* @param request
* @param response
* @throws IOException
* @throws ServletException
*/
private void login(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Sysuser user = new Sysuser();
user.setUsername(request.getParameter("username"));
user.setUserpwd(request.getParameter("userpwd"));
user = service.login(user);
if(user==null){
request.setAttribute("msg", "用户名密码错误");
request.getRequestDispatcher("/login.jsp").forward(request, response);
return;
}else{
HttpSession session = request.getSession(true);
session.setAttribute("user", user);
initpage(request, response);
//request.getRequestDispatcher("/sys/user?cmd=init").forward(request, response);
}
}
/**
* 学生获取试题内容
* @param request
* @param response
* @throws IOException
* @throws ServletException
*/
private void paper(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
request.setAttribute("role", role);
request.getRequestDispatcher("/sys/role/right.jsp").forward(request, response);
}
/**
* 新增角色
* @param request
* @param response
*/
private void add(HttpServletRequest request, HttpServletResponse response) {
Sysrole role = new Sysrole();
try {
BeanUtils.populate(role, request.getParameterMap());
Integer rtn = service.add(role);
if(rtn>0){
response.sendRedirect(Tools.Basepath(request, response)+"sys/role?cmd=list");
}else{
request.setAttribute("msg", "保存角色失败");
request.getRequestDispatcher("/sys/role/add.jsp").forward(request, response);
}
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 获取角色列表
* @param request
* @param response
* @throws IOException
* @throws ServletException
*/
private void list(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String sname = request.getParameter("sname");
Sysrole role = new Sysrole();
if(sname!=null && !sname.equals("")){
role.setRolename(sname);
}
PageControl pc = new PageControl();
Integer currindex = 1;
if(request.getParameter("index")!=null){
public class RoleServlet extends HttpServlet {
IRoleService service = new RoleService();
@Override
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String cmd = request.getParameter("cmd");
if(cmd.equals("list")){
list(request,response);
}else if(cmd.equals("add")){
add(request,response);
}else if(cmd.equals("initrole")){
initrole(request,response);
}else if(cmd.equals("saveright")){
saveright(request,response);
}else if(cmd.equals("toedit")){
toedit(request,response);
}else if(cmd.equals("edit")){
edit(request,response);
}
}
/**
* 保存角色权限
* @param request
* @param response
* @throws IOException
* @throws ServletException
*/
private void saveright(HttpServletRequest request,
HttpServletResponse response) throws IOException, ServletException {
String[] funids = request.getParameterValues("ckrr");
String roleid = request.getParameter("roleid");
Integer rtn = service.saveright(roleid, funids);
if(rtn>0){
response.sendRedirect(Tools.Basepath(request, response)+"sys/role?cmd=list");
@Override
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String cmd = request.getParameter("cmd");
if(cmd.equals("list")){
list(request,response);
}else if(cmd.equals("add")){
add(request,response);
}else if(cmd.equals("initrole")){
initrole(request,response);
}else if(cmd.equals("saveright")){
saveright(request,response);
}else if(cmd.equals("toedit")){
toedit(request,response);
}else if(cmd.equals("edit")){
edit(request,response);
}
}
/**
* 保存角色权限
* @param request
* @param response
* @throws IOException
* @throws ServletException
*/
private void saveright(HttpServletRequest request,
HttpServletResponse response) throws IOException, ServletException {
String[] funids = request.getParameterValues("ckrr");
String roleid = request.getParameter("roleid");
Integer rtn = service.saveright(roleid, funids);
if(rtn>0){
response.sendRedirect(Tools.Basepath(request, response)+"sys/role?cmd=list");
}else{
request.setAttribute("msg", "保存角色权限失败");
request.getRequestDispatcher("/error.jsp").forward(request, response);
}
}
/**
* 初始化权限分配页面
* @param request
* @param response
* @throws IOException
* @throws ServletException
*/
private void initrole(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
Sysrole role = new Sysrole();
role.setRoleid(Integer.parseInt(request.getParameter("roleid")));
throws ServletException, IOException {
String cmd= request.getParameter("cmd");
if(cmd.equals("paperlist")){
index(request,response);
}else if(cmd.equals("login")){
login(request,response);
}else if(cmd.equals("init")){
initpage(request,response);
}else if(cmd.equals("logout")){
logout(request,response);
}else if(cmd.equals("list")){
list(request,response);
}else if(cmd.equals("add")){
add(request,response);
}else if(cmd.equals("toedit")){
toedit(request,response);
}else if(cmd.equals("edit")){
edit(request,response);
}else if(cmd.equals("toeditpwd")){
toeditpwd(request,response);
}else if(cmd.equals("editpwd")){
editpwd(request,response);
}else if(cmd.equals("paper")){
paper(request,response);
}else if(cmd.equals("stulogin")){
stulogin(request,response);
}else if(cmd.equals("answer")){
answer(request,response);
}
}
/**
* 跳转首页
* @param request
* @param response
*/
private void index(HttpServletRequest request, HttpServletResponse response) {
Paper paper = new Paper();
//String pname = request.getParameter("pname");
//paper.setPname(pname);
List<Paper> papers = paperService.list(paper);
request.setAttribute("papers", papers);
request.getRequestDispatcher("/error.jsp").forward(request, response);
}
}
/**
* 查询功能列表
* @param request
* @param response
* @throws IOException
* @throws ServletException
*/
private void funlist(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
String sname = request.getParameter("sname");
SysFunction fun = new SysFunction();
if(sname!=null && !sname.equals("")){
fun.setFunname(sname);
}
PageControl pc = new PageControl();
Integer currindex = 1;
if(request.getParameter("index")!=null){
currindex = Integer.parseInt(request.getParameter("index"));
}
pc.setCurrentindex(currindex);
//pc.setPagesize(5);
Pager<SysFunction> pager = service.list(fun, pc);
request.setAttribute("pager", pager);
request.getRequestDispatcher("/sys/function/list.jsp").forward(request, response);
}
/**
* 增加系统功能
* @param request
* @param response
*/
private void addfun(HttpServletRequest request, HttpServletResponse response) {
SysFunction fun = new SysFunction();
try {
BeanUtils.populate(fun,request.getParameterMap());
/**
* 获取用户列表
* @param request
* @param response
* @throws IOException
* @throws ServletException
* @throws IOException
* @throws ServletException
*/
private void list(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
String sname = request.getParameter("sname");
Sysuser user = new Sysuser();
if(sname!=null && !sname.equals("")){
user.setUsername(sname);
}
PageControl pc = new PageControl();
Integer currindex = 1;
if(request.getParameter("index")!=null){
currindex = Integer.parseInt(request.getParameter("index"));
}
pc.setCurrentindex(currindex);
//pc.setPagesize(5);
Pager<Sysuser> pager = service.list(user, pc);
request.setAttribute("pager", pager);
request.getRequestDispatcher("/sys/user/list.jsp").forward(request, response);
}
/**
* 注销
* @param request
* @param response
* @throws IOException
*/
private void logout(HttpServletRequest request, HttpServletResponse response) throws IOException {
HttpSession session = request.getSession();
session.removeAttribute("user");
response.sendRedirect(Tools.Basepath(request, response)+"login.jsp");
}
* @param request
* @param response
* @throws IOException
* @throws ServletException
*/
private void list(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
Studentpaper studentpaper = new Studentpaper();
PageControl pc = new PageControl();
Integer currindex = 1;
if(request.getParameter("index")!=null){
currindex = Integer.parseInt(request.getParameter("index"));
}
pc.setCurrentindex(currindex);
//pc.setPagesize(5);
studentpaper.setUserid((Integer) request.getSession().getAttribute("userid"));
studentpaper.setSpid(request.getParameter("spid"));
Pager<Subject> pager = service.list(studentpaper, pc);
request.setAttribute("pager", pager);
request.getRequestDispatcher("/user/paper/studenterror.jsp").forward(request, response);
}
/**
* 增加试题功能
* @param request
* @param response
*//*
private void addsubject(HttpServletRequest request, HttpServletResponse response) {
Subject subject = new Subject();
try {
BeanUtils.populate(subject,request.getParameterMap());
Integer rtn = service.addsubject(subject);
if(rtn>0){
response.sendRedirect(Tools.Basepath(request, response)+"sys/subject?cmd=list");
}else{
request.setAttribute("msg", "增加试题功能失败或请不要添加相同试题!");
request.getRequestDispatcher("/sys/subject/add.jsp").forward(request, response);
}
} catch (Exception e) {
e.printStackTrace();
}
}
*/
private void StudentPaperList(HttpServletRequest request, HttpServletResponse response) {
Paper paper = new Paper();
try {
BeanUtils.populate(paper,request.getParameterMap());
Integer rtn = service.addpaper(paper) ;
if(rtn>0){
response.sendRedirect(Tools.Basepath(request, response)+"sys/paper?cmd=list");
}else{
request.setAttribute("msg", "增加试题功能失败!");
request.getRequestDispatcher("/sys/paper/add.jsp").forward(request, response);
}
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 查询试题列表
* @param request
* @param response
* @throws IOException
* @throws ServletException
*/
private void list(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
String pname = request.getParameter("pname");
Paper paper = new Paper();
if(pname!=null && !pname.equals("")){
paper.setPname(pname);
}
PageControl pc = new PageControl();
Integer currindex = 1;
if(request.getParameter("index")!=null){
currindex = Integer.parseInt(request.getParameter("index"));
}
pc.setCurrentindex(currindex);
//pc.setPagesize(5);
Pager<Paper> pager = service.list(paper, pc);
// System.out.println(pager.getList());;
request.setAttribute("pager", pager);
request.getRequestDispatcher("/sys/paper/list.jsp").forward(request, response);
}
private void slist(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
Paper paper = new Paper();
String pname = new String(request.getParameter("pname").getBytes("utf-8"), "utf-8");
paper.setPname(pname);
List<Subject> subjects = service.subjectlist(paper);
request.setAttribute("subjects", subjects);
request.getRequestDispatcher("/sys/paper/subjects.jsp").forward(request, response);
}
if(rtn>0){
response.sendRedirect(Tools.Basepath(request, response)+"sys/user?cmd=list");
}else{
request.setAttribute("msg", "保存用户失败!");
request.getRequestDispatcher("/sys/user/editpwd.jsp").forward(request, response);
}
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 用户初始化密码修改页面
* @param request
* @param response
* @throws IOException
* @throws ServletException
* @throws IOException
* @throws ServletException
*/
private void toeditpwd(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
Sysuser user = new Sysuser();
user.setUserid(Integer.parseInt(request.getParameter("id")));
user = service.detail(user);
if(user!=null){
request.setAttribute("user",user);
request.getRequestDispatcher("/sys/user/editpwd.jsp").forward(request, response);
}else{
request.setAttribute("msg", "需要修改的用户不存在。");
request.getRequestDispatcher("/error.jsp").forward(request, response);
}
}
/**
* 新增用户
* @param request
* @param response
*/
private void add(HttpServletRequest request, HttpServletResponse response) {
// TODO Auto-generated method stub
Sysuser user = new Sysuser();
try {
BeanUtils.populate(user, request.getParameterMap());
Integer rtn = service.add(user);
if(rtn>0){
response.sendRedirect(Tools.Basepath(request, response)+"sys/user?cmd=list");
}else{
request.setAttribute("msg", "添加用户失败或请不要再重复添加");
request.getRequestDispatcher("/sys/user/add.jsp").forward(request, response);
}
} catch (Exception e) {
e.printStackTrace();
}
* @param request
* @param response
* @throws IOException
* @throws ServletException
*/
private void toedit(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Sysrole role = new Sysrole();
role.setRoleid(Integer.parseInt(request.getParameter("id")));
role = service.detail(role);
if(role!=null){
request.setAttribute("item",role);
request.getRequestDispatcher("/sys/role/edit.jsp").forward(request, response);
}else{
request.setAttribute("msg", "需要修改的角色功能不存在。");
request.getRequestDispatcher("/error.jsp").forward(request, response);
}
}
}
package com.demo.sys.servlets;
public class StudentpaperServlet extends HttpServlet {
IStudentpaperService service = new StudentpaperService();
@Override
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String cmd = request.getParameter("cmd");
// if(cmd.equals("add")){
// add(request,response);
// }
role.setRoleid(Integer.parseInt(request.getParameter("roleid")));
List<SysFunction> list = service.initfunlist(role);
request.setAttribute("list",list);
role = service.detail(role);
request.setAttribute("role", role);
request.getRequestDispatcher("/sys/role/right.jsp").forward(request, response);
}
/**
* 新增角色
* @param request
* @param response
*/
private void add(HttpServletRequest request, HttpServletResponse response) {
Sysrole role = new Sysrole();
try {
BeanUtils.populate(role, request.getParameterMap());
Integer rtn = service.add(role);
if(rtn>0){
response.sendRedirect(Tools.Basepath(request, response)+"sys/role?cmd=list");
}else{
request.setAttribute("msg", "保存角色失败");
request.getRequestDispatcher("/sys/role/add.jsp").forward(request, response);
}
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 获取角色列表
* @param request
* @param response
* @throws IOException
* @throws ServletException
*/
private void list(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String sname = request.getParameter("sname");
Sysrole role = new Sysrole();
if(sname!=null && !sname.equals("")){
role.setRolename(sname);
* @throws IOException
* @throws ServletException
* @throws IOException
* @throws ServletException
*/
private void toeditpwd(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
Sysuser user = new Sysuser();
user.setUserid(Integer.parseInt(request.getParameter("id")));
user = service.detail(user);
if(user!=null){
request.setAttribute("user",user);
request.getRequestDispatcher("/sys/user/editpwd.jsp").forward(request, response);
}else{
request.setAttribute("msg", "需要修改的用户不存在。");
request.getRequestDispatcher("/error.jsp").forward(request, response);
}
}
/**
* 新增用户
* @param request
* @param response
*/
private void add(HttpServletRequest request, HttpServletResponse response) {
// TODO Auto-generated method stub
Sysuser user = new Sysuser();
try {
BeanUtils.populate(user, request.getParameterMap());
Integer rtn = service.add(user);
if(rtn>0){
response.sendRedirect(Tools.Basepath(request, response)+"sys/user?cmd=list");
}else{
request.setAttribute("msg", "添加用户失败或请不要再重复添加");
request.getRequestDispatcher("/sys/user/add.jsp").forward(request, response);
}
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 获取用户列表
* @param request
* @param response
* @throws IOException
if(sname!=null && !sname.equals("")){
fun.setFunname(sname);
}
PageControl pc = new PageControl();
Integer currindex = 1;
if(request.getParameter("index")!=null){
currindex = Integer.parseInt(request.getParameter("index"));
}
pc.setCurrentindex(currindex);
//pc.setPagesize(5);
Pager<SysFunction> pager = service.list(fun, pc);
request.setAttribute("pager", pager);
request.getRequestDispatcher("/sys/function/list.jsp").forward(request, response);
}
/**
* 增加系统功能
* @param request
* @param response
*/
private void addfun(HttpServletRequest request, HttpServletResponse response) {
SysFunction fun = new SysFunction();
try {
BeanUtils.populate(fun,request.getParameterMap());
Integer rtn = service.addfun(fun);
if(rtn>0){
response.sendRedirect(Tools.Basepath(request, response)+"sys/fun?cmd=list");
}else{
request.setAttribute("msg", "保存系统功能失败!");
request.getRequestDispatcher("/sys/function/add.jsp").forward(request, response);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
* @param request
* @param response
* @throws IOException
* @throws ServletException
*/
private void list(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
Studentpaper studentpaper = new Studentpaper();
PageControl pc = new PageControl();
Integer currindex = 1;
if(request.getParameter("index")!=null){
currindex = Integer.parseInt(request.getParameter("index"));
}
pc.setCurrentindex(currindex);
//pc.setPagesize(5);
studentpaper.setUserid((Integer) request.getSession().getAttribute("userid"));
studentpaper.setSpid(request.getParameter("spid"));
Pager<Subject> pager = service.list(studentpaper, pc);
request.setAttribute("pager", pager);
request.getRequestDispatcher("/user/paper/studenterror.jsp").forward(request, response);
}
/**
* 增加试题功能
* @param request
* @param response
*//*
private void addsubject(HttpServletRequest request, HttpServletResponse response) {
Subject subject = new Subject();
try {
BeanUtils.populate(subject,request.getParameterMap());
Integer rtn = service.addsubject(subject);
if(rtn>0){
response.sendRedirect(Tools.Basepath(request, response)+"sys/subject?cmd=list");
}else{
request.setAttribute("msg", "增加试题功能失败或请不要添加相同试题!");
request.getRequestDispatcher("/sys/subject/add.jsp").forward(request, response);
}
} catch (Exception e) {
// TODO Auto-generated method stub
String sname = request.getParameter("sname");
Sysuser user = new Sysuser();
if(sname!=null && !sname.equals("")){
user.setUsername(sname);
}
PageControl pc = new PageControl();
Integer currindex = 1;
if(request.getParameter("index")!=null){
currindex = Integer.parseInt(request.getParameter("index"));
}
pc.setCurrentindex(currindex);
//pc.setPagesize(5);
Pager<Sysuser> pager = service.list(user, pc);
request.setAttribute("pager", pager);
request.getRequestDispatcher("/sys/user/list.jsp").forward(request, response);
}
/**
* 注销
* @param request
* @param response
* @throws IOException
*/
private void logout(HttpServletRequest request, HttpServletResponse response) throws IOException {
HttpSession session = request.getSession();
session.removeAttribute("user");
response.sendRedirect(Tools.Basepath(request, response)+"login.jsp");
}
/**
* 初始化主页
* @param request
* @param response
*/
private void initpage(HttpServletRequest request, HttpServletResponse response) {
HttpSession session = request.getSession(true);
Sysuser user = (Sysuser)session.getAttribute("user");
List<SysFunction> list = service.initpage(user);
}
/**
* 学生登陆
* @param request
* @param response
* @throws IOException
* @throws ServletException
*/
private void stulogin(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Sysuser user = new Sysuser();
user.setUsername(request.getParameter("username"));
user.setUserpwd(request.getParameter("userpwd"));
user = service.stulogin(user);
if(user==null){
request.setAttribute("msg", "用户名密码错误");
request.getRequestDispatcher("/login.jsp").forward(request, response);
return;
}else{
HttpSession session = request.getSession(true);
session.setAttribute("user", user);
session.setAttribute("userid", user.getUserid());
index(request, response);
// request.getRequestDispatcher("/sys/user?cmd=init").forward(request, response);
}
}
}
package com.demo.sys.servlets;
paper.setPname(pname);
}
PageControl pc = new PageControl();
Integer currindex = 1;
if(request.getParameter("index")!=null){
currindex = Integer.parseInt(request.getParameter("index"));
}
pc.setCurrentindex(currindex);
//pc.setPagesize(5);
Pager<Paper> pager = service.list(paper, pc);
// System.out.println(pager.getList());;
request.setAttribute("pager", pager);
request.getRequestDispatcher("/sys/paper/list.jsp").forward(request, response);
}
private void slist(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
Paper paper = new Paper();
String pname = new String(request.getParameter("pname").getBytes("utf-8"), "utf-8");
paper.setPname(pname);
List<Subject> subjects = service.subjectlist(paper);
request.setAttribute("subjects", subjects);
request.getRequestDispatcher("/sys/paper/subjects.jsp").forward(request, response);
}
}
package com.demo.common.filters;
public class LoginFilter implements Filter {
public void destroy() {
// TODO Auto-generated method stub
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
// TODO Auto-generated method stub
HttpServletRequest req = (HttpServletRequest)request;
HttpServletResponse rsp = (HttpServletResponse)response;
HttpSession session = req.getSession();
if(session==null || session.getAttribute("user")==null){
//处理未登陆问题。重定向到登陆页面
}else if(cmd.equals("edit")){
edit(request,response);
}
}
/**
* 保存角色权限
* @param request
* @param response
* @throws IOException
* @throws ServletException
*/
private void saveright(HttpServletRequest request,
HttpServletResponse response) throws IOException, ServletException {
String[] funids = request.getParameterValues("ckrr");
String roleid = request.getParameter("roleid");
Integer rtn = service.saveright(roleid, funids);
if(rtn>0){
response.sendRedirect(Tools.Basepath(request, response)+"sys/role?cmd=list");
}else{
request.setAttribute("msg", "保存角色权限失败");
request.getRequestDispatcher("/error.jsp").forward(request, response);
}
}
/**
* 初始化权限分配页面
* @param request
* @param response
* @throws IOException
* @throws ServletException
*/
private void initrole(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
Sysrole role = new Sysrole();
role.setRoleid(Integer.parseInt(request.getParameter("roleid")));
List<SysFunction> list = service.initfunlist(role);
request.setAttribute("list",list);
public class RoleServlet extends HttpServlet {
IRoleService service = new RoleService();
@Override
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String cmd = request.getParameter("cmd");
if(cmd.equals("list")){
list(request,response);
}else if(cmd.equals("add")){
add(request,response);
}else if(cmd.equals("initrole")){
initrole(request,response);
}else if(cmd.equals("saveright")){
saveright(request,response);
}else if(cmd.equals("toedit")){
toedit(request,response);
}else if(cmd.equals("edit")){
edit(request,response);
}
}
/**
* 保存角色权限
* @param request