文档章节

Smart 功能总结

黄勇
 黄勇
发布于 2014/06/06 12:15
字数 731
阅读 6168
收藏 5
点赞 9
评论 12

从 2013 年 9 月 1 日起,我开始开发 Smart Framework 这款轻量级 Java Web 框架。如果没有大家的支持与鼓励,恐怕我不会有激情继续将开源坚持下去。感谢 开源中国 提供了这么好的一个平台,让我结识了很多志同道合的朋友,不到一年的时间,我的目标基本已经实现了!

如果您还不了解 Smart 框架,建议您阅读这篇博文:

系列博文:http://my.oschina.net/huangyong/blog/158380

目前,Smart Framework 已经发布到 2.3 版本了,同时也开发了一些 Plugin 来扩展这个框架,现在是时候对 Smart 目前的功能做一个总结了。

Smart 功能总结

  1. 提供了一个轻量级的 IOC 框架
  2. 提供了一个轻量级的 AOP 框架
  3. 提供了一个轻量级的 ORM 框架
  4. 提供了一个轻量级的基于 JDBC 的封装
  5. 提供了一个轻量级的基于 Servlet 3.0 的可扩展的 MVC 框架
  6. 提供了一个灵活的插件机制
  7. 提供了一个可扩展的数据源工厂(可通过插件进行扩展)
  8. 提供了一个可扩展的类扫描器
  9. 提供了一个可扩展的数据访问接口
  10. 提供了一个基于注解的事务管理框架
  11. 提供了一个基于 JUnit 的测试框架
  12. 提供了一个简单的代码生成器
  13. 提供了一个基于 Apache Shiro 的安全控制插件
  14. 提供了一个基于注解的 Cache 插件
  15. 提供了一个通用的 I18N 插件
  16. 提供了一个基于 Apache Commons Email 的邮件收发插件
  17. 提供了一个基于 Apache Velocity 的模板引擎插件
  18. 提供了一个基于 Quartz 的作业调度插件
  19. 提供了一个基于 Apache CXF 的 SOAP Web Service 插件
  20. 提供了一个基于 Apache CXF 的 REST Web Service 插件
  21. 提供了一个基于 Hessian 的 RMI 插件
  22. 提供了一个基于 Apache XML-RPC 的 XML-RPC 插件
  23. 提供了一个基于 Apache Lucene 的搜索引擎插件
  24. 提供了一个基于 MyBatis 的数据持久层插件(感谢 abel533 的贡献)
  25. 提供了一个强大的 Action 方法参数绑定的插件(感谢 abel533 的贡献)
  26. 提供了一个基于 C3P0 的连接池插件
  27. 提供了一个基于 Druid 的连接池插件
  28. 提供了一个基于 Jasig CAS 的 SSO 模块(模块不依赖于框架,可以独立使用)
  29. 提供了一个通用的 Cache 模块与基于内存的实现
  30. 提供了一个基于 Ehcache 的 Cache 模块
  31. 提供了一个基于 Redis 的 Cache 模块(感谢 蛙牛 的贡献)

Smart Framework v2.4 现已启动,期待您提供宝贵的建议或意见!更期待您的参与,我们一起把这个框架做得更好!

源码地址:http://git.oschina.net/huangyong/smart-framework 问题反馈:http://git.oschina.net/huangyong/smart-framework/issues

Smart Framework

© 著作权归作者所有

共有 人打赏支持
黄勇

黄勇

粉丝 6109
博文 117
码字总数 215797
作品 1
浦东
CTO(技术副总裁)
加载中

评论(12)

wyongan
wyongan
看看还有有没有持续更新
今秋
今秋
好牛逼,学习
hans汉斯
hans汉斯
不错的轮子,精力有限,更注重技术转换成价值。79
E
ElaineYB

引用来自“ElaineYB”的评论

首先对博主的无私奉献表示感谢!我现在正在试用这一框架,发现框架生成的数据库脚本把数据库表的列名解释成了下划线风格字符串,而非驼峰风格,但我的表字段是采用驼峰风格命名的,不知有没有什么解决办法?

引用来自“黄勇”的评论

感谢支持!可以在 Entity 的 Field 上添加 Column 注解,来映射具体的数据表中的列名,即可实现自定义映射规则。

引用来自“ElaineYB”的评论

首先多谢您的及时回复,我有这样做,但好像无效,看了源代码,SQLHelper.generateInsertSql直接调用StringUtil.camelhumpToUnderline(fieldName)修改列名而不是用EntityHelper.getEntityMap读取列名

引用来自“黄勇”的评论

能否帮忙提交一个 Issue?谢谢! http://git.oschina.net/huangyong/smart-framework/issues
非常感谢您的及时回复,当然乐意帮忙
黄勇
黄勇

引用来自“ElaineYB”的评论

首先对博主的无私奉献表示感谢!我现在正在试用这一框架,发现框架生成的数据库脚本把数据库表的列名解释成了下划线风格字符串,而非驼峰风格,但我的表字段是采用驼峰风格命名的,不知有没有什么解决办法?

引用来自“黄勇”的评论

感谢支持!可以在 Entity 的 Field 上添加 Column 注解,来映射具体的数据表中的列名,即可实现自定义映射规则。

引用来自“ElaineYB”的评论

首先多谢您的及时回复,我有这样做,但好像无效,看了源代码,SQLHelper.generateInsertSql直接调用StringUtil.camelhumpToUnderline(fieldName)修改列名而不是用EntityHelper.getEntityMap读取列名
能否帮忙提交一个 Issue?谢谢! http://git.oschina.net/huangyong/smart-framework/issues
E
ElaineYB

引用来自“ElaineYB”的评论

首先对博主的无私奉献表示感谢!我现在正在试用这一框架,发现框架生成的数据库脚本把数据库表的列名解释成了下划线风格字符串,而非驼峰风格,但我的表字段是采用驼峰风格命名的,不知有没有什么解决办法?

引用来自“黄勇”的评论

感谢支持!可以在 Entity 的 Field 上添加 Column 注解,来映射具体的数据表中的列名,即可实现自定义映射规则。
首先多谢您的及时回复,我有这样做,但好像无效,看了源代码,SQLHelper.generateInsertSql直接调用StringUtil.camelhumpToUnderline(fieldName)修改列名而不是用EntityHelper.getEntityMap读取列名
黄勇
黄勇

引用来自“ElaineYB”的评论

首先对博主的无私奉献表示感谢!我现在正在试用这一框架,发现框架生成的数据库脚本把数据库表的列名解释成了下划线风格字符串,而非驼峰风格,但我的表字段是采用驼峰风格命名的,不知有没有什么解决办法?
感谢支持!可以在 Entity 的 Field 上添加 Column 注解,来映射具体的数据表中的列名,即可实现自定义映射规则。
E
ElaineYB
首先对博主的无私奉献表示感谢!我现在正在试用这一框架,发现框架生成的数据库脚本把数据库表的列名解释成了下划线风格字符串,而非驼峰风格,但我的表字段是采用驼峰风格命名的,不知有没有什么解决办法?
Larry_OSC
Larry_OSC
支持!79
mirov
mirov
支持79
使用 Smart Security 实现安全控制

很多朋友都问过我同样一个问题:“Smart 目前有身份认证与权限管理等安全控制功能吗?” 当听到这样的问题时,我真的非常不好意思,实在是没有这方面的特性。不过当我学习了 Shiro 以后,让我...

黄勇 ⋅ 2014/03/31 ⋅ 11

使用 IDEA + Maven + Git 快速开发 Java Web 应用

引言 今天想跟大家分享一下我主要的 Java 开发工具,我一般是这样工作的:用 IDEA 写代码,用 Maven 管理 jar 包依赖与项目打包,用 Git 进行代码版本控制。 关于这三款工具的安装与配置的过...

黄勇 ⋅ 2013/11/11 ⋅ 17

蓝牙4.0 BLE与传统蓝牙之间的兼容性

蓝牙分为三种:Bluetooth Smart Ready、Bluetooth Smart(Smart是低功耗蓝牙的标识)、以及标准 Bluetooth。根据 Bluetooth SIG的说法,这样是为了要分辨装置间的相容性以及标识各版本的传输...

Gobert ⋅ 2015/04/26 ⋅ 0

蓝牙4.0 BLE与传统蓝牙之间的兼容性

蓝牙分为三种:Bluetooth Smart Ready、Bluetooth Smart(Smart是低功耗蓝牙的标识)、以及标准 Bluetooth。根据 Bluetooth SIG的说法,这样是为了要分辨装置间的相容性以及标识各版本的传输...

IcedBeer ⋅ 2016/11/03 ⋅ 0

初步实现 Mail 插件 —— 发送邮件

本文是《轻量级 Java Web 框架架构设计》的系列博文。 在 Java 应用系统中为了实现邮件发送与收取功能,往往都会选择使用 JavaMail API。但该 API 涉及的内容比较繁琐,概念与细节都比较多,...

黄勇 ⋅ 2013/11/24 ⋅ 12

SmartWatch2开发-环境搭建1

[原文地址][download] Sony Add-on SDK是标准Android SDK的一个插件,它包含Sony提供的API。 Sony Add-on SDK提供全面的example代码、一个模拟器以及API参考手册(同时还在在线的参考手册)。另...

chenming ⋅ 2013/12/06 ⋅ 0

php7简单性能测试

(一) 一个简单的测试 看看php7跑多快(就不罗列电脑配置了,因为环境是一样的) 1 测试代码: 2 测试结果: 运行速度:php5.6.7用时3.5s,php7用时2.0s,php7在运行速度上有了很大的提升 ...

燕玉苗 ⋅ 2015/06/16 ⋅ 1

smart-socket v1.3.0,不安分的搅局者

smart-socket自发布以来,得到了很多朋友的认可,同时也伴随着的不少的质疑。大部分的质疑是无实际论据支撑的,就是看你不爽,就是你想喷你的项目。对于这样的“朋友”,现在很高兴的通知你们...

三刀蜀黍 ⋅ 01/23 ⋅ 0

【step by step构建轻量级web框架】轻量级框架jbeer预览

本系列博文,将会一步一步介绍如何构建一个轻量级的web框架jbeer git地址:http://git.oschina.net/bieber/jbeer 经过本人差不多半年的纠结,今天终于把JBeer的0.1版本完成了。Jbeer具备MVC...

Bieber ⋅ 2014/06/17 ⋅ 2

Eclipse在线安装http://propsorter.sourceforge.net/ve...

Velocity Eclipse 插件 http://propsorter.sourceforge.net/veloeclipse 在Eclipse的Help->Install New Software... 点击“Add加 Veloeclipse,值:http://propsorter.sourceforge.net/veloe......

山哥 ⋅ 2012/02/16 ⋅ 3

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Python爬虫,抓取淘宝商品评论内容

作为一个资深吃货,网购各种零食是很频繁的,但是能否在浩瀚的商品库中找到合适的东西,就只能参考评论了!今天给大家分享用python做个抓取淘宝商品评论的小爬虫! 思路 我们就拿“德州扒鸡”...

python玩家 ⋅ 14分钟前 ⋅ 0

MySQL 内核深度优化

MYSQL数据库适用场景广泛,相较于Oracle、DB2性价比更高,Web网站、日志系统、数据仓库等场景都有MYSQL用武之地,但是也存在对于事务性支持不太好(MySQL 5.5版本开始默认引擎才是InnoDB事务...

java高级架构牛人 ⋅ 37分钟前 ⋅ 0

用户登录信息-钉子效果(基于jquery2.0)

本js效果使用jquery2.0,清晰的分解用户登录信息的(钉子效果),该效果直接用在作者网站(www.phpkhbd.com)上。 里面的难点有:定时器,延时。 大致效果如下: 一开始: 鼠标放上去的时候:...

宁哥实战课堂 ⋅ 38分钟前 ⋅ 0

解决yum安装报错Protected multilib versions

使用yum安装报错Protected multilib versions原因是因为多个库不能共存,不过更新的话也并不行,但是可以在安装命令后面加上如下一段命令: --setopt=protected_multilib=false 案例: 比如需...

北岩 ⋅ 49分钟前 ⋅ 0

为什么要学习Typescript???

简单来说 目前的typescript就是未来的javascript 为什么?? 这要从ECMA-262标准的第4版说起 对了 我们说的ES5 其实是ECMAScript3.1这个替代性建议被扶正了而已... 那么 第4版标准是什么? 看看...

hang1989 ⋅ 53分钟前 ⋅ 0

linux安装ipfs

一、下载ipfs # cd /usr/local/ipfs/ # wget https://dist.ipfs.io/go-ipfs/v0.4.15/go-ipfs_v0.4.15_linux-amd64.tar.gz # tar -zxvf go-ipfs_v0.4.15_linux-amd64.tar.gz 二、安装ipfs # ......

八戒八戒八戒 ⋅ 59分钟前 ⋅ 0

jvm程序执行慢诊断手册

生产环境最多的几种事故之一就是程序执行慢,如果是web服务的话,表现就是响应时间长。本文分享,从业多年形成的排查守则。 诊断步骤 系统资源查看 首先是系统资源查看,而且必须是在第一步。...

xpbob ⋅ 59分钟前 ⋅ 0

YII2 advanced 高级版本项目搭建-添加API应用以及多应用

一、YII安裝 安裝yii可以用composer安裝,也可以在yii中文社区下载归档文件安装 composer安装就不介绍了,因为要安装composer,比较麻烦,当然安装了composer是最好的,以后安装yii的插件要用...

botkenni ⋅ 今天 ⋅ 0

在jdk1.8的环境下模拟永久代内存溢出

相信不少小伙伴在看深入理解Java虚拟机的时候,作者给我们举例一个demo来发生PermGen space 1、通过List不断添加String.intern(); 2、通过设置对应的-XX:PermSize与-XX:MaxPermSize(更快看到...

虾几把写 ⋅ 今天 ⋅ 0

开发OpenDaylight组件的完整流程

在前面介绍学习了OpenDaylight的几个重要模块后,这里再来介绍下完整开发一个模块的过程。 OSGI的bundles提供被其他OSGI组件调用的服务。这个教程中展示的是Data Packet Service去解析数据包...

wangxuwei ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部