开源

APDPlat的系统启动和关闭流程剖析

点点圈 提交于 2019-12-06 09:42:46
APDPlat 接管了Spring的启动关闭权,为各种运行其上的开源框架和类库的 无缝集成 提供了支持。 当然,大家都知道,一个JAVA EE Web应用的入口点是web.xml,APDPlat当然也不例外,我们看看APDPlat是如何接管Spring的启动关闭权的: <listener> <description>经过定制的spring监听器</description> <listener-class>org.apdplat.platform.spring.APDPlatContextLoaderListener</listener-class> </listener> /** * 自定义Spring的ContextLoaderListener * @author 杨尚川 */ public class APDPlatContextLoaderListener extends ContextLoaderListener { @Override public void contextInitialized(ServletContextEvent event) { //接管系统的启动 SystemListener.contextInitialized(event); super.contextInitialized(event); } @Override public void

Android是如何规避GPL传染性的

时光毁灭记忆、已成空白 提交于 2019-12-06 08:00:34
一、首先得了解android体系结构 从下到上介绍上图 Linux Kernel: 完全开源,GPLv2协议 Libraryies: 含少量开源库 Android Runtime: android 优化的JAVA虚拟机,更适合嵌入式系统。 Application Framework和Application都是JAVA程序。 二、android如何规避GPLv2的传染性 首先,最关键点是 Linus Torvalds在Linux内核版权最前的一段话,保证了Linux内核GPLv2不传染 Linux内核的版权是GPLv2,但是 Linus Torvalds在Linux内核的版权文件COPYING中最前面增加了下面一段话,保证了Linux内核的商业用途不被GPLv2传染。 NOTE! This copyright does *not* cover user programs that use kernel services by normal system calls - this is merely considered normal use of the kernel, and does *not* fall under the heading of "derived work". Also note that the GPL below is copyrighted by the

欢迎广大技术爱好者参与JEECG开源项目

十年热恋 提交于 2019-12-06 02:38:31
====== ===================================================================== ************欢迎广大技术爱好者 参与 JEECG开源项目************ JEECG开源项目 是一款基于代码生成器的智能开发平台。在不断的摸索中吸引和凝聚了一批有想法、有冲劲的优秀的技术爱好者,在大家的努力下平台逐渐成型、成熟、壮大。 JEECG 项目发起人 张代浩(scott) ,真诚邀请广大技术爱好者加入,通过 JEECG 开源项目的锻炼,提高能力,丰富经验,实现自我价值,共同打造一个优秀的开源 平台 !!! JEECG团队精神 : 荣誉共享,成果共享,同甘共苦,做一个最好的开源平台!! ( JEECG平台采用组件式发展:团队组件负责人,待组件成熟可以独立出来,成为一个独立开源项目 ) 一、参与开源的意义: 1. 实现自我价值(体验自我设计编码的成就感) 2. 提高自己的IT技能 3.丰富开源项目经验 , 拓展交际圈(踏入开源社区) 4. 学习JEECG架构设计思想 5. 第一时间体验JEECG最新特性(分享源码) 6. 项目发起人会带领你学习架构技术,分享架构师学习资料 7. 免费参加一些公益性活动 比如 :CSND等社区举办的技术峰会,团队成员可以获取免费门票 二、JEECG 开源项目参与要求: 发起人

轻触开源(二)-Gson项目源码解析_壹

怎甘沉沦 提交于 2019-12-05 19:45:56
上篇文章<轻触开源-Java泛型Type类型的应用和实践(一)> https://my.oschina.net/u/874727/blog/747427 非墨写到JAVA的泛型机制,被用到很多的开源项目。在众多的开源项目中,Gson是很具有代表性的一个。Gson是Google公司编写的一套用于Json数据转化为Java对象的一套通用工具库。之所以说它是通用工具库,是因为它的实现代码全部基于最基础的Java运行时环境,而不依赖于任何系统平台,也就是说你不仅可以在J2EE项目中应用它,你一样可以很容易的在Android,J2ME等等平台中直接应用它。 Gson跟很多的开源操纵了Java内部数据类型的项目相同,为了方便记录类型数据,Gson会将Java原有的一套数据类型,转化为自己的内部数据类型。比如,在上一章我们提到的在Java泛型中记录类型的Class和Type类型,就被Gson转化为TypeToken。WildcardType转化为Gson自己的WildcardTypeImpl,GenericArrayType转为了Gson的内部类型GenericArrayTypeImpl。而这些类型的定义都被记录在com.google.gson.internal包中。我们从这个包名也看的很明白,就是Gson系统将一些转换的细节屏蔽到Gson项目的内部,而只暴露给用户一些简单的接口。

7个杀手级的开源监测工具

爱⌒轻易说出口 提交于 2019-12-05 16:35:25
工具1:“Cacti” Cacti是一个性能广泛的图表和趋势分析工具,可以用来跟踪并几乎可以绘制出任何可监测指标,描绘出图表。从硬盘的利用率到风扇的转速,在一个电脑管理系统中,只要是可以被监测的指标,Cacti都可以监测,并快速的转换成可视化的图表。 工具2:“Nagios” Nagios是一个经典的老牌系统和网络监测工具。运行速度快,可靠,需要针对应用定制。Nagios对于初学者是一个挑战。但是它的极其复杂的配置正好也反应出它的强大,因为它几乎可以适用于任何监控任务。要说缺点的话就是不怎么耐看,但是其强劲的功能和可靠性弥补了这个缺点。 工具3:“Icinga” Icinga 是一个正在重建的Nagios的分支,它提供了一个全面的监控和警报的框架,致力于设计一个像Nagios一样的开放和可扩展性的平台。但是和Nagios拥有不一样的Web界面。Icinga 1 和 Nagios非常的相近,不过Icinga 2就重写了。两个版本都能很好的兼容,而且,Nagios用户可以很轻松的转到Icinga 1平台。 工具4:“NeDi” NeDi可能不如其他的工具一样闻名全世界,但它确是一个跟踪网络接入的一个强大的解决方案。它可以很流畅的运行网络基础设施和设备目录,保持对任何事件的跟踪。并且可以提供任意设备的当前地点,也包括历史地点。NeDi可以被用于定位被偷的,或者是丢失掉的设备

APDPlat如何自动建库建表并初始化数据?

▼魔方 西西 提交于 2019-12-05 13:53:09
APDPlat 共支持10种数据库:DB2、DERBY、H2、HSQL、INFORMIX、MYSQL、ORACLE、POSTGRESQL、SQL_SERVER、SYBASE。 数据库的默认配置信息在文件APDPlat_Core/src/main/resources/org/apdplat/db.properties中定义,用户可以根据自己的选择,在APDPlat_Web/src/main/resources/db.local.properties配置文件中覆盖默认配置。 1、如何指定使用哪一种数据库呢? jpa.database=MYSQL jpa.database 配置项的值可为上述10种数据库之一,10种数据库的JDBC驱动已经集成到APDPlat中,其中5种定义到maven配置文件APDPlat_Web/pom.xml的依赖中,其余5种放置在APDPlat_Web/src/main/webapp/WEB-INF/lib目录中。 2、如何配置数据库连接信息呢? #mysql db.driver=com.mysql.jdbc.Driver db.url=jdbc:mysql://localhost:3306/${module.short.name}?useUnicode=true&characterEncoding=UTF-8&createDatabaseIfNotExist

开源 Android pdf 阅读器开发总结

女生的网名这么多〃 提交于 2019-12-05 00:19:51
前段时间项目涉及到 pdf 阅读,因此我开始找了些源码阅读比较,现在贴出各实现方案的对比。希望对大家有帮助。方便大家的阅读,我将自己认为最好的排在最前。 Vudroid Google code : http://code.google.com/p/vudroid/ 这是一款可以阅读 pdf 和 djvu 格式文本的阅读器。按道理说我使用这个给自己带来一定的麻烦,因为我自己需要剥离 pdf 部分,因为作者底层用的 ndk 开发,我还得重新编译 so 库。但是,在我找到的所有源代码中,此作品是最顺畅的,我不能割舍。如果大家想要快速使用而不想剥离 pdf 部分,可以使用我的 google code : http://code-ernest.googlecode.com/svn/trunk/DocumentViewer droidReader Google code: http://code.google.com/p/droidreader/ 其采用 native library 和 Vudroid 一样: MuPDF 但是它的缺点是,实现上比 Vudroid 少了那么点顺畅性,在 zoom 这一点上要输 Vudroid ,其他方面都很棒。 apv Google code : http://code.google.com/p/apv/ 其采用 native library 和

蓝缘系统第三版本即将开源;基于springMVC+Apache shiro​ 1.2.3+Mybai

ぐ巨炮叔叔 提交于 2019-12-04 22:16:50
蓝缘系统第三版本即将开源;基于springMVC+ Apache shiro 1.2.3 + Mybaits3.x的权限系统,,开放源码,支持开源 1.0版和2.0版的源码已经开源 1.0版本:http://blog.csdn.net/mmm333zzz/article/details/16863543     2.0版本:http://blog.csdn.net/mmm333zzz/article/details/37773589 关于3.0新版本的说明: 一大亮点: 采用最新的技术流行框架:springMVC4.1.4+shiro1.2.3+spring4.x+Mybaits3.2.8+Ajax+html5 spring4.x的新特性请看: http://jinnianshilongnian.iteye.com/blog/1989381 说明: 这个版本主要是对原有的蓝缘系统更换UI界面,功能上基本一致, 但此还在开发当中..... 关于以前版本,不再维护,致力于新版本的开发和维护.. 优化: 封装好baseSerive,baseSeriveImpl,baseMapper..服务层,持久层统一调用,大大减少代码开发时间. spring4.x的强类型注解,泛型限定式依赖注入 用mapper来代替dao,由mybaits自动管理各事务的操作,大大减少代码开发时间. 3

chromium浏览器开发系列第四篇:如何调试最新chromium源码

三世轮回 提交于 2019-12-04 20:55:00
附上上几篇文章地址,方便大家查看: 下载源码 编译源码 目录结构 接二连三的事情,时间比较紧张,但是还是没有把这个系列的文章丢掉,因为这也是对自己知识的总结吧。提倡大家多写写,以后再看的时候会有种莫名的小激动。 上周写的是 chromium 的目录结构,好像大家不太感兴趣,在我看来这部分很重要。开头有链接地址,大家想看可以再看看。 从源码下载到编译,到目录结构,今天终于到了重要的环节,调试。 在 windows 上,调试工具都是使用微软自家的产品: Visual Studio 或者 winDBG ( windebug )。 Chromium 也是与时俱进,现在主要使用 Visual Studio2013 。我今天主要讲使用 vs2013 调试源码。 我在编译代码那一章( http://my.oschina.net/ghost045/blog/395973 )的时候曾经讲过生成源码工程的东东,如下: set GYP_MSVS_VERSION=2013 set GYP_GENERATORS=msvs-ninja,ninja set GYP_DEFINES=component=shared_library set PATH=C:\depot_tools\python276_bin\;C:\depot_tools\; python.exe src/build/gyp_chromiumsrc

Rexsee API介绍:基站定位功能,Android CellLocation源码

女生的网名这么多〃 提交于 2019-12-04 18:24:54
先提示一点,不能使用用模拟器研究Android的基站定位:基站信息是来自运营商的,仿真器只能模拟网络延迟(-netdelay)、网速(-netspeed)、以及一些电话相关的操作,gsm <call|accept|busy|cancel|data|hold|list|voice|status>。还不能模拟信号。 一段基于Rexsee( www.rexsee.com )的基本示例demo,其中cid 和 lac 为经纬度。 function query(){ var loction = eval('('+rexseeCellLocation.getLastKnownLocation()+')'); var type = location.type.toLowerCase(); var mcc = parseInt(location.operator.substring(0,3)); var mnc = (type=='gsm')?parseInt(location.operator.substring(3)):location.systemId; var cid= (type=='gsm')?location.cid:location.baseStationId; var lac= (type=='gsm')?location.lac:location.networkId; var