做网站哪里找焦作音响网站建设
做网站哪里找,焦作音响网站建设,上海城隍庙简介,pic cms图片网站管理系统手机版1. 为什么选择RuoYi-Vue#xff1f;从零开始的决策
如果你刚入行Java开发#xff0c;或者在一个小团队里想快速搞出一个像模像样的后台管理系统#xff0c;那你大概率听说过或者正在寻找一个“脚手架”。我当年也是这么过来的#xff0c;自己从零搭框架#xff0c;光是权限…1. 为什么选择RuoYi-Vue从零开始的决策如果你刚入行Java开发或者在一个小团队里想快速搞出一个像模像样的后台管理系统那你大概率听说过或者正在寻找一个“脚手架”。我当年也是这么过来的自己从零搭框架光是权限模块就能折腾半个月还一堆Bug。后来接触到RuoYi说实话有种“相见恨晚”的感觉。它不是什么高深莫测的黑科技而是一个开箱即用、功能全面、架构清晰的企业级快速开发平台。简单来说RuoYi-Vue就是一个已经帮你把后台管理系统最核心、最繁琐的“轮子”都造好了的解决方案。它基于最主流的“Spring Boot Vue”前后端分离架构。后端用Spring Boot做基础整合了Spring Security做权限控制MyBatis-Plus操作数据库再用JWTJSON Web Token处理无状态登录。前端则是用Vue 2.x和Element UI构建页面美观组件丰富。你拿到手的时候用户管理、角色权限、菜单管理、部门管理、数据字典、系统监控、代码生成器这些模块都已经完整实现了而且代码风格统一文档也算齐全。对于初学者它的价值在于让你跳过“从零造轮子”的迷茫期直接站在一个接近企业真实项目的起点上学习。你能看到标准的权限设计是如何落地的前后端数据是如何交互的页面路由和按钮级权限是如何控制的。对于有经验的开发者它能极大提升开发效率特别是它的代码生成器能一键生成从实体、Mapper、Service到Controller、Vue页面和API接口的整套代码对于开发常规的增删改查模块效率提升不是一点半点。所以无论你是想学习企业级项目架构还是需要快速启动一个后台管理项目RuoYi-Vue都是一个非常值得投入时间研究和使用的选择。接下来我就带你从最原始的环境搭建开始一步步把它跑起来过程中我会分享一些我踩过的坑和实用的技巧。2. 磨刀不误砍柴工开发环境全景搭建在真正动手拉代码之前把基础环境搭建好是至关重要的一步。这就像盖房子前要打好地基地基不稳后面全是麻烦。RuoYi-Vue依赖的环境不算复杂但版本匹配很关键我强烈建议你严格按照推荐的版本号来能避开很多莫名其妙的错误。2.1 核心依赖安装与验证首先我们得把四大件准备好JDK、MySQL、Redis和Node.js。我会给出具体的版本和验证方法确保你的环境是“健康”的。JDK ( 1.8)Java开发的基础。我推荐直接安装JDK 8比如1.8.0_281或者JDK 11的LTS版本稳定性最好。安装后打开命令行Windows的CMD或PowerShellMac/Linux的Terminal输入java -version和javac -version。确保两个命令都能正确输出版本信息并且版本号一致。如果只装了JRE运行环境没装JDK开发工具包javac命令会报错这时候需要重新安装完整的JDK。MySQL ( 5.7)数据库。5.7和8.0版本都可以但更推荐8.0性能和安全特性更好。安装时记住你设置的root用户密码。安装完成后用命令行或MySQL客户端如MySQL Workbench登录执行SELECT VERSION();能看到版本号就说明安装成功。这里有个小坑MySQL 8.0的默认密码认证插件是caching_sha2_password有些老版本的连接驱动可能不支持如果遇到连接问题可以尝试将用户密码插件改回mysql_native_password不过RuoYi-Vue较新的版本通常已经适配了。Redis ( 3)缓存和会话存储。Windows用户可以直接下载微软维护的Redis for Windows版本解压后运行redis-server.exe即可。Mac用户可以用Homebrew安装brew install redis。Linux用户用对应包管理器安装。启动后另开一个命令行窗口输入redis-cli ping如果返回PONG说明Redis服务运行正常。Redis默认端口是6379确保没有被防火墙屏蔽。Node.js ( 12) npm前端运行环境。去Node.js官网下载LTS长期支持版比如18.x。安装时会自动包含npmNode包管理器。安装后命令行输入node -v和npm -v检查版本。国内使用npm下载包可能会很慢我们可以立即配置淘宝镜像源npm config set registry https://registry.npmmirror.com。这个命令能显著提升后续安装依赖的速度。2.2 开发工具的选择与配置工欲善其事必先利其器。选一个顺手的IDE能让你事半功倍。后端开发 (Java)IntelliJ IDEA Ultimate是首选它对Spring Boot的支持是“亲儿子”级别的智能提示、代码导航、一键运行和调试都非常强大。社区版免费也足够用但终极版付费对JPA、数据库工具等支持更好。如果你偏爱轻量级VS Code配合“Extension Pack for Java”插件包也能进行Java开发但调试和项目管理的体验相比IDEA还是有差距。我个人的建议是如果主要做Java直接上IDEA。前端开发 (Vue)VS Code是绝对的主流轻量、免费、插件生态极其丰富。必须安装的插件有VeturVue语法高亮和提示、ESLint代码规范检查、Prettier代码自动格式化、Auto Close Tag等。用VS Code打开前端项目文件夹体验会很好。数据库管理Navicat Premium、DBeaver免费开源或JetBrains DataGrip集成在IDEA终极版中都不错。它们比命令行更直观方便你执行SQL脚本、查看表结构、调试数据。当你把这些工具和环境都准备好并验证通过后我们的“地基”就算打牢了。接下来就可以正式开始项目的“施工”了。3. 项目获取与初窥门径代码结构解析环境就绪现在让我们把项目代码拿到本地。这一步很简单但理解项目的目录结构对你后续的开发和调试有莫大帮助。3.1 获取项目代码RuoYi-Vue的官方代码仓库在Gitee码云上这是国内访问比较快的托管平台。你不需要用复杂的Git命令去克隆对于初学者直接下载压缩包是最快最直接的方式。打开浏览器访问https://gitee.com/y_project/RuoYi-Vue。在页面上找到大大的“下载”按钮选择“下载ZIP”。将压缩包保存到你常用的工作目录比如D:\Projects\或~/Developer/。解压这个ZIP文件。解压后你会得到一个名为RuoYi-Vue-master的文件夹。为了更直观地进行前后端分离开发我习惯做一个简单的目录调整进入这个文件夹你会发现里面有一个ruoyi-ui文件夹这是前端项目把它剪切出来放到和RuoYi-Vue-master文件夹同级的目录。这样你的工作目录看起来可能是这样的D:\Projects\ ├── RuoYi-Vue-master\ (后端Java项目) └── ruoyi-ui\ (前端Vue项目)这样做的好处是前后端项目完全独立你可以用IDEA打开后端文件夹用VS Code打开前端文件夹互不干扰非常清晰。3.2 理解项目骨架在启动之前花几分钟浏览一下关键目录和文件能让你心里有张“地图”。后端项目 (RuoYi-Vue-master) 核心目录src/main/java/com/ruoyi: 这是所有Java源代码的根包。common: 通用工具类如常量、工具函数、异常定义等。framework: 框架核心包含权限、配置、Web处理等。system:系统核心模块用户、角色、菜单、部门等业务代码都在这里。这是你未来最常打交道的地方。RuoYiApplication.java:Spring Boot应用的主启动类。运行它就能启动整个后端服务。src/main/resources: 资源文件目录。application.yml:主配置文件配置了应用端口、日志级别等。application-druid.yml:数据库连接池配置。等一下启动前必须修改这里application-redis.yml: Redis缓存配置。sql: 存放数据库初始化脚本的文件夹。里面通常有ry_xxxxxx.sql业务表结构及数据和quartz.sql定时任务表结构。前端项目 (ruoyi-ui) 核心目录src/api: 存放所有调用后端API的接口函数定义。src/views: 所有的Vue页面组件。src/router: 前端路由配置定义了页面的访问路径。src/store: Vuex状态管理用于全局共享数据如用户登录信息。src/permission.js:前端权限控制的核心文件负责根据用户角色动态加载路由和菜单。vue.config.js: Vue项目的配置文件可以在这里设置代理、打包参数等。package.json: 项目依赖声明和脚本命令定义。了解这些结构后你就知道当需要修改一个功能时该去哪里找代码了。比如要改用户列表页面就去前端src/views/system/user下找要改用户查询逻辑就去后端src/main/java/com/ruoyi/system模块下找。4. 后端服务启动打通数据库与缓存现在进入实战环节我们先让后端服务跑起来。后端是系统的“大脑”它需要连接数据库和Redis才能正常工作。4.1 数据库初始化与配置数据库是存储所有数据的地方我们必须先把它准备好。创建数据库打开你的MySQL客户端比如Navicat或命令行新建一个数据库。数据库名可以自定义但建议按官方推荐来比如ry-vue字符集选择utf8mb4排序规则选utf8mb4_general_ci这样可以更好地支持中文和Emoji。导入SQL脚本在刚才解压的后端项目目录下找到sql文件夹。里面会有两个SQL文件ry_2021xxxx.sql主业务数据和quartz.sql定时任务相关。在你的MySQL客户端中选中刚创建的ry-vue数据库然后执行这两个SQL文件。顺序无所谓执行完成后你会看到数据库里生成了几十张表像sys_user用户表、sys_role角色表等。修改数据库连接配置这是最关键的一步用文本编辑器或IDEA打开后端项目中的src/main/resources/application-druid.yml文件。你会看到类似下面的配置# 数据源配置 spring: datasource: type: com.alibaba.druid.pool.DruidDataSource driverClassName: com.mysql.cj.jdbc.Driver url: jdbc:mysql://localhost:3306/ry-vue?useUnicodetruecharacterEncodingutf8zeroDateTimeBehaviorconvertToNulluseSSLtrueserverTimezoneGMT%2B8 username: root password: 123456你需要把url、username和password修改成你本地MySQL的实际信息。localhost:3306如果你的MySQL不在本机或端口不是3306请相应修改。ry-vue确保这里的数据库名和你刚才创建的一致。username和password改成你MySQL的登录用户名和密码。千万不要提交带有真实密码的代码到版本库4.2 启动Redis服务Redis用于缓存菜单、字典等不常变化但频繁访问的数据以及分布式场景下的会话管理。确保它正在运行。Windows直接双击你下载的Redis目录下的redis-server.exe。看到一个带着Redis logo和端口号的窗口启动起来就表示成功了。为了方便你可以把它设置为开机启动或者写一个批处理脚本。Mac/Linux在终端输入redis-server启动服务。如果想后台运行可以使用brew services start redis(Mac) 或sudo systemctl start redis(Linux)。后端项目默认的Redis配置application-redis.yml连接的是本地的6379端口且没有密码。如果你的Redis设置了密码或运行在其他地方需要同步修改这个配置文件。4.3 运行Spring Boot应用一切配置就绪现在可以启动后端了。这里以IntelliJ IDEA为例过程非常顺畅。用IDEA打开整个RuoYi-Vue-master文件夹作为项目根目录。IDEA会自动识别为Maven项目并开始下载依赖pom.xml中定义的所有jar包。第一次打开可能会花几分钟时间取决于你的网速。依赖下载完成后在项目文件树中找到src/main/java/com/ruoyi/RuoYiApplication.java。在这个文件上右键选择Run ‘RuoYiApplication’或者直接点击类名旁边的绿色小三角。观察IDEA下方的Run窗口。如果一切顺利你会看到大量的Spring Boot启动日志滚动。重点关注最后几行寻找类似Started RuoYiApplication in 8.456 seconds (JVM running for 9.112)的信息这表示启动成功。同时日志里应该会显示数据源初始化成功、Redis连接成功等信息。如果启动失败控制台会打印详细的错误栈最常见的问题就是数据库连接失败检查application-druid.yml或Redis连接失败检查Redis服务是否启动。启动成功后打开浏览器访问http://localhost:8080。如果能看到一个简单的页面或者返回一些JSON数据可能是Swagger文档页说明后端API服务已经正常提供了。注意此时你看到的可能不是一个完整的登录页因为前端页面还没有启动。后端启动成功意味着我们的“大脑”已经就位可以处理逻辑了。5. 前端项目运行让界面动起来后端服务在8080端口默默运行现在我们需要启动前端项目它运行在另一个端口默认80并通过网络请求与后端交互。5.1 安装依赖与解决网络问题前端项目使用npm管理依赖我们需要先安装所有必需的包。打开终端命令行使用cd命令进入到我们之前放置的ruoyi-ui目录。例如cd D:\Projects\ruoyi-ui。执行安装命令npm install。这个命令会读取package.json文件下载所有依赖包到本地的node_modules文件夹。这是最可能卡住的一步因为npm默认源在国外速度很慢甚至超时。解决网络慢的必做操作如果你在npm install时遇到速度问题强烈建议先配置国内镜像源然后清除缓存再安装# 设置淘宝镜像源如果之前没设置过 npm config set registry https://registry.npmmirror.com # 清除npm缓存 npm cache clean --force # 重新安装依赖 npm install也可以使用cnpm但官方文档和很多经验都指出cnpm有时会导致依赖树结构问题引发诡异的运行时错误。因此更推荐使用npm配合淘宝源稳定可靠。依赖安装成功后ruoyi-ui目录下会生成一个巨大的node_modules文件夹。这个过程视网络情况可能需要几分钟。5.2 启动开发服务器与配置代理依赖装好就可以启动前端开发服务器了。在ruoyi-ui目录下执行启动命令npm run dev。这个命令定义在package.json的scripts里它会启动一个本地开发服务器并开启热重载你修改代码后浏览器会自动刷新。命令执行后终端会输出启动信息。如果成功你会看到类似下面的输出App running at: - Local: http://localhost:80 - Network: http://192.168.1.xxx:80它告诉你前端服务运行在本地80端口。关键理解跨域问题与代理配置。此时前端80端口要访问后端8080端口浏览器会因为“同源策略”而阻止这种跨端口请求。RuoYi-Vue前端项目已经为我们配置好了解决方案。打开ruoyi-ui/vue.config.js文件你会看到devServer配置项里有一个proxy设置devServer: { port: port, open: true, overlay: { warnings: false, errors: true }, proxy: { [process.env.VUE_APP_BASE_API]: { target: http://localhost:8080, changeOrigin: true, pathRewrite: { [^ process.env.VUE_APP_BASE_API]: } } } }这个配置的意思是将所有以/dev-apiVUE_APP_BASE_API默认值开头的请求代理到http://localhost:8080。所以前端代码里请求/dev-api/login实际上会被开发服务器转发到后端的http://localhost:8080/login完美解决了开发环境的跨域问题。你不需要修改它但需要理解其工作原理。现在打开浏览器访问http://localhost。你应该能看到RuoYi-Vue那个熟悉的登录界面了输入默认用户名admin和密码admin123点击登录。如果一切顺利你会成功跳转到系统主页左侧是功能菜单右侧是工作区。恭喜你一个完整的前后端分离企业级项目已经在你的本地成功运行起来了6. 登录之后探索与个性化改造成功登录系统只是一个开始RuoYi-Vue真正的价值在于它提供了一套完整且可扩展的底座。接下来我带你快速浏览几个核心功能点并谈谈如何开始你的个性化开发。6.1 系统功能初体验登录后花点时间逛逛这些内置模块理解它们的设计系统管理用户管理在这里可以新增、修改、删除用户并为用户分配角色。试试创建一个新用户。角色管理定义角色如“管理员”、“普通用户”并为角色分配菜单权限和数据权限。这是权限系统的核心。菜单管理动态配置系统左侧的导航菜单。你可以看到菜单可以配置成目录、菜单或按钮接口权限。部门管理树形结构的组织架构管理。岗位管理、字典管理、参数设置这些都是企业后台非常实用的基础功能。系统监控这里有操作日志、登录日志、服务监控等信息对于运维和排查问题很有帮助。系统工具重中之重——代码生成。这是RuoYi的“王牌功能”。你可以选择一张数据库表它能自动生成前端Vue页面和后端Controller, Service, Mapper, Entity的所有增删改查代码直接复制到对应目录即可使用能节省大量重复劳动。6.2 开始你的第一个修改以修改登录页标题为例光看不动手没意思我们来做个最简单的修改感受一下开发流程。比如把登录页面的系统标题“若依管理系统”改成我们自己的项目名。定位前端文件这个标题显然在前端。根据经验登录页的组件通常叫Login.vue。我们在ruoyi-ui/src/views目录下找找果然在login.vue文件里注意Vue文件通常小写。修改代码用VS Code打开ruoyi-ui/src/views/login.vue。在模板template部分里搜索“若依管理系统”。你可能会找到类似title若依管理系统/title在HTML的head里对SEO有用和页面大标题的h3若依管理系统/h3。把它们改成你想要的名字比如“我的后台管理系统”。查看效果由于我们之前是用npm run dev启动的开发服务器支持热重载。保存文件后几乎同时浏览器里的登录页面就会自动刷新你就能看到修改后的新标题了。无需重启任何服务这就是现代前端开发的便利之处。6.3 连接你自己的数据库表并使用代码生成器这是最具生产力的部分。假设你有一张自己的业务表t_product产品表想快速生成它的管理模块。在MySQL中创建表在你的ry-vue数据库中执行SQL创建t_product表包含id,name,price,create_time等字段。在后端配置数据源如果表就在ry-vue库中可跳过RuoYi支持多数据源。如果你的业务表在另一个数据库需要修改application-druid.yml配置多数据源并在代码中指定。使用代码生成器在系统前端进入“系统工具” - “代码生成”。点击“导入”按钮在表列表里你应该能看到刚创建的t_product表系统会扫描配置的数据源中的所有表。选中它点击“编辑”或“生成代码”。在编辑页面你可以配置基本信息如生成包路径例如com.ruoyi.product、模块名product、业务名product、作者等。还可以预览生成的前端Vue代码和后端Java代码。配置好后点击“提交”然后“生成代码”。系统会打包下载一个ZIP文件。将生成的代码放入项目解压ZIP文件。里面通常有main/java后端Java代码和main/resourcesMyBatis的XML映射文件以及vue前端代码。将Java代码复制到后端项目的对应包路径下如src/main/java/com/ruoyi/product。将XML文件复制到src/main/resources/mapper/product下。将Vue文件复制到前端项目的src/views/product下。不要忘记后端新增了一个模块需要在RuoYiApplication.java的主类上通过MapperScan注解或在对应的Mapper接口上添加Mapper注解来让MyBatis扫描到新的Mapper。通常如果生成的代码包路径在com.ruoyi下且你使用了MapperScan(“com.ruoyi.*.mapper”)这样的配置它会自动扫描到。重启与访问由于我们添加了新的Java类和Vue组件需要重启后端Spring Boot应用前端热重载依然有效。重启后刷新前端页面你应该能在菜单管理里为你的“产品管理”模块分配一个菜单然后就可以通过菜单访问到你刚刚生成的、功能齐全的产品增删改查页面了。这个过程看似步骤多但操作一两次后就非常熟练了。代码生成器极大地规范了开发流程保证了代码风格一致把开发者从重复的CRUD代码中解放出来去关注更复杂的业务逻辑。这也是RuoYi-Vue在企业级开发中备受青睐的重要原因之一。