当前位置: 首页 > news >正文

渭南网站开发贵阳建设网站

渭南网站开发,贵阳建设网站,discuz安装教程,手机网页打不开大家好#xff0c;我是java1234_小锋老师#xff0c;看到一个不错的SpringBootVue图书(图书借阅)管理系统#xff0c;分享下哈。 项目视频演示 【免费】SpringBootVue图书(图书借阅)管理系统 Java毕业设计_哔哩哔哩_bilibili 项目介绍 本论文阐述了一套先进的图书管理系…大家好我是java1234_小锋老师看到一个不错的SpringBootVue图书(图书借阅)管理系统分享下哈。 项目视频演示 【免费】SpringBootVue图书(图书借阅)管理系统 Java毕业设计_哔哩哔哩_bilibili 项目介绍 本论文阐述了一套先进的图书管理系统的设计与实现该系统采用Java语言结合现代Web开发框架和技术旨在为图书馆提供高效、灵活且用户友好的资源管理解决方案。系统利用Spring Boot框架为核心整合MyBatis ORM工具以及MySQL数据库构建了一个高性能、可扩展的后端服务。前端界面则采用了Vue.js框架以提供流畅的用户交互体验。 论文首先进行了详尽的需求分析确定了系统的核心功能包括图书的添加、编辑、删除、查询读者的注册、登录、个人信息管理以及图书的借阅、归还、续借流程。为了确保数据安全与隐私保护系统引入了JWTJSON Web Tokens身份验证方案。 系统设计遵循MVCModel-View-Controller架构原则保证了代码的清晰与可维护性。同时采用了RESTful API设计风格支持跨平台访问使系统能够适应不同类型的客户端设备。为了优化用户体验系统还集成了全文搜索功能允许用户通过关键词快速定位所需图书。 通过一系列的测试与评估包括压力测试、功能测试和用户满意度调查系统表现出了卓越的稳定性和响应速度。实验结果证明新系统极大地提升了图书馆工作人员的工作效率同时也显著增强了读者的满意度和图书馆资源的利用率。 未来工作将着眼于系统功能的持续扩展例如电子图书集成、多语言支持、以及与社交媒体平台的互动以进一步提升图书馆服务的现代化水平。 系统展示 部分代码 package com.rabbiter.bms.web;import com.rabbiter.bms.model.User; import com.rabbiter.bms.service.UserService; import com.rabbiter.bms.utils.MyResult; import com.rabbiter.bms.utils.MyUtils; import com.rabbiter.bms.utils.TokenProcessor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*;import java.util.HashMap; import java.util.List; import java.util.Map;RestController RequestMapping(value /user) public class UserController {AutowiredUserService userService;// 登录RequestMapping(value /login)public MapString, Object login(RequestBody User user) {// 登录User userObj userService.login(user);if(userObj null) { // 账号或密码错误// 返回结果对象return MyResult.getResultMap(420, 账号或密码错误);} else { // 账号密码正确// 创建tokenString token TokenProcessor.getInstance().makeToken();// 保存到RedisuserService.saveUser(token, userObj);// 返回结果对象return MyResult.getResultMap(200, 登录成功,new HashMapString, String(){{ put(token, token); }});}}// 查看用户信息RequestMapping(value /info)public MapString, Object info(String token) {// 从redis中取用户User user userService.getUser(token);if(user null) { // 获取失败return MyResult.getResultMap(420, 获取用户信息失败);} else { // 获取成功return MyResult.getResultMap(200, 获取用户信息成功, user);}}// 退出登录RequestMapping(value /logout)public MapString, Object logout(String token) {// 从redis中移除用户userService.removeUser(token);return MyResult.getResultMap(200, 退出登录成功 );}// 注册RequestMapping(value /register)public Integer register(String username, String password){return userService.register(username, password);}// 修改密码RequestMapping(value {/alterPassword, reader/alterPassword})public Integer alterPassword(Integer userid, String username, Byte isadmin, String oldPassword, String newPassword){//检查旧密码是否正确User userObj new User();userObj.setUserid(userid);userObj.setUsername(username);userObj.setUserpassword(oldPassword);userObj.setIsadmin(isadmin);User user userService.login(userObj);if(user null) { //旧密码不正确return 0;} else { //旧密码正确设置新密码userService.setPassword(userObj.getUserid(), newPassword);return 1;}}// 获得数量GetMapping(value /getCount)public Integer getCount(){return userService.getCount();}// 查询所有用户GetMapping(value /queryUsers)public ListUser queryUsers(){return userService.queryUsers();}// 分页查询用户 params: {page, limit, username}GetMapping(value /queryUsersByPage)public MapString, Object queryUsersByPage(RequestParam MapString, Object params){MyUtils.parsePageParams(params);int count userService.getSearchCount(params);ListUser users userService.searchUsersByPage(params);return MyResult.getListResultMap(0, success, count, users);}// 添加用户PostMapping(value /addUser)public Integer addUser(RequestBody User user){return userService.addUser(user);}// 删除用户DeleteMapping(value /deleteUser)public Integer deleteUser(RequestBody User user){return userService.deleteUser(user);}// 删除一些用户DeleteMapping(value /deleteUsers)public Integer deleteUsers(RequestBody ListUser users){return userService.deleteUsers(users);}// 更新用户RequestMapping(value /updateUser)public Integer updateUser(RequestBody User user){return userService.updateUser(user);} }templatediv classlogin-containerel-form refloginForm :modelloginForm :rulesloginRules classlogin-form auto-completeon label-positionleft!-- 标题 --div classtitle-containerh3 classtitle登录图书管理系统/h3/div!-- 用户名 --el-form-item propusernamespan classsvg-containeri classel-icon-a-052/i/spanel-inputclassyuanrefusernamev-modelloginForm.usernameplaceholder请输入用户名nameusernametypetexttabindex1auto-completeon//el-form-item!-- 密码 --el-form-item proppasswordspan classsvg-containeri classel-icon-a-051/i/spanel-inputclassyuan:keypasswordTyperefpasswordv-modelloginForm.password:typepasswordTypeplaceholder请输入密码namepasswordtabindex2auto-completeonkeyup.enter.nativehandleLogin/span classshow-pwd clickshowPwdsvg-icon :icon-classpasswordType password ? eye : eye-open //span/el-form-item!-- 权限 --el-form-item propauthorityspan classsvg-containeri classel-icon-a-062/i/spanel-select v-modelloginForm.isadmin placeholder请选择 stylewidth: 418pxel-option :key0 label读者 :value0/el-optionel-option :key1 label管理员 :value1/el-option/el-select/el-form-item!-- 登录按钮 --div styleheight: 40px; margin-bottom: 30px;el-button :loadingloading typeprimary stylewidth: 48%; float: left; click.native.preventhandleLogin登录/el-buttonel-button :loadingloading typesuccess stylewidth: 48%; float: right; click.native.preventhandleRegister注册/el-button/divdiv styletext-align: center/div/el-form/div /templatescript export default {name: Login,data() {const validateUsername (rule, value, callback) {callback()}const validatePassword (rule, value, callback) {callback()}return {loginForm: {username: ,password: ,isadmin: 0},loginRules: {username: [{ required: true, trigger: blur, validator: validateUsername }],password: [{ required: true, trigger: blur, validator: validatePassword }]},loading: false,passwordType: password,redirect: undefined}},methods: {showPwd() {if (this.passwordType password) {this.passwordType } else {this.passwordType password}this.$nextTick(() {this.$refs.password.focus()})},handleLogin() {this.$refs.loginForm.validate(valid {if (valid) {this.loading truethis.$store.dispatch(user/login, this.loginForm).then(() {this.$router.push({ path: / }) // 无脑进首页this.loading false}).catch((message) {this.$message.error(message)this.loading false})} else {console.log(不允许提交!)return false}})},handleRegister() {console.log(注册按钮)this.$router.push({ path: /register }) // 进注册页面}} } /scriptstyle langscss /* 修复input 背景不协调 和光标变色 */ /* Detail see https://github.com/PanJiaChen/vue-element-admin/pull/927 */$bg:#283443; $light_gray:#fff; $cursor: #fff;supports (-webkit-mask: none) and (not (cater-color: $cursor)) {.login-container .el-input input {color: $cursor;} }/* reset element-ui css */ .login-container {.el-input.yuan {display: inline-block;height: 47px;width: 85%;input {background: transparent;border: 0px;-webkit-appearance: none;border-radius: 0px;padding: 12px 5px 12px 15px;color: $light_gray;height: 47px;caret-color: $cursor;:-webkit-autofill {box-shadow: 0 0 0px 1000px $bg inset !important;-webkit-text-fill-color: $cursor !important;}}}.el-input {display: inline-block;height: 47px;width: 100%;input {background: transparent;border: 0px;-webkit-appearance: none;border-radius: 0px;padding: 12px 5px 12px 15px;color: $light_gray;height: 47px;caret-color: $cursor;:-webkit-autofill {box-shadow: 0 0 0px 1000px $bg inset !important;-webkit-text-fill-color: $cursor !important;}}}.el-form-item {border: 1px solid rgba(255, 255, 255, 0.1);background: rgba(0, 0, 0, 0.1);border-radius: 5px;color: #454545;} } /stylestyle langscss scoped $bg:#2d3a4b; $dark_gray:#889aa4; $light_gray:#eee;.login-container {min-height: 100%;width: 100%;background-color: $bg;overflow: hidden;.login-form {position: relative;width: 520px;max-width: 100%;padding: 160px 35px 0;margin: 0 auto;overflow: hidden;}.tips {font-size: 14px;color: #fff;margin-bottom: 10px;span {:first-of-type {margin-right: 16px;}}}.svg-container {padding: 6px 5px 6px 15px;color: $dark_gray;vertical-align: middle;width: 30px;display: inline-block;font-size: 20px;}.title-container {position: relative;.title {font-size: 26px;color: $light_gray;margin: 0px auto 40px auto;text-align: center;font-weight: bold;}}.show-pwd {position: absolute;right: 10px;top: 7px;font-size: 16px;color: $dark_gray;cursor: pointer;user-select: none;}} /style源码下载 下载地址 链接https://pan.baidu.com/s/1FsxNxrVAn-TDQB3Jaf96Aw  提取码1234
http://www.w-s-a.com/news/766086/

相关文章:

  • 广东外贸网站推广分类wordpress
  • 聚美优品网站建设方案商城和营销型网站建设
  • 比较著名的seo网站如何建设网站?
  • 如何做商业网站最火wordpress主题
  • 建设网站需要哪些软硬件条件wordpress文章页标题优化
  • 网站建设功能需求文档wordpress 1g1核1m
  • 学做窗帘要下载哪个网站用户反馈数据分析软件园
  • 宁晋网站建设多少钱产品宣传推广方式有哪些
  • delphi做网站阿里巴巴官网首页登录入口
  • 游戏网站怎么建设新建wordpress模板
  • 网络服务器是指兰州网站seo诊断
  • 怎样做投资理财网站godaddy上传网站
  • 网站建设深圳哪家好世界500强企业招聘网站
  • 如何减少网站建设中的错误温州网站公司哪家好
  • 宜章网站建设北京定制公交网站
  • 怎么让谷歌收录我的网站郑州网站建设更好
  • 在线视频网站开发方案phpaspnet网站开发实例视频
  • 正常做一个网站多少钱网站开发所遵循
  • 西部数码网站备份领英创建公司主页
  • 中山网站建设文化平台成都电商app开发
  • 无锡网站推广公司排名中国十大网站建设
  • 网站建设报价怎么差别那么大深圳开发公司网站建设
  • 京东商城网站建设方案书建设网站平台
  • 如何查询网站建设时间赤峰建网站的电话
  • 域名购买网站有哪些公司企业邮箱管理制度
  • 阿里云服务起做网站抖音seo推荐算法
  • 免费建站工具机械网站建设公司推荐
  • 怎么用自己主机做网站_如何做简单的网站
  • 阿里巴巴国际站跨境电商平台为什么有点网站打不开
  • 甘肃做网站哪家好网站开发 都包含什么语言