P49 摘要J2ME(Java2 Micro Edition)是近年来随着各种不同设备,尤其是移动通信设备的飞速发展而诞生的一项新的开发技术。它定位在消费性电子产品的应用上,对设备的智能化、多样化,提供了革命性的解决方案,并因其“Write Once,run anywhere”的Java特性而提高开发的效率。随着手机的日益普及、Java功能在移动设备上的实现,Java应用程序产生的手机增值服务逐渐体现出其影响力,对丰富人们的生活内容、提供快捷的资讯起着不可忽视的作用。本论文着眼于J2ME技术的应用,开发一款可商用的手机游戏程序——坦克大战。本程序的界面和运作方式继承于日本任天堂公司在20世纪80年代开发的BattleCity游戏,将老少皆宜的经典作品移植到手机上来,为更流行的硬件平台提供应用软件。本论文介绍了任天堂红白机的软硬件特性、J2ME的相关技术及本程序的结构分析和具体功能的实现。
P46 坦克大战源码根据韩顺平老师视频所作
P57 序任何人写书时都会遇到麻烦,我在编写本书时遇到的麻烦则格外多。具体来讲,本书诞生于2008年年底,当时我同时遭遇了三重打击:Ruboss框架没能作为商业产品;Enterprise Flexible Rails终未成书;Hello!Flex3的版式失败。用嘻哈巨星弗里德里希·尼采(Friedrich Nietzsche)的话说:"只要没杀死我们,就会让我们变得更坚强。" 2008年年底这场失败风暴绝对让我变得更坚强,甚至也让本书变得更好。
P26 Mysql数据库的优化技术对mysql优化时一个综合性的技术,主要包括a:表的设计合理化(符合3NF)b:添加适当索引(index)[四种:普通索引、主键索引、唯一索引unique、全文索引]c:分表技术(水平分割、垂直分割)d:读写[写:update/delete/add]分离e:存储过程[模块化编程,可以提高速度]f:对mysql配置优化[配置最大并发数my.ini.
P23 本章讲述Struts2的工作原理。读者如果曾经学习过Struts1.x或者有过Struts1.x的开发经验,那么千万不要想当然地以为这一章可以跳过。实际上Struts1.x与Struts2并无我们想象的血缘关系。虽然Struts2的开发小组极力保留Struts1.x的习惯,但因为Struts2的核心设计完全改变,从思想到设计到工作流程,都有了很大的不同。
P10 编码规范对于程序员而言尤为重要,有以下几个原因: ◆ 一个软件的生命周期中,80%的花费在于维护。 ◆ 几乎没有任何一个软件,在其整个生命同期中,均由最初的开发人员来维护。 ◆ 编码规范可以改善软件的可读性,可以让程序员尽快而彻底地理解新代码。 ◆ 如果你将源码作为产品发布,就需要确认它是否被很好的打包并且清晰无误,一如你已构建的其它任何产品。
P4 UML符号图一:此实线箭头表示,继承,从一个非接口类的继承.图二:那条连线表示双向关联:看左边,Flight扮演assignedFights角色,有0到1个Plane跟他关联(一个航班要么取消了没有飞机,要么只能对应一架飞机)看右边,Plane扮演着assignedPlane角色,有0到多个Flight跟他关联(一个飞机可以参与多个航班,也可以停在仓库里面烂掉)图三:那条连线表示单向关联:基本的意义跟上面的是一样的,唯一不同的是,右边的类对左边的类是一无所知的.
P42 Oracle命令Oracle用户管理:创建一个用户:createuser用户名identifiedby密码(密码必须以字母开头)给用户修给密码:password用户名修改用户密码:alteruser用户名identifiedby新密码删除用户:dropuser用户名[cascade]授权用户登录dba:grantconn(connect)to用户名授予用户查询emp表权限:grantselectonempto用户名授予用户修改emp表权限:grantupdateonempto用户名授予用户修改/删除/查修权限:grantallonempto用户名收回用户对emp表的权限
P58 在实际开发种LayoutInflater这个类还是非常有用的,它的作用类似于findViewById(),不同点是LayoutInflater是用来找layout下xml布局文件,并且实例化!而findViewById()是找具体xml下的具体widget控件(如:Button,TextView等)。主布局main.xml里有一个TextView和一个Button,当点击Button,出现Dialog,而这个Dialog的布局方式是我们在layout目录下定义的custom_dialog.xml文件(里面左右分布,左边ImageView,右边TextView)。
P18 select,poll,epoll都是IO多路复用的机制。所谓I/O多路复用机制,就是说通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作。但select,poll,epoll本质上都是同步I/O,因为他们都需要在读写事件就绪后自己负责进行读写,也就是说这个读写过程是阻塞的,而异步I/O则无需自己负责进行读写,异步I/O的实现会负责把数据从内核拷贝到用户空间。关于阻塞,非阻塞,同步,异步将在下一篇文章详细说明。
P5 支持高并发连接.官方测试的是5w并发连接但在实际生产中可制成2-4w并发连接数,得益于nginx使用最新的epoll(linux 2.6内核)和kqueue(freebsd)网络I/O模型.而apache使用的则是传统的select模型,其比较稳定的prefork模式为多进程模式,需要经常派生子进程,所消耗的CPU等服务器资源要比nginx高的多.
P58 JBPM学习总结
P11 java加密解密简单实现加密算法有很多种:这里只大约列举几例:1:消息摘要:(数字指纹):既对一个任意长度的一个数据块进行计算,产生一个唯一指纹。MD5/SHA1发送给其他人你的信息和摘要,其他人用相同的加密方法得到摘要,最后进行比较摘要是否相同。
P186 像Rails,Django和TurboGears这样的动态框架在Web 开发领域开辟了一条新的道路,Grails基于这些概念之上,采用动态方法减小了Java平台上进行Web开发的复杂度,不过与那些框架不同的 是,Grails是构建在Spring和Hibernate等Java已有的技术之上的。 Grails 是一个full-stack框架,它借助于核心技术与相关的插件(plug-in)来解决Web开发中方方面面的问题,其中包括: 易于使用的基于Hibernate的 对象-关系映射(ORM)层 称为Groovy Server Pages (GSP)的表现层技术 基于Spring MVC的控制器层 构建于Gant 上的命令行脚本运行环境 内置Jetty服务器,不用重新启动服务器就可以进行重新加载 利用内置的Spring 容器实现依赖注入 基于Spring的MessageSource核心概念,提供了对国际化(i18n)的支持 基于Spring事务抽象概念,实现事务服务层
P2 反编译Apk得到Java源代码总结步骤提纲(总共分三步):1.使用apktool反编译apk,得带一个反编译后的文件夹。将反编译得到的文件夹使用apktool重新编译为apk,会得到一个class.dex文件。
P4 1.android提供了webView控件专门用来浏览网页。然后在程序中装载webView控件,设置属性,比如:颜色、字体、要访问的网址等。通过loadUrl方法设置当前webView需要访问的网址。在创建WebView时,系统有一个默认的设置,我们可以通过WebView.getSettings来得到这个设置。
P9 HTTP协议可能是现在Internet上使用得最多、最重要的协议了,越来越多的Java应用程序需要直接通过HTTP协议来访问网络资源。在JDK的java.net包中已经提供了访问HTTP协议的基本功能:HttpURLConnection。但是对于大部分应用程序来说,JDK库本身提供的功能还不够丰富和灵活。 除此之外,在Android中,androidSDK中集成了Apache的HttpClient模块,用来提供高效的、最新的、功能丰富的支持HTTP协议工具包,并且它支持HTTP协议最新的版本和建议。使用HttpClient可以快速开发出功能强大的Http程序。2.区别HttpClient是个很不错的开源框架,封装了访问http的请求头,参数,内容体,响应等等,HttpURLConnection是java的标准类,什么都没封装,用起来太原始,不方便,比如重访问的自定义,以及一些高级功能等。
P4 ListView优化 Adapter的作用就是ListView界面与数据之间的桥梁,当列表里的每一项显示到页面时,都会调用Adapter的getView方法返回一个View。想过没有?在我们的列表有1000000项时会是什么样的?是不是会占用极大的系统资源?
P6 此小结的前提是已经搭建GIT服务器,并通过SSH协议连接,可参看文档《RHEL下搭建GIT服务器》《WindowsXP下搭建GIT服务器》《GIT服务器使用基础》。本文使用RHEL5.5系统下的GIT-2012-01-11,用户root/password,GIT仓库统一存放在/app/gitspace目录下。
P5 Android之从网络上获取数据(图片,网页,xml,json等)1>从网络上获取数据(图片,网页,xml,json等)