可扩展的登录系统设计实现

看了一个可扩展用户登录的设计,确实想的比我要全面。看似登录一个小的功能,要考虑的东西还是很多的,安全性上,可扩展性,代码的风格上,作者就是从这些角度来考虑,具体可以看看下面参考资料中的设计,考虑了本地账户登录,OAuth2协议登录等。我看过之后按照设计实现了下,当然大体上只实现了本地用户的登录,第三方登录的就没做了。总的来说,设计思想还是很受启发的。当然你可以先看参考资料中的思想,回过头来再看实现就更简单了。... 详情

EasyUI-DataGrid结合Undo.js实现类似Excel撤销操作

由于项目上的需要,业务人员希望系统可以像Excel一样撤销,更方便编辑,因此花了点儿时间研究怎么在EasyUI的datagrid表格上实现类似Excel的撤销操作。在网上很容易找到了Undo.js库,这是一个6年前写出来的库,源码行数不多,查看起来也比较容易,看了下作者提供的两个Demo感觉比较适用,并且结合例子也很好做开发,所以就用它来做表格撤销操作的功能。其中最核心的就是堆栈的构造以及undo及redo方法的操作。代码是在官方DataGrid的“Cell Editing in DataGrid”的Demo上进行整合,考虑了删除行,插入行的操作,代码比较简单,就不多说了。... 详情

Mybatis拦截器物理分页完整实例

在网上找了一些Mybatis物理分页方法,基本上大部分都是使用Mybatis的拦截器进行分页。我们思路是对要执行的sql语句进行拦截,其次对Sql进行修改,组装成符合各种数据库分页的Sql语句,并同时创建查询总条数的Sql,一起执行。这样在返回的结果集中可以自动的带上总条数。那我根据网上分享的分页案例进行了实际的应用,并且根据个人使用做了修改,下面看看具体的细节。... 详情

Windows下Docker的安装

最近新的项目需要使用Docker,于是花了点儿时间在虚拟机了装了一台CentOS7来跑。曾经使用过linux仅部署项目用到了少数一些命令,对于linux的熟悉程度还是比较肤浅,动作比较慢,由于安装docker用的镜像一直连不上,所以为了不影响工作就在Windows下安装了Docker,它的安装还是比较简单的,所以可以尝试下。... 详情

《三体》全集 – 400年的文明

最近一段时间,很流行的一个词叫“未来”,由人工智能和大数据这两个被说烂了的词汇让每个人都在联想未来到底是一个什么样子。在读完科幻的三体三部之后,给我最深的感触是震撼,书中对于科幻中细节的描写是如此的是深刻,对于剧情的演变也是异常的从容,在第一部读完后,我已经被故事吸引,在为人类的前景不断担忧时,传来的噩耗不断,让人很难去想到人类的未来到底在哪里,最终还是让作者给拍死在了茫茫的黑暗之中。... 详情

Eclipse使用Git插件提交代码

Git作为现在最流行的版本控制工具,现在的Eclipse一般都已经集成了Git插件,在我下载的Eclipse4.5.2的版本中,已经集成了Git,所以不需要再另外安装,若是使用低版本的Eclipse没有Git插件(在About Eclipse中查看是否有EGit插件),那么在Eclipse的Market里搜索EGit进行安装(Help > Install New Software)。当然安装之前要了解Eclipse与Git版本的对应关系,否则可能会有错误,对应关系我们可以在下面这个地址查看:
http://wiki.eclipse.org/EGit/FAQ#Where_can_I_find_older_releases_of_EGit.3F... 详情

SSM框架整合实践(SpringMVC+Spring+Mybatis)

最近学习了一些SpringMvc的基础,加上Spring的整合,并且工作中已经使用了很久的ibatis(后来改名为Mybatis),所以其实一个SSM框架需要的东西大体上都已经具备。SSM本身不想做过多的介绍,已经流行了很久,网上的资源也很丰富,而且看过一篇文章说基础框架还是要自己动手做一遍的,所以我也参照网上的一篇SSM框架的整合教程做了实践,参照地址可以点击这里,实践过程中,升级了一些依赖的jar包,发现了一些版本上的区别,也着实踩了不少的坑,当然好在写了几年的程序解决问题的能力还是具备的。将实践的过程以及参考文章分享在这里,方便以后查阅。整体来说框架的搭建不是很复杂,所以细心点还是较为轻松的。... 详情

Maven:环境配置及Web项目创建

Maven是一个项目管理的综合工具,我们常见到用Maven来管理项目中所依赖的包,类似于.net中的Nuget,但它的功能远不止这些,它可已创建报表,检查,构建和测试自动化设置,简化和标准化项目建设过程,开发团队可以自动完成项目的基础工具建设。所以我希望能在后面的实践中学习和使用Maven,下面来看看最简单的如何配置和使用。... 详情