Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Raysmond/SpringBlog
A simple blogging system implemented with Spring Boot + Hibernate + MySQL + Bootstrap4.
https://github.com/Raysmond/SpringBlog
blogging spring-boot
Last synced: 6 days ago
JSON representation
A simple blogging system implemented with Spring Boot + Hibernate + MySQL + Bootstrap4.
- Host: GitHub
- URL: https://github.com/Raysmond/SpringBlog
- Owner: Raysmond
- License: bsd-3-clause
- Created: 2015-09-26T15:58:47.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2020-03-19T05:54:33.000Z (over 4 years ago)
- Last Synced: 2024-08-02T06:17:10.105Z (3 months ago)
- Topics: blogging, spring-boot
- Language: Java
- Homepage: http://raysmond.com
- Size: 12 MB
- Stars: 1,632
- Watchers: 139
- Forks: 690
- Open Issues: 19
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-spring-boot - Spring Boot开源博客
README
SpringBlog
=====中文开发和部署文档请查看:http://raysmond.com/posts/springblog-guide
SpringBlog is a very simple and clean-design blog system implemented with Spring Boot.
It's one of my learning projects to explore awesome features in Spring Boot web programming. You can check my blog
site for demo [https://raysmond.com](http://raysmond.com).There's no demo online. Here's the screenshot of my previous blog homepage.
![](http://7b1fa0.com1.z0.glb.clouddn.com/screencapture-blog-raysmond-8080-1480663084590.png)SpringBlog is powered by many powerful frameworks and third-party projects:
- Spring Boot and many of Spring familiy (e.g. Spring MVC, Spring JPA, Spring Secruity and etc)
- Hibernate + MySQL
- [HikariCP](https://github.com/brettwooldridge/HikariCP) - A solid high-performance JDBC connection pool
- [Bootstrap](https://getbootstrap.com) - A very popular and responsive front-end framework
- [Pegdown](https://github.com/sirthias/pegdown) - A pure-java markdown processor
- [ACE Editor](http://ace.c9.io/) - A high performance code editor which I use to write posts and code.
- [Redis](http://redis.io/) - A very powerful in-memory data cache server.
- EhCache
- Thymeleaf (Spring MVC)## Development
Before development, please install the following service software:
- [MySQL](https://www.mysql.com)
Edit the spring config profile `src/main/resources/application.yml` according to your settings.
And start MySQL and Redis first before running the application.
```
# If you're using Ubuntu server# Install MySQL
apt-get install mysql-server
service mysql start
mysql -u root -p
>> create database spring_blog;
```This is a Gradle project. Make sure Gradle is installed in your machine.
Try `gradle -v` command. Otherwise install in from [http://www.gradle.org/](http://www.gradle.org/).
I recommend you import the source code into Intellij IDE to edit the code.```
# Start the web application
./gradlew bootRun
```## Development
**How to import the project into Intellij IDEA and run from the IDE?**
```
git clone https://github.com/Raysmond/SpringBlog.git
cd SpringBlogbower install
```1. Clone the project
2. Download all dependencies
3. Open the project in Intellij IDEA.
4. Run `SpringBlogApplication.java` as Java application.
5. Preview: http://localhost:8080
Admin: http://localhost:8080/admin , the default admin account is: `admin`, password: `admin`> Lombok is required to run the project. You can install the plugin in Intellij IDEA.
> Reference: https://github.com/mplushnikov/lombok-intellij-plugin- Build application jar `./gradlew build`, then upload the distribution jar (e.g. `build/libs/SpringBlog-0.1.jar`) to your remote server.
- Upload `application-production.yml` to your server and change it according to your server settings.
- Run it (Java8 is a must)```
java -jar SpringBlog-0.1.jar --spring.profiles.active=prod
# OR with external spring profile file
java -jar SpringBlog-0.1.jar --spring.config.location=application-production.yml
```## TODO
- [x] Upgrade frontend framework to Bootstrap4
- [ ] Replace Jade with Thymeleaf(HTML)
- [ ] Frontend building tools, e.g. webpack
- [x] Use hibernate 2nd level cache (EHCache?)
- [ ] Markdown preview while editing
- [ ] Html editor## License
Modified BSD license. Copyright (c) 2015 - 2018, Jiankun LEI (Raysmond).