Java基于SpringBoot的 +Vue停车场管理系统
项目截图







Java语言介绍
Java语言是目前最受欢迎的一种高级语言,它是一种类 C的语言,将 C和 C++的优势结合在一起,但又舍弃了各自的劣势,在 Java语言中,所有的东西都是对象。这使得 Java语言的开发工作变得更为高效。Java语言所依靠的开发环境中,最重要的一部分就是 JDK,只要使用安转 JDK,就可以将所有 Java语言的撰写工作全部完成。不过,为了提升开发效率,许多大型的软件公司都向用户提供了更为便利的可视化开发工具,其中比较有名的就是 Eclipse和 IDEA。
Java语言不但可以开发系统,还可以开发网站和硬件设备所需的程序,具有很高的可迁移性,在各种操作系统甚至手机上都可以很有效的运行,这是其它语言没有的。
在 Java应用范围日益扩展的同时,许多研究者也加入到了 Java的框架中,如 SSH、 SSM等;SSM、 Springclud以及其他更多的 Java框架已经成为了现在的主流。另外, Java作为一种开放源码和自由使用的语言,在广发的开发者中也颇受欢迎。
Spring Boot 框架介绍
基于Java语言开发的一个开源框架,在企业环境中被广泛采用以提高应用性能并增强可靠性。该框架由Pivotal团队开发,并为开发者提供了快速构建高性能应用的能力。Spring Boot通过自动配置减少不必要的配置步骤,并集成多种功能模块如安全机制、数据库访问工具等以提升应用性能;此外它还支持微服务架构与云计算技术满足现代企业对复杂需求的各种要求;对于初学者也提供了基础教程帮助他们快速掌握核心概念与实践技巧
MySQL数据库介绍
本系统在选择数据库时优先考虑了MySQL。首先相较于其他主流数据库如SQL Server和Oracle MySQL以其小巧轻便的特点使其易于部署与管理其安装配置及维护过程相对更为简便。此外 MySQL提供了丰富但易于掌握的功能以及标准化的SQL语法体系这使得开发人员能够快速上手并能够更加方便地进行开发工作。 MySQL凭借这些优势现已成为企业级应用及互联网应用中的主流数据库之一并不断优化其性能与稳定性已广泛应用于电子商务金融行业游戏开发以及社交媒体平台等领域综上所述 MySQL小巧轻便的操作特性加上其丰富功能与标准化语法体系以及免费且适用于各种操作系统环境的数据存储解决方案都使其成为了众多项目的首选方案
Vue技术介绍
Vue框架作为基于JavaScript的前端开发框架具有显著的技术优势与应用潜力
核心代码
package sac.mall.controller.admin;
import sac.mall.common.ServiceResultEnum;
import sac.mall.entity.AdminUser;
import sac.mall.service.AdminUserService;
import org.springframework.stereotype.Controller;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
@Controller
@RequestMapping("/admin")
public class AdminController {
@Resource
private AdminUserService adminUserService;
@GetMapping({"/login"})
public String login() {
return "admin/login";
}
@GetMapping({"/test"})
public String test() {
return "admin/test";
}
@GetMapping({"", "/", "/index", "/index.html"})
public String index(HttpServletRequest request) {
request.setAttribute("path", "index");
request.setAttribute("categoryCount", 0);
request.setAttribute("blogCount", 0);
request.setAttribute("linkCount", 0);
request.setAttribute("tagCount", 0);
request.setAttribute("commentCount", 0);
request.setAttribute("path", "index");
return "admin/index";
}
@PostMapping(value = "/login")
public String login(@RequestParam("userName") String userName,
@RequestParam("password") String password,
@RequestParam("verifyCode") String verifyCode,
HttpSession session) {
if (StringUtils.isEmpty(verifyCode)) {
session.setAttribute("errorMsg", "验证码不能为空");
return "admin/login";
}
if (StringUtils.isEmpty(userName) || StringUtils.isEmpty(password)) {
session.setAttribute("errorMsg", "用户名或密码不能为空");
return "admin/login";
}
String kaptchaCode = session.getAttribute("verifyCode") + "";
if (StringUtils.isEmpty(kaptchaCode) || !verifyCode.equals(kaptchaCode)) {
session.setAttribute("errorMsg", "验证码错误");
return "admin/login";
}
AdminUser adminUser = adminUserService.login(userName, password);
if (adminUser != null) {
session.setAttribute("loginUser", adminUser.getNickName());
session.setAttribute("loginUserId", adminUser.getAdminUserId());
//session过期时间设置为7200秒 即两小时
//session.setMaxInactiveInterval(60 * 60 * 2);
return "redirect:/admin/index";
} else {
session.setAttribute("errorMsg", "登陆失败,请联系作者获得测试账号");
return "admin/login";
}
}
@GetMapping("/profile")
public String profile(HttpServletRequest request) {
Integer loginUserId = (int) request.getSession().getAttribute("loginUserId");
AdminUser adminUser = adminUserService.getUserDetailById(loginUserId);
if (adminUser == null) {
return "admin/login";
}
request.setAttribute("path", "profile");
request.setAttribute("loginUserName", adminUser.getLoginUserName());
request.setAttribute("nickName", adminUser.getNickName());
return "admin/profile";
}
@PostMapping("/profile/password")
@ResponseBody
public String passwordUpdate(HttpServletRequest request, @RequestParam("originalPassword") String originalPassword,
@RequestParam("newPassword") String newPassword) {
if (StringUtils.isEmpty(originalPassword) || StringUtils.isEmpty(newPassword)) {
return "参数不能为空";
}
Integer loginUserId = (int) request.getSession().getAttribute("loginUserId");
if (adminUserService.updatePassword(loginUserId, originalPassword, newPassword)) {
//修改成功后清空session中的数据,前端控制跳转至登录页
request.getSession().removeAttribute("loginUserId");
request.getSession().removeAttribute("loginUser");
request.getSession().removeAttribute("errorMsg");
return ServiceResultEnum.SUCCESS.getResult();
} else {
return "修改失败";
}
}
@PostMapping("/profile/name")
@ResponseBody
public String nameUpdate(HttpServletRequest request, @RequestParam("loginUserName") String loginUserName,
@RequestParam("nickName") String nickName) {
if (StringUtils.isEmpty(loginUserName) || StringUtils.isEmpty(nickName)) {
return "参数不能为空";
}
Integer loginUserId = (int) request.getSession().getAttribute("loginUserId");
if (adminUserService.updateName(loginUserId, loginUserName, nickName)) {
return ServiceResultEnum.SUCCESS.getResult();
} else {
return "修改失败";
}
}
@GetMapping("/logout")
public String logout(HttpServletRequest request) {
request.getSession().removeAttribute("loginUserId");
request.getSession().removeAttribute("loginUser");
request.getSession().removeAttribute("errorMsg");
return "admin/login";
}
}
详细视频演示
请联系我获取更详细的演示视频
源码获取
希望得到成品,在我们加入的时候,请您顺手帮忙上传一下本页面标题截图,并附上我的联系方式以便查找对应的源代码。若方便的话,请您顺手帮忙点赞一下!感谢您的关注与支持!
