开源项目bootdo的实战开发笔记
开源项目bootdo 源码地址:https://github.com/lcg0124/bootdo
技术选型
1、后端
- 核心框架:Spring Boot
- 安全框架:Apache Shiro
- 模板引擎:Thymeleaf
- 持久层框架:MyBatis
- 数据库连接池:Alibaba Druid
- 缓存框架:Ehcache 、Redis
- 日志管理:SLF4J
- 工具类:Apache Commons、Jackson
2、前端
- JS框架:jQuery
- 客户端验证:JQuery Validation
- 富文本在线编辑:summernote
- 数据表格:bootstrapTable
- 弹出层:layer
- 树结构控件:jsTree
1.使用这个框架开发系统也有一个多月了。但是我当初使用的版本还是1.6版本,集成的模块没有那么全面,但是足够让我积累一下这个框架中比较好的功能与技术:
(1)、使用了springboot开源框架,不用多说,如今非常流行的spring框架中的分支。
(2)、使用了shiro 做用户权限,具体也做了一个shiroUtils的工具类。相当好用,获取当前登录用户的信息、权限、角色等等。
(3)、使用模本语句生成代码模块,具体就是套用简单统一的模板,根据获取数据库表中相关信息生成 从前端到后台一套的代码文件,只要在基础上修改即可。这个思想也是不错的,值得学习。
(4)、使用shiro做权限控制。使用shiro中的Realm域和Permission 的字符串通配符权限,加以限制请求后台是否有权限,等等。
(5)、开源贡献者写的工具类也是我比较欣赏的,许多通用的工具类都集成了,开箱即用。
(6)、使用mybatis也是不用多说了。大多数人在使用的Dao层框架。
(7)、前端也是使用了比较普遍的jQuery和boostrap来做前端页面设计,通过spring的thymeleaf模板语言做数据交换渲染等,也是比较流行而且容易学习的。
(8)、前端还使用了少量的Vue.js 和比较多的layUI前端框架。总体页面效果还是不错的。
2.在实际开发项目中,也遇到了不少的坑,例如前端模板页面的修改难度大,后台代码有部分是有bug的,不过由作者的思想开说,这个开源框架其实是用于提供给大家学习学习,哈哈哈,所以也就不追究那么多了。总的来说,用于开发简单的系统还是不错的选择。
开源项目bootdo的实战开发笔记的更多相关文章
- dotnet 是 前30个增长最快速度的开源项目中排名第一的开发平台
CNCF 的博客 发了一篇文章 <Update on CNCF and Open Source Project Velocity 2020>,中文翻译参见 2020年CNCF和开源项目开发 ...
- Android 上传开源项目到 jcenter 实战踩坑之路
本文微信公众号「AndroidTraveler」首发. 背景 其实 Android 上传开源项目到 jcenter 并不是一件新鲜事,网上也有很多文章. 包括我本人在将开源项目上传到 jcenter ...
- php开源项目学习二次开发的计划
开源项目: cms 国内 dedecms cmstop 国外 joomla, drupal 电商 国内 ecshop 国外 Magento 论坛 discuz 博客 wordpress 学习时 ...
- vue2.0版cnode社区项目搭建及实战开发
_________________________________________________________________________ 初涉vue就深深的被vue强大的功能,快速的开发能力 ...
- 基于Koa2框架的项目搭建及实战开发
Koa是基于 Node.js 平台的下一代 web 开发框架,由express原班人马打造,致力于成为一个更小.更富有表现力.更健壮的 Web 框架.使用 koa 编写 web 应用,通过组合不同的 ...
- 移动端h5直播项目|html5直播实战开发|h5仿陌陌
最近一些直播.小视频什么的都比较火,像陌陌.抖音.火山短视频… 于是空闲时间自己也利用html5技术也试着倒腾了下直播项目,使用到了h5+css3+iscroll+zepot+swiper+wlsPo ...
- 原生Js贪吃蛇游戏实战开发笔记
前言 本课程是通过JavaScript结合WebAPI DOM实现的一版网页游戏---贪吃蛇的开发全过程,采用面向以象的思想设计开发.通过这个小游戏的开发, 不仅可以掌握JS的语法的应用,还可以学会D ...
- 网页实战开发笔记之——最全面的HTML的头部信息介绍
HTML中我们一般把<head></head>部分称为网页的头部.头部部分的内容虽然不会在页面中显示,但它能影响到搜索引擎对网页的收录和排序,以及网页的各种全局设置,可以说是至 ...
- Android Studio编译开源项目(含NDK开发)常见报错
1.未设置NDK的路径 Error:Execution failed for task ':library:ndkBuild'. > A problem occurred starting pr ...
随机推荐
- 你没有看错,爬网页数据,C# 也可以像 Jquery 那样
一:背景 1. 讲故事 前段时间搞了一个地方性民生资讯号,资讯嘛,都是我抄你的,你抄官媒的,小市民都喜欢奇闻异事,所以就存在一个需求,如何去定向抓取奇闻异事的地方号上的新闻,其实做起来很简单,用逻辑回 ...
- 动态加载dll的实现+远线程注入
1.在目标进程中申请内存 2.向目标进程内存中写入shellcode(没有特征,编码比较麻烦) 3.创建远线程执行shellcode 之前可以看到shellcode很难编写还要去依赖库,去字符串区等等 ...
- Java Web学习(二)数据加密
一.Tomcat 体系 首先通过一幅图来了解下tomcat的运行体系: Tomcat服务器的启动是基于一个server.xml文件的. 启动流程: 首先启动一个Server,Server里面就会启动S ...
- 提效工具-python解析xmind文件及xmind用例统计
现状 每个公司都有一个维护测试case的系统,有自研的也有买的,比如QC, 禅道等等,QA往往习惯使用xmind等思维导图工具来编写测试用例,因为思路清晰,编写方便,那么这就有一个问题,大多公司要求所 ...
- python中生成随机整数(random模块)
1.从一个序列中随机选取一个元素返回: random.choice(sep) 2.用于将一个列表中的元素打乱 random.shuffle(sep) 3.在sep列表中随机选取k个 ...
- Python-py2和py3读写文本区别
python2和python3的区别? python 2 str 对应 python3 bytes python 2 uincode 对应 ...
- C#设计模式-适配器模式(Adapter Pattern)
概念 把一个类的接口变换成客户端所期待的另一种接口,从而使原本接口不匹配而无法一起工作的两个类能够在一起工作.适配器模式有类的适配器模式和对象的适配器模式两种形式.前者类之间的耦合度比后者高,且要求程 ...
- 软件定义网络实验记录④--Open vSwitch 实验——Mininet 中使用 OVS 命令
一.实验目的 Mininet 安装之后,会连带安装 Open vSwitch,可以直接通过 Python 脚本调用 Open vSwitch 命令,从而直接控制 Open vSwitch,通过实验了解 ...
- Android高级控件(下)
计时器(Chronometer) getBase() 基准时间 setFormat() 设置显示格式 start() 开始计时 stop() 停止计时 setOnChronometerListener ...
- mysql时间SQL
生成随机时间 -- 带时分秒 select FROM_UNIXTIME(UNIX_TIMESTAMP('20100101000000')+ROUND(RAND()*(UNIX_TIMESTAMP()- ...