JavaWeb工程中集成YMP框架快速上手
了解YMP框架
YMP于2014年10月25日正式发布1.0版本,在此之前就已在实际项目中得到广泛使用,从最初仅限团队内部使用,到合作伙伴的开发团队,再到身边的朋友,和朋友的朋友们也开始将YMP投入到实际项目中去,所以在这里我要向一直以来帮助、支持我的这些同事、朋友们表示衷心的感谢!是大家的信赖和对它的认可,才使得YMP快速成长起来,在变化过程中它一直在不断的改进、优化直至最终对外发布。
没有完美的框架,只有适合的才是好的,为了让YMP更简单易用,从2015年1月26日正在开始了v2版本的开发,用了整一年的时间对YMP进行重构,在新版本中包含大量在v1使用过程中收集的新特性、功能改进和代码优化,万变不改初心,让开发工作像搭积木一样轻松是我们一直不懈努力的目标!
当然,框架还有很多不足,仍需要不断完善,如果觉得YMP可以帮到您,也衷心希望得到您的支持,提出您的需求、想法、意见和建议一起讨论,一起让它变得更好!
YMP的主要技术特性:
- 采用组件化、模块化打包方式,可按需装配,灵活可扩展;
- 采用微内核实现Autoscan、AOP、IoC、Event等,涵盖SSH框架中绝大部分核心功能;
- 统一配置体系结构,感受不一样的文件资源配置及管理模式;
- 整合多种日志系统(log4j、jcl、slf4j)、日志文件可分离存储;
- 轻量级持久化层封装,针对RDBMS(MySQL、SQLServer、Oracle等)和NoSQL(MongoDB、Redis等)提供支持;
- 完善的插件机制,助力于更细颗粒度的业务拆分;
- 独特的独立服务开发体验;
- 功能强大的验证框架,完全基于Java注解,易于使用和扩展;
- 灵活的缓存服务,支持EhCache、Redis和多级缓存(MultiLevel)技术;
- 配置简单的MVC架构,强大且易于维护和扩展,支持RESTful风格,支持JSP、HTML、Binary、Freemarker、Velocity等多种视图技术;
框架整体结构图:
下载和编译YMP框架代码
由于当前YMP v2版本未正式发布其JAR包资源到Maven中央库,所以本节主要介绍一下如何手动安装编译YMP框架到本地Maven库中。
步骤1:浏览器打开YMP项目地址http://git.oschina.net/suninformation/ymate-platform-v2,点击复制GIT资源路径,如图-1所示:
步骤2:打开终端并进入目标目录中,执行git clone命令完成YMP框架源码下载,如图-2所示:
git clone https://git.oschina.net/suninformation/ymate-platform-v2.git
步骤3:源码下载完毕后,进入项目目录并执行Maven编译、安装命令,如图-3所示:
cd ymate-platform-v2 mvn clean source:jar install
到此,我们已经成功的完成了YMP框架包的手动编译和安装到本地Maven库中。
小结:
本文就算是YMP系列文章的开篇吧,寥寥百十字,说的都是心里话,接下来会不定时的陆续更新有关YMP框架的使用方法、阐述一些功能实现细节等。
相关推荐
-
JavaWeb工程中集成YMP框架快速上手(二)
本文将介绍如何在Java Web工程中集成YMP框架,操作过程基于IntelliJ IDEA做为开发环境,工程结构采用Maven构建: IntelliJ IDEA下载地址: https://www.jetbrains.com/idea/download/ Maven下载地址: http://maven.apache.org/ 创建项目 1. 打开IDEA开发环境并点击Create New Project按钮开始创建新项目向导,如下图-1所示: 2. 在New Project窗口中选中左侧Mave
-
基于Java ORM框架的使用详解
ORM框架不是一个新话题,它已经流传了很多年.它的优点在于提供了概念性的.易于理解的数据模型,将数据库中的表和内存中的对象建立了很好的映射关系.我们在这里主要关注Java中常用的两个ORM框架:Hibernate和iBatis.下面来介绍这两个框架简单的使用方法,如果将来有时间,我会深入的写一些更有意思的相关文章.HibernateHibernate是一个持久化框架和ORM框架,持久化和ORM是两个有区别的概念,持久化注重对象的存储方法是否随着程序的退出而消亡,ORM关注的是如何在数据库表和内存
-
详解Java的Spring框架中的注解的用法
1. 使用Spring注解来注入属性 1.1. 使用注解以前我们是怎样注入属性的 类的实现: class UserManagerImpl implements UserManager { private UserDao userDao; public void setUserDao(UserDao userDao) { this.userDao = userDao; } ... } 配置文件: <bean id="userManagerImpl" class="com.
-
java集合框架 arrayblockingqueue应用分析
Queue ------------ 1.ArrayDeque, (数组双端队列) 2.PriorityQueue, (优先级队列) 3.ConcurrentLinkedQueue, (基于链表的并发队列) 4.DelayQueue, (延期阻塞队列)(阻塞队列实现了BlockingQueue接口) 5.ArrayBlockingQueue, (基于数组的并发阻塞队列) 6.LinkedBlockingQueue, (基于链表的FIFO阻塞队列) 7.LinkedBlockingDeque, (
-
java集合框架的体系结构详细说明
最近在一本J2EE的书中看到了很不错的对集合框架的说明文章,筛选后发上来和大家共享,集合框架提供管理对象集合的接口和类.它包含接口,类,算法,以下是它的各个组件的说明. Collection接口 Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements).一些Collection允许相同的元素而另一些不行.一些能排序而另一些不行.Java SDK不提供直接继承自Collection的类,Java SDK提供的类都是继承自
-
关于Java集合框架面试题(含答案)上
1.Java集合框架是什么?说出一些集合框架的优点? 每种编程语言中都有集合,最初的Java版本包含几种集合类:Vector.Stack.HashTable和Array.随着集合的广泛使用,Java1.2提出了囊括所有集合接口.实现和算法的集合框架.在保证线程安全的情况下使用泛型和并发集合类,Java已经经历了很久.它还包括在Java并发包中,阻塞接口以及它们的实现.集合框架的部分优点如下: (1)使用核心集合类降低开发成本,而非实现我们自己的集合类. (2)随着使用经过严格测试的集合框架类,代
-
详谈java集合框架
1.为什么使用集合框架 当我们并不知道程序运行时会需要多少对象,或者需要更复杂方式存储对象--可以使用Java集合框架 2.Java集合框架包含的内容 接口:(父类)Collection接口下包含List(子类 )接口和Set(子类) 接口 List接口下又包含(ArrayList集合实现类和LinkedList集合实现类) Set接口下又包含(HashSet集合实现类和TreeSet集合实现类) 接口:(父类)Map接口下包含(HashMap集合实现类和TreeMap 集合实现类) *Coll
-
浅谈Java三大框架与应用
前言:对于一个程序员来说,尤其是在java web端开发的程序员,三大框架:Struts+Hibernate+Spring是必须要掌握熟透的,因此,下面谈谈java三大框架的基本概念和原理. JAVA三大框架 一.Spring Spring是一个解决了许多在J2EE开发中常见的问题的强大框架. Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯.Spring的架构基础是基于使用JavaBean属性的Inversion of Control容器.然而,这仅仅是
-
JavaWeb工程中集成YMP框架快速上手
了解YMP框架 YMP于2014年10月25日正式发布1.0版本,在此之前就已在实际项目中得到广泛使用,从最初仅限团队内部使用,到合作伙伴的开发团队,再到身边的朋友,和朋友的朋友们也开始将YMP投入到实际项目中去,所以在这里我要向一直以来帮助.支持我的这些同事.朋友们表示衷心的感谢!是大家的信赖和对它的认可,才使得YMP快速成长起来,在变化过程中它一直在不断的改进.优化直至最终对外发布. 没有完美的框架,只有适合的才是好的,为了让YMP更简单易用,从2015年1月26日正在开始了v2版本的开发,
-
Springboot中集成Swagger2框架的方法
摘要:在项目开发中,往往期望做到前后端分离,也就是后端开发人员往往需要输出大量的服务接口,接口的提供方无论是是Java还是PHP等语言,往往会要花费一定的精力去写接口文档,比如A接口的地址.需要传递参数情况.返回值的JSON数据格式以及每一个字段说明.当然还要考虑HTTP请求头.请求内容等信息.随着项目的进度快速高速的迭代,后端输出的接口往往会面临修改.修复等问题,那也意味着接口文档也要进行相应的调整.接口文档的维护度以及可读性就大大下降. 既然接口文档需要花费精力去维护,还要适当的进行面对面交
-
React BootStrap用户体验框架快速上手
官方文档http://react-bootstrap.github.io/getting-started.html 安装 在终端cd到你的项目目录下执行:$ npm install react-bootstrap 然后需要我们手动引用css <!-- Latest compiled and minified CSS --> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstr
-
微信小程序的mpvue框架快速上手指南
一.什么是mpvue框架? mpvue 是一个使用 Vue.js 开发小程序的前端框架.框架基于 Vue.js 核心(所以建议熟练掌握vue再使用mpvue框架,否则还是建议去使用原生框架去写小程序),mpvue 修改了 Vue.js 的 runtime 和 compiler 实现,使其可以运行在小程序环境中,从而为小程序开发引入了整套 Vue.js 开发体验. 二.必要的开发基础 ① 熟练掌握vue.js(未曾使用过vue这个框架的话,建议vue的官方文档进行学习:https://cn.vue
-
Android开发工程中集成mob短信验证码功能的方法
一.前言 现在的app基本上都需要用到短信功能,注册时或者有消息通知时需要给用户发送一条短信,但是对于个人开发者来说,去买第三方的短信服务实在是有点奢侈,很好的是mob为我们提供了免费的短信验证码服务功能,我不是打广告,的确觉得这项服务很不错.那么下面就简单讲一下如何在自己的工程里集成mob的短信功能,其实整个流程并不复杂,只是个人觉得mob的官方文档有点小乱,官方Demo也有点小复杂,同时有一些细节地方容易被忽视,也会导致一些问题. PS:太喜欢mob的logo了. 二.实现过程 本篇只涉及A
-
C#中使用Cache框架快速实现Cache操作
.NET 4.0中新增了一个System.Runtime.Caching的名字空间,它提供了一系列可扩展的Cache框架,本文就简单的介绍一下如何使用它给程序添加Cache. 一个Cache框架主要包括三个部分:ObjectCache.CacheItemPolicy.ChangeMonitor. ObjectCache表示一个CachePool,它提供了Cache对象的添加.获取.更新等接口,是Cache框架的主体.它是一个抽象类,并且系统给了一个常用的实现——MemoryCache. Cach
-
详解iOS中集成ijkplayer视频直播框架
ijkplayer 是一款做视频直播的框架, 基于ffmpeg, 支持 Android 和 iOS, 网上也有很多集成说明, 但是个人觉得还是不够详细, 在这里详细的讲一下在 iOS 中如何集成ijkplayer, 即便以前从没有接触过, 按着下面做也可以集成成功! 一. 下载ijkplayer ijkplayer下载地址: http://xiazai.jb51.net/201612/yuanma/ijkplayer-master_jb51.rar 下载完成后解压, 解压后文件夹内部目录如下图:
-
Taro集成Redux快速上手的方法示例
前言的前言 最近被一款来自京东凹凸实验室的多终端开发框架Taro吸粉了,官方对 Taro 的简介是使用React语法,一键生成多终端应用(包括小程序 / H5 / 快应用 / RN 等),而目前 Github 的 Star 也达到了非常可观的数量:4k+.对此,笔者也尝了把鲜,体验了下如何使用Taro写微信小程序.感觉还是十分灵活易用(一气呵成,都没遇到bug!),并且 Taro 还集成了 Redux,解决了小程序没有数据流框架的痛点. 这里贴一个 Taro 的官方文档,有兴趣的同行们可以了解下
-
快速上手Java单元测试框架JUnit5
为什么学JUnit5 Java技术栈的单元测试框架有两个:JUnit和TestNG,有种说法是TestNG比JUnit更强大,学TestNG就够了,但是当我打开GitHub看到star的时候,犹豫了: JUnit TestNG 相差了足足有3K之多.带着这个困惑,我在网上查阅了一番资料,原来JUnit5相较于JUnit4有了重大升级,已经包含了TestNG的所有功能.为了坚定我学JUnit的想法,我咨询了身边做Java开发的朋友,开发写UT都是用的JUnit.这两个理由足以让我开始对JUnit5
随机推荐
- 用正则表达式格式化html标签的代码
- 初识SQLITE3数据库
- H2 数据库导入CSV文件实现原理简析
- 超全面的vue.js使用总结
- javaScript 简单验证代码(用户名,密码,邮箱)
- 在ASP.NET 2.0中操作数据之十七:研究插入、更新和删除的关联事件
- 为自己的ASP网站系统构建一套标记语言
- WordPress中限制非管理员用户在文章后只能评论一次
- python读取二进制mnist实例详解
- C#递归算法寻找数组中第K大的数
- MySQL SQL语句优化的10条建议
- 3种高效的Tags标签系统数据库设计方案分享
- 详解js实现线段交点的三种算法
- SQL Server存储过程同时返回分页结果集和总数
- MySQL的23个需要注意的地方
- Java使用正则表达式实现找出数字功能示例
- React实现点击删除列表中对应项
- Spring向页面传值和接受页面传过来的参数详解
- 使用c#开发公众平台自定义菜单功能
- Java验证码功能的实现方法