最近在开发完善九天鸟的xp2p系统,解决了很多技术问题,特此总结下。

第一个项目开发,非常重要,它对建立开发规范、团队协作、开发效率,有很重大的意义。

1.分页
前台AJAX异步分页,用咱们自己的fupage分页组件。简单、灵活、好定制、好维护。
前台Freemarker同步分页, 用Freemarker写自己的分页宏。
后台分页,实现Mybatis的拦截器,自动计算count。分页组件只关心分页,其它问题不再处理。职责过多,很难维护。

2.CMS系统
内置一套简洁够用的内容管理系统。
主要功能、内容、内容分类,内容分类可以直接是一个页面(这个功能非常有价值)。

3.权限系统
后台管理系统,内置一套简洁够用的权限分配系统。
用户和角色挂钩,角色和权限挂钩。
技术实现,拦截器、注解和权限菜单,在前台URL层面和后台方法层面都做了处理。

4.后台管理系统
权限菜单,根据用户权限自动生成。
右侧iframe,承载内容,局部刷新,方便嵌入到其他系统或页面中。

5.系统之间三种交互方式
WebService、JSON(JSONP) 、HTTP。

6.前端代码分离
HTML、CSS、JS尽可能分离。
部署时,可随时切换到CDN版本的CSS和JS,CSS和JS都经过压缩处理,JS可能会做混淆。

7.前端JS组件和代码简洁灵活
日期、对话框、布局,都采用业界知名的JS组件。
不使用extjs之类的大型的完整的解决方案,不够灵活。

8.参数可配置化
参数配置3种方式:启动时Tomcat配置、properties属性文件配置、后台管理修改。

9.代码工具化
JS代码、CSS样式、Java功能、短信发送、邮件发送等可以在项目内复用,或之后的项目复用。
开发架构和规范、开发流程、各种组件,都可以今后复用,从而提高效率。

10.分布式Session
用Cookie和Redis实现登录,单独的登录系统,可以共用。

更多精彩内容,请关注九天鸟官方博客、小雷FansUnion的空间、CSDN博客。

转载请注明:九天鸟官方博客 » xp2p系统的10点技术创新和经验总结

xp2p系统的10点技术创新和经验总结的更多相关文章

  1. CTO对话:云端融合下的移动技术创新

    云端融合真的来了?快听CTO们怎么讲云端融合下,技术创新怎么破? 快听CTO箴言  云喊了很多年,对于很多普通的技术人,心中有很多疑问:云端融合到底意味着什么,对公司的技术体系有什么影响,未来又会走向 ...

  2. 共享业务稳定性测试&技术创新组

    本文其实是一篇招聘贴,不管你以前是做开发还是测试,都欢迎加入我们的小组. 2014年阿里巴巴的共享业务事业部有很大变化,共享的测试团队也做了一些调整,我不再担任共享业务的测试经理,但是仍然会留在共享测 ...

  3. 你应该知道的2016年有关App开发的技术创新

    上一篇简述了2016年有关App产品的年中总结,这篇开始历数有关App开发的技术创新!无论你是创业者,还是程序员,无论你是否懂编程.写代码,利用APICloud平台数据撰写的年中总结,集合了移动应用创 ...

  4. 《嵌入式系统原理与接口技术》——嵌入式系统接口应用基础

    本文为我负责编写的电子工业出版社出版的<嵌入式系统原理与接口技术>一书第七章部分,这里整理的仍然是修改稿,供需要的同学参考,本书为普通高等教育"十二五"规划教材,电子信 ...

  5. 互联网DSP广告系统架构及关键技术解析

    互联网DSP广告系统架构及关键技术解析 宿逆 关注 1.9 2017.10.09 17:05* 字数 8206 阅读 10271评论 2喜欢 60 广告和网络游戏是互联网企业主要的盈利模式 广告是广告 ...

  6. 进阶!基于CentOS7系统使用cobbler实现单台服务器批量自动化安装不同版本系统(week3_day5_part2)-技术流ken

    前言 在上一篇博文<cobbler批量安装系统使用详解-技术流ken>中已经详细讲解了cobbler的使用以及安装,本篇博文将会使用单台cobbler实现自动化批量安装不同版本的操作系统. ...

  7. DSP广告系统架构及关键技术解析(转)

    广告和网络游戏是互联网企业主要的盈利模式 广告是广告主通过媒体以尽可能低成本的方式与用户达成接触的商业行为.也就是说按照某种市场意图接触相应人群,影响其中潜在用户,使其选择广告主产品的几率增加,或对广 ...

  8. 从原理到场景 系统讲解 PHP 缓存技术

    第1章课程介绍 此为PHP相关缓存技术的课堂,有哪些主流的缓存技术可以被使用? 第1章 课程介绍 1-1课程介绍1-2布置缓存的目的1-3合理使用缓存1-4哪些环节适合用缓存 第2章 文件类缓存 2- ...

  9. 更新mac系统到10.15后,virtual box虚拟机无法打开

    更新mac系统到10.15后,virtual box虚拟机无法打开: 尝试解决方案1:下载最新版的virtual box重新安装后,启动成功. 虽然很乌龙,但是下次再也不随便升级系统了,太坑爹了

随机推荐

  1. NOIP2016 天天爱跑步(线段树/桶)

    题目描述 小c同学认为跑步非常有趣,于是决定制作一款叫做<天天爱跑步>的游戏.天天爱跑步是一个养成类游戏,需要 玩家每天按时上线,完成打卡任务. 这个游戏的地图可以看作一一棵包含 N个结点 ...

  2. Django快速搭建博客

    准备工作: 1.Python 2.Django 3.Git 安装Python: 官网下载 安装Django: #安装最新版本的Django $ pip install django #或者指定安装版本 ...

  3. android设置Activity背景色为透明的3种方

    方法一:这种方法比较简单,只有一个步骤,只需要在配置文件中把需要设置为透明的activity的样式设置为 Android:theme="@android:style/Theme.Transl ...

  4. JS如何动态生成变量名[重点]

    解决方案: function create_variable(num){           var name = "test_"+num;   //生成函数名           ...

  5. Python 极简教程(十二)逻辑控制语句 if else

    计算机软件之所以能够对不同的情况进行不同的处理,就是我们在编码的时候,通过逻辑控制语句,告诉软件在不同的情况下应该做什么处理. 比如我们在登录的时候,那么当你输入正确的账号密码和错误的账号密码,完全是 ...

  6. 洛谷 P2693 [USACO1.3]号码锁 Combination Lock

    P2693 [USACO1.3]号码锁 Combination Lock 题目描述 农夫约翰的奶牛不停地从他的农场中逃出来,导致了很多损害.为了防止它们再逃出来,他买了一只很大的号码锁以防止奶牛们打开 ...

  7. j2ee,jsp,servlet文件下载server端

    1.getOutputStream() has already been called for this response 报错的原因: 使用tomcat容器调用response.getOutputS ...

  8. BAT面试题 - 找一个无序实数数组中的最大差值

    题目描写叙述: 一个无序的实数数组a[i].要求求里面大小相邻的实数的差的最大值.比方 double a[]={1,5,4,0.2,100} 这个无序的数组,相邻的数的最大差值为100-5=95. 题 ...

  9. javascript中的事件问题的总结

    一.什么是事件? 事件就是DOM和浏览器之间的交互行为(只要触发了这个行为,也就相当于触发了事件),我们可以通过事件监听来绑定事件,例如:box.onclick=function(){},如果我们点击 ...

  10. 洛谷—— P1765 手机_NOI导刊2010普及(10)

    https://www.luogu.org/problem/show?pid=1765#sub 题目描述 一般的手机的键盘是这样的: 1 2 abc 3 def 4 ghi 5 jkl 6 mno 7 ...