基于php花店订购管理系统
项目获取请查看文末官网
[java毕业设计项目源码,java毕设下载]基于java(springboot)英语单词学习系统是基于java编程语言,mysql数据库,springboot框架和idea开发工具,本系统分为管理员、用户两个角色,适合作为java毕业设计和java课程设计源码下载进行参考学习。
一.技术环境
jdk版本:1.8
IDE工具:idea
数据库: mysql 8.0
编程语言: Java
后端框架:springboot
前端框架:layui
详细技术:HTML+CSS+JS+JAVA+Mysql+Springboot+layui+Maven
二.项目文件(项目获取请看文末官网)
系统源码+安装视频教程+数据库+安装环境

三.系统功能
基于java(springboot)英语单词学习系统
系统主要分为用户(学生)、和管理员两个角色
用户的主要功能有:
1.用户输入账号密码登录系统,可以注册系统
支持图形验证码登录;注册创建账号;退出登录;基于角色动态加载菜单。
2.用户查看词汇书与单词列表信息,在线进行学习
分页查询词汇书与单词;按书籍编码、词性、单词/中文含义筛选;进入学习与练习页面(基础、综合、翻译)。
3.用户查看自己的学习成绩记录,可以删除或修改
按时间范围与书籍筛选个人成绩;支持成绩新增、修改、删除;查看成绩详情。
4.用户可以查看、修改个人资料信息
查看与修改头像、昵称、联系方式等基本资料;用户中心页面。
5.用户查看个人学习面板信息
加载个人菜单与学习面板;访问学习主界面与面板页面。
6.用户可以查看单词信息,在线播放发音与下载词书
查看单词详情并播放音频发音;下载已导入的词汇书文件;在线作答并进行单词正确性校验。
7.用户查看自己的考试成绩概览,查看统计数据
查看个人成绩概览与统计数据(正确率、时段数据等)。
8.用户可以提交学习成绩记录
提交练习/考试成绩,记录学习结果。
9.用户可以查看系统仪表盘信息
查看仪表盘与静态资源信息(静态菜单、学习入口等)。
10.用户查看修改个人资料信息,修改密码
验证原密码;修改登录密码;更新个人基本信息。
11.用户退出登录
清理会话令牌并安全退出系统。
管理员的主要功能有:
1.管理员输入账号密码登录系统
验证码登录;会话令牌与本地缓存管理;基于角色与菜单的权限控制。
2.词汇书管理:管理员对词汇书进行导入、修改、删除、查询
同教师词汇书管理能力,包含模板导出、文件下载与编码字典。
3.成绩信息管理:管理员对用户成绩进行查询与管理
按书籍与时间范围分页查询全量成绩;新增、修改、删除成绩;查看统计与概览数据。
4.词库管理:管理员对单词信息进行添加,修改,删除,查询
单词增删改查;作答验证;音频文件在线响应。
5.菜单管理:管理员对系统菜单信息进行添加,修改,删除,查询
新增与修改菜单;删除菜单;查询完整菜单树与菜单列表。
6.角色管理:管理员对系统角色进行添加,修改,删除,查询
角色增删改查;为角色授权菜单;查询角色已授权菜单;获取角色ID列表。
7.用户管理:管理员对用户信息进行添加,修改,删除,查询
代注册/新增用户;修改与删除用户;分页查询用户;获取用户ID列表;基于角色控制权限。
8.部门管理:管理员对部门信息进行添加,修改,删除,查询
维护组织部门结构,支持增删改查与分页检索。
9.文件与资源服务:管理员对系统文件提供下载/导出服务
导出词汇书Excel模板;下载已导入词书文件;在线响应单词音频文件。
10.管理员个人信息修改,密码修改
修改管理员个人资料;验证原密码并更新新密码。
11.管理员退出登录
清理会话令牌并安全退出。
四.代码示例
package com.lmu.controller;
/**
* 和登陆有关的都在这里
*/
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
import com.lmu.model.Role;
import com.lmu.model.User;
import com.lmu.service.RoleService;
import com.lmu.service.UserService;
import com.lmu.utils.JsonUtils;
import com.lmu.utils.UserUtils;
import org.apache.commons.collections.map.HashedMap;
import org.apache.struts2.ServletActionContext;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
@Controller("loginController")
@Scope("prototype")
public class LoginController extends ActionSupport {
@Autowired
private UserService userService;
@Autowired
private RoleService roleService;
private User user;
private Map<String, Object> map = new HashMap();
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
public UserService getUserService() {
return userService;
}
public void setUserService(UserService userService) {
this.userService = userService;
}
/**
* 用户登陆
* @return
*/
public void index() throws IOException {
User user1 = userService.getUser(user);
if (user1 != null){
if (user1.getIsSh() == 1){
if (user1.getRole().getEnName().equals("admin")){
ActionContext.getContext().getSession().put("user", user1);
}
if (user1.getRole().getEnName().equals("js")){
ActionContext.getContext().getSession().put("user1", user1);
}
if (user1.getRole().getEnName().equals("xs")){
ActionContext.getContext().getSession().put("user2", user1);
}
map.put("flag", 1);
map.put("url", "login_indexs.do");
map.put("id", user1.getId());
JsonUtils.toJson(map);
} else {
map.put("flag", 2);
JsonUtils.toJson(map);
}
} else {
map.put("flag", 3);
JsonUtils.toJson(map);
}
}
public String indexs() throws IOException {
User u = UserUtils.getUser();
if (u != null){
ActionContext.getContext().put("user", u);
String ss = u.getRole().getEnName();
ActionContext.getContext().put("role", u.getRole().getEnName());
}
return SUCCESS;
}
//登陆页面
public String login() {
return SUCCESS;
}
//退出
public String tuichu() {
ActionContext ac = ActionContext.getContext();
Map session = ac.getSession();
session.remove("userName");
session.remove("userId");
ServletActionContext.getRequest().getSession().invalidate();
return "login";
}
}
package com.lmu.controller;
/**
* 用户新增
*/
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;
import com.lmu.model.Role;
import com.lmu.model.User;
import com.lmu.service.RoleService;
import com.lmu.service.UserService;
import com.lmu.utils.JsonUtils;
import com.lmu.utils.Pager;
import com.lmu.utils.UserUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;
import java.awt.event.FocusEvent;
import java.io.IOException;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
@Controller("userController")
@Scope("prototype")
public class UserController extends ActionSupport implements ModelDriven<User> {
@Autowired
private UserService userService;
@Autowired
private RoleService roleService;
private User user;
private Integer userId;
private Map<String, Object> map = new HashMap();
/**
* list
*
* @return
*/
public String list() throws IOException {
User user1 = UserUtils.getUser();
if (user1 == null || user1.getId() == null){
ActionContext.getContext().put("login", 1);
return SUCCESS;
}
Pager<User> pagers = null;
Role role = user1.getRole();
if (role.getEnName().equals("admin")) {
pagers = userService.getList(user);
ActionContext.getContext().put("pagers", pagers);
ActionContext.getContext().put("user", user1);
ActionContext.getContext().put("role", role);
ActionContext.getContext().put("bean", user);
return SUCCESS;
} else if (role.getEnName().equals("xs") || role.getEnName().equals("js")) {
pagers = userService.getList(user1);
ActionContext.getContext().put("pagers", pagers);
ActionContext.getContext().put("bean", user);
return SUCCESS;
}
return null;
}
/**
* 跳转add
*
* @return
*/
public String add() {
Pager<Role> pagers = roleService.pagers();
ActionContext.getContext().put("pagers", pagers);
return SUCCESS;
}
/**
* 查询修改
*
* @return
*/
public String edit() {
User bean = userService.findById(userId);
Pager<Role> pagers = roleService.pagers();
ActionContext.getContext().put("bean", bean);
ActionContext.getContext().put("pagers", pagers);
return SUCCESS;
}
/**
* 审核
*
* @return
*/
public void updateSh() throws IOException {
user.setIsSh(1);
userService.updates(user);
map.put("flag", true);
map.put("url", "user_list.do");
JsonUtils.toJson(map);
}
/**
* 更新
*
* @return
*/
public String update() throws IOException {
if (user.getPass().equals("")){
user.setPass(null);
}
userService.updates(user);
map.put("flag", true);
map.put("url", "user_list.do");
JsonUtils.toJson(map);
return SUCCESS;
}
/**
* 保存
*
* @return
*/
public void save() throws IOException {
if (userService.getUser(user) != null){
map.put("flag", false);
map.put("url", "login_login.do");
JsonUtils.toJson(map);
} else {
user.setTime(new Date());
userService.save(user);
map.put("flag", true);
map.put("url", "login_login.do");
JsonUtils.toJson(map);
}
}
public void delete() throws IOException {
User user1 = userService.findById(userId);
user1.setIsDelete(1);
userService.update(user1);
map.put("flag", true);
map.put("url", "user_list.do");
JsonUtils.toJson(map);
}
@Override
public User getModel() {
if (user == null) {
user = new User();
}
return user;
}
public Integer getUserId() {
return userId;
}
public void setUserId(Integer userId) {
this.userId = userId;
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
}
五.项目截图











265

被折叠的 条评论
为什么被折叠?



