站长资讯平台:Una [‘尤娜’] 只是一个项目代号,没有特殊含义。尤娜是站在巨人的肩膀上开发完成的博客系统,旨在为程序员提供一个极简的内容创作管理平台,尤娜100%开放源代码,如果您对她感兴趣,Fork她,并尽情的与之玩耍。她才刚刚起步,或许存在诸多不足,但极简是她至始至终的性格,如果您需要一个大型的内容管理平台,那她可能不能胜任您的需求,如果您只需要一个短小精炼的内容管理系统,尤娜将是您的另一个选择。

快速开始

获取最新源代码

使用 git工具获取代码:

git clone https://github.com/ramostear/una-boot.git

或者:

git clone git@github.com:ramostear/una-boot.git

导入项目

  • SpringToolSuite[Eclipse]导入,选择菜单 File -> Import -> Maven -> Existing Maven Project ,点击 Next 按钮,选中检出的 una-boot文件夹,点击 Finish 按钮,导入成功。
  • IntelliJ IDEA导入,菜单 File -> new -> project from existing source... -> 选中pom.xml文件,点击 OK按钮即可导入。
  • 创建数据库,您可以直接导入工程下的una-boot-db.sql文件到数据库中创建una-boot-db数据库,也可以自行创建una-boot-db数据库(数据库使用utf-8字符编码)。
  • 修改src/main/resources/application-druid.yml文件中的数据库用户名和密码参数[您自己的用户名和密码]。
  • 启动项目,运行src/main/java/com/ramostear/unaboot/UnaBootApplication.java文件的main方法。
  • 访问后台,尤娜默认端口80,后台访问地址:http://[localhost|ip|127.0.0.1]/admin/login,用户名:Administrator,密码:unabootv587,登录验证成功,将进入仪表板页面。

演示

在线演示

前端:https://www.ramostear.com

后端:暂无

特点

  • 完全开源:基于Apache 2.0协议开源
  • 标签化建站:尤娜内置了内容标签和内容函数,可以快速的完成模板的制作
  • 多主题:支持多个主题自由切换,快速改变站点风格,而不需重新编译后台代码
  • Markdown支持: 内置markdown编辑器
  • 文件存储:支持本地存储和CDN存储
  • 评论支持:内置了Gitalk评论函数,只需设置相关的Gitalk参数即可拥有评论功能
  • Spring Boot: 基于Spring Boot 2.0版本进行构建

开发环境

建议您使用下面推荐的环境与尤娜玩耍,以避免版本不一致所带来的困扰

  • OS: Windows 7/10,Linux
  • IDE: Eclipse,IntelliJ IDEA(推荐)
  • DB:MySQL 5.6+
  • JDK: JDK8+
  • Web Server: Apache Tomcat 8+
  • Maven: Maven 3.0+

技术框架

尤娜所使用的开发框架明细:

框架 说明 官网
Spring Framework 轻量级(相对而言)的Java开发框架 https://spring.io/projects/spring-framework
Spring Boot Java Web开发脚手架 https://spring.io/projects/spring-boot
Apache Shiro 安全控制框架 https://shiro.apache.org
Hibernate 对象关系映射框架 http://hibernate.org
Freemarker 视图模板引擎 https://freemarker.apache.org
Log4J 日志记录组件 https://logging.apache.org
Druid 数据库链接池 https://druid.apache.org
FastJSON JSON解析库 FastJson
EhCache 基于Java的进程内缓存框架 http://www.ehcache.org
pinyin4j 中文转拼音的Java库 https://sourceforge.net/projects/pinyin4j/
Maven 项目构建 https://maven.apache.org
lombok 代码生成器 https://projectlombok.org

文档

  • 标签及内置函数手册:https://www.ramostear.com

  • 二次开发手册:https://www.ramostear.com

软件截图

尤娜博客系统 Una的更多相关文章

  1. 欢迎阅读daxnet的新博客:一个基于Microsoft Azure、ASP.NET Core和Docker的博客系统

    2008年11月,我在博客园开通了个人帐号,并在博客园发表了自己的第一篇博客.当然,我写博客也不是从2008年才开始的,在更早时候,也在CSDN和系统分析员协会(之后名为"希赛网" ...

  2. ASP.NET + EF + SQL Server搭建个人博客系统新手系列(一):界面展示

    第一次写博客,可能有些地方描述的不准确,还请大家将就.本人大四学生,学了半年C#,半年.net,但是很遗憾,学完之后只会写个hello word.老师教的过程中总是会套用一些模板,特别是后台,完全封装 ...

  3. 一个基于Microsoft Azure、ASP.NET Core和Docker的博客系统

    2008年11月,我在博客园开通了个人帐号,并在博客园发表了自己的第一篇博客.当然,我写博客也不是从2008年才开始的,在更早时候,也在CSDN和系统分析员协会(之后名为“希赛网”)个人空间发布过一些 ...

  4. 【完全开源】Django多人博客系统——支持MarkDown和tinyMce

    目录 说明 功能 如何使用 说明 这是一个用Django开发的多人博客系统,功能简单,但完全满足公司内部或个人的博客使用需求.支持普通富文本编辑器(tinyMCE)和MarkDown编辑器 由于嫌弃D ...

  5. 从零开始,搭建博客系统MVC5+EF6搭建框架(5),博客详情页、留言、轮播图管理、右侧统计博文

    一.博客系统进度回顾 上一遍博客介绍到,系统已经实现到了发布以及前台布局展示,接下来就是实现一些,详情页,留言.轮播图管理.右侧博文统计信息实现. 二.博客系统详情页实现 2.1先来看看详情页展示的效 ...

  6. 从零开始,搭建博客系统MVC5+EF6搭建框架(4)下,前后台布局实现、发布博客以及展示。

    一.博客系统进度回顾 目前已经完成了,前台展示,以及后台发布的功能,最近都在做这个,其实我在国庆的时候就可以弄完的,但是每天自己弄,突然最后国庆2天,连电脑都不想碰,所以就一直拖着,上一篇写了前端实现 ...

  7. 从零开始,搭建博客系统MVC5+EF6搭建框架(4)上,前后台页面布局页面实现,介绍使用的UI框架以及JS组件

    一.博客系统进度回顾以及页面设计 1.1页面设计说明 紧接前面基础基本完成了框架搭建,现在开始设计页面,前台页面设计我是模仿我博客园的风格来设计的,后台是常规的左右布局风格. 1.2前台页面风格 主页 ...

  8. 从零开始,搭建博客系统MVC5+EF6搭建框架(3),添加Nlog日志、缓存机制(MemoryCache、RedisCache)、创建控制器父类BaseController

    一.回顾系统进度以及本章概要 目前博客系统已经数据库创建.以及依赖注入Autofac集成,接下来就是日志和缓存集成,这里日志用的是Nlog,其实还有其他的日志框架如log4,这些博客园都有很多介绍,这 ...

  9. 从零开始,搭建博客系统MVC5+EF6搭建框架(1),EF Code frist、实现泛型数据仓储以及业务逻辑

    前言      从上篇30岁找份程序员的工作(伪程序员的独白),文章开始,我说过我要用我自学的技术,来搭建一个博客系统,也希望大家给点意见,另外我很感谢博客园的各位朋友们,对我那篇算是自我阶段总结文章 ...

随机推荐

  1. 乐字节Java变量与数据类型之一:Java编程规范,关键字与标识符

    大家好,我是乐字节的小乐,这次要给大家带来的是Java变量与数据类型.本文是第一集:Java编程规范,关键字与标识符. 一.编程规范 任何地方的名字都需要见名知意: 代码适当缩进 书写过程成对编程 对 ...

  2. hadoop基本文件配置

    [学习笔记] 5)hadoop基本文件配置:hadoop配置文件位于:/etc/hadoop下(etc即:“etcetera”(附加物))core-site.xml:<configuration ...

  3. python学习-20 集合

    集合set 1.由不同元素组成的集合,集合是一组无序排列的,集合中的元素必须是不可变的 -定义集合 第一种: jh = {1,2,3,4} print(type(jh),jh) 运行结果: <c ...

  4. python实现文件搜索工具(简易版)

    在python学习过程中有一次需要进行GUI 的绘制, 而在python中有自带的库tkinter可以用来简单的GUI编写,于是转而学习tkinter库的使用. 学以致用,现在试着编写一个简单的磁文件 ...

  5. WUSTOJ 1291: 2n皇后问题(Java)

    题目:

  6. python中检测某个变量是否有定义

    目录 第一种方法使用内置函数locals() 第二种方法使用内置函数dir() 第三种方法使用内置函数vars() 第一种方法使用内置函数locals() 'testvar' in locals(). ...

  7. BZOJ2555 SubString(后缀自动机+LCT)

    询问串放在SAM上不跳fail跑到的节点的|right|即为答案.用LCT维护parent树即可.可以直接维护子树信息,也可以转化为路径加.注意强制在线所使用的mask是作为参数传进去的. #incl ...

  8. SQL语句中加中括号[ ]的作用

    有些可能是SQL里面的保留字,但是你又用了它做字段名 比如Action,用[Action] 就可以避免这个问题,如果直接Action SQL就要报错了. 解决较长的中文名表名可能会被不识别的问题.

  9. Junit 学习笔记

    目录 Junit 学习笔记 1. 编写测试用例时需要注意 2. 出现结果分析 3. Junit 运行流程 4. Junit 常用注解 5. Junit 测试套件的使用 6. Junit 参数化设置 J ...

  10. (七)Action之ActionContext(OGNL表达式的使用)

    一.ActionContext的重要性 struts中的数据都存放在ActionContext里,所以这部分是Action中的核心. ActionContext又称广义值栈,既然有广义值栈就有侠义值栈 ...