{"id":15027264,"url":"https://github.com/saysky/forestblog","last_synced_at":"2025-05-14T14:09:20.511Z","repository":{"id":37276219,"uuid":"106187093","full_name":"saysky/ForestBlog","owner":"saysky","description":"一个简单漂亮的SSM(Spring+SpringMVC+Mybatis)博客系统","archived":false,"fork":false,"pushed_at":"2024-07-03T04:38:32.000Z","size":52149,"stargazers_count":4574,"open_issues_count":42,"forks_count":1645,"subscribers_count":69,"default_branch":"master","last_synced_at":"2025-04-09T03:11:42.529Z","etag":null,"topics":["blog","java","ssm","ssm-maven"],"latest_commit_sha":null,"homepage":"https://forestblog.liuyanzhao.com","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/saysky.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-10-08T15:27:47.000Z","updated_at":"2025-04-09T01:45:52.000Z","dependencies_parsed_at":"2023-01-29T12:15:55.469Z","dependency_job_id":"5016570c-b20d-4258-957f-a97bdfa3368a","html_url":"https://github.com/saysky/ForestBlog","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saysky%2FForestBlog","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saysky%2FForestBlog/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saysky%2FForestBlog/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saysky%2FForestBlog/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/saysky","download_url":"https://codeload.github.com/saysky/ForestBlog/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254160555,"owners_count":22024571,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["blog","java","ssm","ssm-maven"],"created_at":"2024-09-24T20:06:05.428Z","updated_at":"2025-05-14T14:09:15.494Z","avatar_url":"https://github.com/saysky.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"最新消息，博主已开通B站账号：[Java刘哥](https://space.bilibili.com/160340478)\n## 博主开发的其他博客或论坛项目全部在这里\n**[全部原创项目](https://liuyanzhao.com/shop.html)**   \u003cbr/\u003e\n**[https://liuyanzhao.com/shop.html?k=博客](https://liuyanzhao.com/shop.html?k=博客)**   \u003cbr/\u003e\n**[https://liuyanzhao.com/shop.html?k=论坛](https://liuyanzhao.com/shop.html?k=论坛)** \t\u003cbr/\u003e\n- ------------------------------------------------------------\n# 关于项目\n该博客是基于SSM实现的个人博客系统，适合初学SSM和个人博客制作的同学学习。\u003cbr/\u003e\n博主已写了一篇该项目的毕业论文和录制了2个小时的代码讲解可以供大家学习，需要的可以联系博主，微信847064370。\u003cbr/\u003e\n\n主要涉及技术包括的包括 Maven、Spring、SpringMVC、MyBatis、JSP、MySQL等。 \u003cbr/\u003e\n详细介绍：[https://liuyanzhao.com/6347.html](https://liuyanzhao.com/6347.html) \u003cbr/\u003e\n预览地址：[http://forestblog.liuyanzhao.com](http://forestblog.liuyanzhao.com) \u003cbr/\u003e\n\n前台效果图  \u003cbr/\u003e\n![image](uploads/home.png)\n\u003cbr/\u003e\n后台效果图  \u003cbr/\u003e\n![image](uploads/admin.png)\n\u003cbr/\u003e\n后台地址：/admin 或者 /login \u003cbr/\u003e\n\n## 博主提供有偿服务\n\n- 远程调试环境和运行项目 50-100  (已经有环境了50，需要代安装部分环境软件100)\n- 项目论文 100\n- 项目详细讲解视频 100\n- 部署到云服务器 200\n- 项目和部分功能定制 200-500\n- 完整毕业设计定制 1000-1500\n- [更多项目、博主付费商品](https://liuyanzhao.com/shop.html)\n  \n## 使用注意\n#### 1.开发工具的选择\n请使用 IntelliJ IDEA, 尽量不要用 Eclipse/MyEclipse，使用前者项目起不来我可以帮忙解决，后者直接忽视(理论上可以起)\n\n#### 2.确保你安装了 Maven\n从官网下载 Maven，并配置阿里云镜像，IDEA 或 Eclipse 里需要设置 Maven 的 settings.xml 。\n\n#### 3.请安装 Lombok 插件\n代码中多次使用 `@Data` 注解，请确保你的 IDE 安装了 `Lombok` 插件，否则找不到 getter/setter 方法。如果你的 lombok 无效，可能是 pom.xml 里的 lombok 版本和你安装的lombok 版本相差较大。\u003cbr/\u003e\n无论是 Eclipse 还是 IDEA 都需要安装 lombok。\n\n#### 4.项目首页没有文件夹名称\n确保 tomcat 配置中 `application context` 是 /，而不是 /ForestBlog。这是导致你们首页css样式全无的原因，因为引用css路径都是 /xxx/xxx.css\n![image](https://github.com/saysky/ForestBlog/blob/master/uploads/tomcat.png)\n\n\n## 使用步骤\n任何问题都可以联系我 \u003cbr/\u003e\n简单的我可以直接口头回复你，复杂的可以有偿远程帮你。\u003cbr/\u003e\nQ Q：847064370 \u003cbr/\u003e\n微信：847064370 \u003cbr/\u003e\n在线留言：[https://liuyanzhao.com/message.html](https://liuyanzhao.com/message.html)\n\n#### 1、克隆项目  \u003cbr/\u003e\n克隆或者下载项目到本地，解压，主要分为三个部分：ForestBlog、uploads 和 forest_blog.sql \u003cbr/\u003e\nForestBlog: 完整项目源码, 可以使用 IDEA 导入或者打开，记得要导入里面那个 ForestBlog项目，即 pom.xml所在的父目录。  \u003cbr/\u003e\nuploads: 上传图片的目录，与源码分离开来，可以放到物理磁盘某一目录，如D盘某目录，后面会讲 \u003cbr/\u003e\nforest_blog.sql: 数据库文件，请先创建数据库，然后以运行sql文件方式导入 \u003cbr/\u003e\n\n#### 2.使用 IDEA 导入Maven项目\n确保你安装了 Maven，导入项目时，选择已存在的项目，类型是 Maven 项目。\u003cbr/\u003e\n等待Maven下载完依赖，或者手动点击刷新，如果无法下载请检查 Maven 配置和切换网络，多次尝试。 \u003cbr/\u003e\n导入完成后，如果出现Java类里红色报错，多半是 Lombok 插件没有安装。\n\n\n#### 3、 导入数据库   \u003cbr/\u003e\n新建数据库 `forest_blog`，导入数据库（即forest_blog.sql）。注意，数据库的编码和排序规则是utf-8和utf-8_general_ci  \u003cbr/\u003e\n\n\n#### 4、修改项目中的数据库连接信息   \u003cbr/\u003e\n修改 `db.properties` 文件，该文件很容易找到，在 src/main/resources 中\u003cbr/\u003e\n里面有 MySQL, 请确保已安装和启动 MySQL \u003cbr/\u003e\n注意修改数据库地址、表名、用户名和密码。\u003cbr/\u003e\n否则项目无法启动\n\n \n#### 5、配置 tomcat 和 uploads 目录   \u003cbr/\u003e\n该项目是 SSM 项目，没有启动类，需要通过 tomcat 来运行。无论是 Eclipse 还是 IDEA 都很容易。\u003cbr/\u003e\n这里主要说一下上传目录映射问题：\u003cbr/\u003e\n该项目中，文件上传是传到本地，且和项目文件夹不在一起，就是说是源码和上传目录是分离的。 \u003cbr/\u003e\n比如我们把 uploads 目录放到 E盘根目录(建议直接把我的那个uploads文件夹拷贝到D盘根目录)，比如有一张图片路径是 `D:/uploads/2017/10/avatar.jpg`, 我们想在项目中以 `http://loclahost:8080/uploads/2017/10/avatar.jpg ` 方式访问，需要以下两步：\u003cbr/\u003e\n\n1、 修改 UploadFileController.java 中上传路径，需要修改 rootPath 为你指定的 uploads 目录，如 `String rootPath =\"D:/uploads/\";` \u003cbr/\u003e\n如果不修改，会出现无法上传失败；\u003cbr/\u003e\n\n2、为 tomcat 设置 uploads 映射。\u003cbr/\u003e\n-  IDEA 操作如下：\u003cbr/\u003e\n在 tomcat 配置中 Deployment 里面添加，如图\n![image](uploads/tomcat.png)\n![image](uploads/tomcat2.png)\n\n- Eclispe 操作如下：\u003cbr/\u003e\n在 Server/server.xml 的 \u003c/Host\u003e 前面添加\n```\n\u003cContext path=\"/\" docBase=\"项目路径，不需要改\" debug=\"0\" reloadable=\"true\" /\u003e\n\u003cContext path=\"/uploads\" docBase=\"D:/uploads/\" debug=\"0\" reloadable=\"true\" /\u003e\n```\n- Linux 服务器环境部署\n\n在 tomcat/conf/server.xml 的 Host 标签内添加如下代码 \u003cbr/\u003e\n```\n\u003cContext path=\"/\" docBase=\"项目路径如 /www/server/tomcat/webapps/ForestBlog\" debug=\"0\" reloadable=\"true\" /\u003e\n\u003cContext path=\"/uploads\" docBase=\"/www/uploads\" debug=\"0\" reloadable=\"true\" /\u003e\n```\n\n如果不修改，会出现uploads的图片无法加载，无法显示上传目录的图片\n\n \n## 下载地址：\nGithub地址：https://github.com/saysky/ForestBlog\n（如果可以帮忙点一次Star和Fork）\n \n## 更新记录\n- 2021年02月25日\n- 第三次大更，修复部分Bug，新增用户注册、用户管理等功能\n\n- 2018年11月26日\n- 第二次大更，重新规范了代码，完善了注释\n\n- 2017年10月10日\n- 首次完整提交\n\n## 广告\n插条广告：博主长期接毕设定制，软件定制，Java问题解决 \u003cbr/\u003e\n具体查看[有偿服务](https://liuyanzhao.com/notice/my-service.html)  \u003cbr/\u003e\n博主付费商品：[https://liuyanzhao.com/shop.html](https://liuyanzhao.com/shop.html)\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaysky%2Fforestblog","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsaysky%2Fforestblog","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaysky%2Fforestblog/lists"}