摘要:
Struts简介:Struts是Apache基金会的一个开源项目,基于SunJ2EE平台的MVC框架,主要采用Servlet和JSP技术来实现,能够很好地帮助Java开发者利用J2EE开发Web应用,也是面向对象设计。实现重点在C层(Controller),包括ActionServlet/RequestProcessor和我们定制的Action,也为V层(View)提供了一系列定制标签。 struts图解:struts环境配置:第一步:建立web项目,struts只能运用在web项目中第二步:拷贝struts相关的jar包到项目web-info下的lib目录下其中涉及的包有第三步:在web.x 阅读全文
随笔档案-2012年03月
编写你自己的单点登录(SSO)服务
2012-03-30 14:37 by myjava2, 203 阅读, 收藏,
摘要:
王昱 yuwang881@gmail.com博客地址http://yuwang881.blog.sohu.com摘要:单点登录(SSO)的技术被越来越广泛地运用到各个领域的软件系统当中。本文从业务的角度分析了单点登录的需求和应用领域;从技术本身的角度分析了单点登录技术的内部机制和实现手段,并且给出Web-SSO和桌面SSO的实现、源代码和详细讲解;还从安全和性能的角度对现有的实现技术进行进一步分析,指出相应的风险和需要改进的方面。本文除了从多个方面和角度给出了对单点登录(SSO)的全面分析,还并且讨论了如何将现有的应用和SSO服务结合起来,能够帮助应用架构师和系统分析人员从本质上认识单点登录, 阅读全文
不在机房的这些日子
2012-03-29 15:52 by myjava2, 151 阅读, 收藏,
摘要:
已经有两周多了,没有在机房学习,不在机房的日子却是另一番滋味。真正又体会了一把“大学”的日子。不在机房干了写什么不在机房的时间里,看了一些视频,但是没有多少,把struts的视频全部看完了,每天上午七点多起床,起来以后去吃饭。吃饭回来就开始看视频,因为上午宿舍没有电,所以可以安心的看几集视频,但是笔记本的待机时间很短,基本上一上午就看三四集视频就没有电了。没有电的日子里又想起了看书,很喜欢看书,从小学四年级开始看第一部武侠小说,一直到现在,看了很多书,真的有一种“万般皆下品,唯有读书高”的感觉。现在随着自己理解水平的提高,看书的速度也变得特别快了,也是不求甚解的缘故,每两天能看一本书,这些书一 阅读全文
HP大中华区总裁孙振耀退休感言(转)
2012-03-28 15:46 by myjava2, 147 阅读, 收藏,
摘要:
一、关于工作与生活 我有个有趣的观察,外企公司多的是25-35岁的白领,40岁以上的员工很少,二三十岁的外企员工是意气风发的,但外企公司40岁附近的经理人是很尴尬的。我见过的40岁附近的外企经理人大多在一直跳槽,最后大多跳到民企,比方说,唐骏。外企员工的成功很大程度上是公司的成功,并非个人的成功,西门子的确比国美大,但并不代表西门子中国经理比国美的老板强,甚至可以说差得很远。而进外企的人往往并不能很早理解这一点,把自己的成功90%归功于自己的能力,实际上,外企公司随便换个中国区总经理并不会给业绩带来什么了不起的影响。好了问题来了,当这些经理人40多岁了,他们的薪资要求变得很高,而他们的才能其实 阅读全文
深入理解Lustre文件系统-第6篇 OST和obdfilter
2012-03-26 21:54 by myjava2, 791 阅读, 收藏,
摘要:
/* Sigh -really, this is an OSS, the _server_, not the _target_ */static intost_setup(struct obd_device *obd, obd_count len, void *buf){ ... }from Lustre source tree b16如果我们正确地理解了上述注释,Lustre源码树lustre/ost和所有的以ost_开头的函数名可能都应该作为服务器(OSS)函数。6.1OSS和OSTOST以内核模块的形式加载。它和obdfilter紧密合作,完成了服务器/OST端的大部分工作。在这两层中, 阅读全文
博客突破10万写点东西
2012-03-20 20:16 by myjava2, 131 阅读, 收藏,
摘要:
博客访问量不知不觉中突破了十万,看着自己的访问量一点一点的增加,自己很是欣慰,感觉到了很多人都在关注自己,给了我动力,也给了我监督考验。现在越来越强烈的感觉到写博客的对于自己的重要性,博客就像是自己的一笔财富。让自己终生受益。博客突破了10万,这里分享一些自己新发现的平时积累的一些比较有用的网站,这些网站给我的技术或者其它方面的成长带来了莫大的好处。都是值得常去看看的网站。一:查找知识点的网站,比如查找网页制作,数据库管理,基本语言语法的网站。w3school在线教程 一个非常好的在线学习HTML到XHTML,乃至进阶的XML、SQL、数据库、多媒体和WAP 的地方 二:查询详解解说java知 阅读全文
linux启动自动加载svn服务
2012-03-18 16:47 by myjava2, 188 阅读, 收藏,
摘要:
在安装上svn服务器了以后,自己写了一个手动启动svn服务的脚本,可是不久就被否决了说是版本服务器有多重要,如果系统重新启动了,我们还有手动的启动这个启动那个,太麻烦了,所以就命令俺在把svn服务添加到自动启动项里面去。于是乎,查看下这方面的资料,看到了不少好的文章,可感觉都不是自己想要的。这里给出几个链接:http://www.iusesvn.com/bbs/thread-549-1-1.htmlhttp://www.woaidiannao.com/html/ITjs/js/5804.html感觉挺不错的。我的做法是直接在/etc/init.d/文件夹下创建svnd.sh一个脚本文件:#!/ 阅读全文
深入理解Lustre文件系统-第5篇 LDLM:锁管理者
2012-03-16 23:13 by myjava2, 898 阅读, 收藏,
摘要:
Lustre锁管理者的基本思想来自于VAXDLM。在我们深入源码理解它如何工作之前,我们需要解释一些基本的概念。5.1名字空间我们首先涉及的概念是名字空间。当你请求锁时,你都在请求某个名字空间中的锁,每个Lustre服务都定义了一个名字空间。为了在一个实际的情景中讨论这个问题,假设你的Lustre文件系统有十个OST,从LDLM的观点看,有十个名字空间。另外,MDS和MGS各自有它们的名字空间。Lustre中的名字空间由结构体ldlm_namespace定义。在源码中,对于许多字段有适量的注释,所以我们只聚焦于其中不大显而易见的几个。类型字段描述ldlm_side_tns_client这是否是 阅读全文
文件系统那些事-第5篇 并行文件系统之蓝色选择GPFS
2012-03-15 22:54 by myjava2, 526 阅读, 收藏,
摘要:
GPFS[i](General Parallel File System)是一个IBM为在RS/6000 SP服务器上使用的一般目的(general-purpose)的可扩展文件系统。GPFS继承了PIOFS文件系统。它是为高端的并行编程需要而设计的高性能文件系统。可扩放性也许是GPFS最突出的特性。可扩放性指的是可以通过添加附加的相同甚至更少容量的硬件来获得读写性能的提升。一个真正可扩展的文件系统必须能提供大容量和高吞吐率。GPFS文件系统可以在容量上达到几Terabyte,提供GB/sec的吞吐率。作为一个AIX文件系统,GPFS继承了对超过2 gigabyte大小的大文件的支持。GPFS 阅读全文
深入理解Lustre文件系统-第4篇 LOV和OSC
2012-03-15 22:54 by myjava2, 458 阅读, 收藏,
摘要:
从高层的图景看,LOV的任务是将页指向正确的OSC,而OSC的任务是收集脏页向量、组合(group)它们、将它们从传输线上发送到OST(当然,通过PortalRPC和LNET)。4.1 OBD设备操作OBD面向设备操作是一个在LOV、OSC和MDC中使用并能被看到的一般性的源码组织模式和实现方法。OBD设备由obd_ops结构体定义的方法表描述,该方法表有点类似于前面提到的VFS文件、索引节点、dentry操作。其中的思想是,你不需要确切知道你所正在处理的OBD设备,只需使用以OBD_开头的一般性封装方法。让我们来看一眼这个表所定义的方法:struct struct obd_ops { str 阅读全文
网页布局之Div vs Table (2)
2012-03-15 22:14 by myjava2, 160 阅读, 收藏,
摘要:
大家都知道table可以实现很清晰的表状结构,这样的特点对于初学者来说无疑是很方便的。很多时候人们都忽略了div的表格效果,其实div也能实现比较好的表格效果,下面为大家演示一下。div实现表格效果需要其他标签辅助,这个就是我们的 ulli标签。假如要实现这么一个表格效果。那么使用table布局的代码是这样:<html>
<head>
</head>
<body> <table> <tr> <td>栏目一</td> <td>栏目二</td> <td>栏目三< 阅读全文
网页布局之Div vs Table (1)
2012-03-13 10:56 by myjava2, 209 阅读, 收藏,
摘要:
关于网页布局,大体上可以分为两种,一种是使用table布局,另一种使用div布局,很多人说现在主流的网页布局是div+css。那么div和table布局究竟有那些联系和区别呢?我们又该如何进行网页布局呢?下面对这两种网页布局进行一些探讨。看了一些大公司的网页布局,其中腾讯,网易,中国移动等公司都使用的是div进行的布局。而工商银行则使用table进行布局。div和table布局各自的优缺点:1:div+css进行布局,可以实现table的页面布局效果,还能减少页面中元素的个数,使得页面夹在较快,而且能更好的被搜索引擎相匹配。2:table进行布局可以有一个统一的外观,便于控制格式,对于初学者来 阅读全文
Servlet原理解析
2012-03-12 23:55 by myjava2, 212 阅读, 收藏,
摘要:
1.什么是servlet? Servlet是一种服务器端的Java应用程序,Server + Applet =Servlet 意为服务器端的小程序,具有独立于平台和协议的特性,可以生成动态的Web页面。 它担当客户请求(Web浏览器或其他HTTP客户程序)与服务器响应(HTTP服务器上的数据库或应用程序)的中间层。 Servlet是位于Web 服务器内部的服务器端的Java应用程序,与传统的从命令行启动的Java应用程序不同,Servlet由Web服务器进行加载,该Web服务器必须包含支持Servlet的Java虚拟机。 2.servlet有什么作用? Servlet主要是驻留在 Web 服. 阅读全文
Java异常处理
2012-03-11 22:07 by myjava2, 289 阅读, 收藏,
摘要:
异常处理—三种: 1. 在出现异常的方法内捕获并处理异常,该方法的调用者将不能再次捕获该异常。(catch) 2. 该方法签名中声明抛出该异常,将该异常完全交给方法调用者处理。(throw) 3.出现异常的当前方法和该方法的调用者都要处理。(catch中加throw) catch和throw结合是在企业级应用对异常处理很常用,主要有两个部分: 1.应用后台需要通过日志来记录异常发生的详细情况, 2.应用还需要根据异常想应用使用者传递某种提示。异常链: 企业应用中,常有严格的分层,如下图当业务逻辑层访问持久层出现SQLException异常时,程序不应该把底层的SQLException异常传递到 阅读全文
Java异常机制
2012-03-11 17:20 by myjava2, 229 阅读, 收藏,
摘要:
异常机制已经成为判断一门编程语言是否成熟的标准,异常机制可以使程序中异常处理代码和正常业务代码分离,保证程序代码更加优雅,并提高程序健壮性。 Java异常机制主要依赖于try、catch、finally、throw、throws五个关键字。 1.try:它里面放置可能引发异常的代码 2.catch:后面对应异常类型和一个代码块,用于表明该catch块用于处理这种类型的代码块,可以有多个catch块。 3.finally:主要用于回收在try块里打开的物力资源(如数据库连接、网络连接和磁盘文件),异常机制总是保证finally块总是被执行。只有finally块,执行完成之后,才会回来执行try. 阅读全文
深入理解Lustre文件系统-第3篇 lustre lite
2012-03-08 22:50 by myjava2, 1244 阅读, 收藏,
摘要:
在这一节,我们将描述Lustre Lite怎样接入Linux VFS并与之融为一体,这对于支持VFS语义和POSIX接口非常必要。作为概要,Lustre Lite以方法表(method table)的形式提供了如下函数:Lustre特有的文件操作,通过ll_file_operations表。Lustre特有的dentry操作,通过ll_d_ops和它的cache。Lustre特有的directory操作,通过ll_dir_operations表。Lustre特有的索引节点操作,通过ll_dir_inode_operations和file_inode_operations表。Lustre特有的文 阅读全文
centos密码不知道怎么办
2012-03-07 21:36 by myjava2, 198 阅读, 收藏,
摘要:
特别感谢:http://www.linuxso.com/linuxrumen/4023.html这里遇到了问题后,上述网站图文并茂的把怎么修改的给写的非常详细。先收下。有时候遇到这种棘手的问题,可以拿来看看,很不错哦。 阅读全文
查看linux的版本情况
2012-03-07 11:33 by myjava2, 214 阅读, 收藏,
摘要:
今儿实验室弄了台刀片服务器来,呵呵,介于之前自学过点儿linux的知识,就去试试手,发现还听不好弄得。首先是查看服务器的版本情况:自己只是知道其中的一种方法,上网上找了以后发现真的好多啊,赶紧收藏了root@zhou:~# cat /etc/issue
Ubuntu 11.10 \n \l
root@zhou:~# cat /proc/version
Linux version 3.0.0-13-generic (buildd@rothera) (gcc version 4.6.1 (Ubuntu/Linaro 4.6.1-9ubuntu3) ) #22-Ubuntu SMP Wed Nov 阅读全文
shell学习之sed
2012-03-06 17:19 by myjava2, 193 阅读, 收藏,
摘要:
经过这两天sed的学习,发现其实sed其实挺简单的无非就是两句话来总结:sed是一种基于hold space和pattern space的逐句操作编辑器。为什么这么说呢,通过学习不难发现,不管是grep ,sed都是利用正则表达式进行的操作,所以这里在学习shell编程前我们一定好好的学习正则表达式。下来介绍一下我对sed的几点认识:首先就是搞清楚hold space和pattern space的概念。然后再了解sed的命令参数的意义,这样才能游刃有余。下面是课后习题,1.把Jone的名字改为Jonathan。zhouqian@zhou:~$ sed -n 's/^Jon/Jonath 阅读全文
深入理解Lustre文件系统-第2篇 体系结构的模块视图
2012-03-05 22:27 by myjava2, 1469 阅读, 收藏,
摘要:
Lustre是一个以GNUGeneral Public为许可证的,开源的分布式并行文件系统,由Sun Microsystems Inc. 公司开发和维护。由于Lustre文件系统的体系结构具有极好的可扩展性,它得以在科学计算、石油天然气、制造业、rich media、金融等领域得到广泛部署。Lustre为其客户端提供了包含对共享文件对象的并行存取能力在内的POSIX接口。截止本文编写时为止,根据Top500的数据,在全世界前30个超级计算机中,有15个使用了Lustre文件系统。Lustre是一个面向对象的文件系统。它由三个部件组成:元数据服务器(Metadataservers, MDSs)、 阅读全文
深入理解Lustre文件系统-第1篇 前言
2012-03-05 22:26 by myjava2, 903 阅读, 收藏,
摘要:
Lustre文件系统是由U.S.Department of Energy Office of Science and National Nuclear SecurityAdministration laboratorie于近十年之前发起并提供基金支持的的,旨在满足当时和以后的超级计算平台中对于开源、高可扩展的、高性能的并行文件系统的需求。经过十年的发展,它得以在众多中型到大型超级计算平台和集群中部署,达到了Lustre用户社区的预期。截止本文编写时为止,根据Top500的数据,在全世界前30个超级计算机中,有15个使用了Lustre文件系统。本报告旨在提供一个关于Lustre内部是如何工作的s 阅读全文
文件系统那些事-第4篇 并行文件系统之开源解决方案Lustre
2012-03-05 22:25 by myjava2, 585 阅读, 收藏,
摘要:
在高性能存储领域,Lustre是一个如雷贯耳的名字。据统计(2011年7月),世界十大超级计算中心当中的七个以及超过50%的全球top50超级计算机都在使用Lustre。Lustre是一个基于对象的,分布式文件系统,一般用于大规模集群计算。Lustre的名字是由Linux和集群(cluster)融合得来。该项目旨在为有成千上万的节点的集群提供一个支持PB的存储容量的文件系统,同时又不损害其速度、安全性和可用性。基于对象的文件系统将文件的元数据和文件数据分离开来,存储在不同的服务器上。文件元数据存储在元数据服务器里,而文件数据则存储在对象存储服务器(object storage server)里 阅读全文
并行博弈树搜索算法-第8篇 写在最后的话:有趣的的博弈算法
2012-03-04 10:26 by myjava2, 508 阅读, 收藏,
摘要:
毛主席说过,与人斗其乐无穷。博弈就是一个人与人斗争的过程。既然是斗争,那就有利益的争端。利益存在此消彼长,是谓“零和”。既然斗争对方是人,那意味着他是一个有着主观能动性,有着智慧与能量的主体,因此才需要己方殚精竭虑,思考算计。人类如此聪明,与人斗尤嫌不够,还要造出机器来帮自己斗,与自己斗。发展到现在,不但在国际象棋界弄出了谁都斗不过的”深蓝“,而且大有不见黄河不死心,一发而永不可收拾之势。至于是否会玩着玩着,一不小心造出个怪物,反把自己斗挂了,还需要继续走着瞧。上面是闲话,总结一把:博弈树的搜索算法是人工智能领域一个重要的研究课题.满足完全信息且无随机因素的二人零和博弈问题都可以用博弈树搜索算 阅读全文
文件系统那些事-第3篇 影响文件系统性能的关键因素:存储块分配和布局策略
2012-03-04 10:25 by myjava2, 773 阅读, 收藏,
摘要:
文件系统的分配和布局策略直接影响到文件系统访问的性能。为此,现代的文件系统都采用各种优化手段。3.1块的再分配为了让设计简单,而且对最差情况下产生的文件系统碎片进行限制,传统的文件系统将磁盘分成大小相等的磁盘块。由于磁盘扇区的大小一般为512,块的大小一般也为512的整数倍字节。在传统的文件系统中,整个磁盘块只能分配给单独的一个文件。但是由于文件大小并不总是文件系统块大小的整数倍,所以这种设计使得最后的那个磁盘块(称为尾部)只被部分利用,这就产生了内部碎片。块的再分配(block suballocation)就是将尾部块再次分块,使得它可以被用来存储其它文件的片段。一些块的再分配方案能够实现字 阅读全文
ThreadLocal封装Connection--事务统一管理
2012-03-03 20:35 by myjava2, 284 阅读, 收藏,
摘要:
ThreadLocal:线程本地变量该类提供了线程局部变量。这些变量不同于它们的普通对应物,因为访问一个变量(通过其 get 或 set 方法)的每个线程都有自己的局部变量,它独立于变量的初始化副本。ThreadLocal 实例通常是类中的私有静态字段,它们希望将状态与某一个线程(例如,用户 ID 或事务 ID)相关联。 事务是一种机制、是一种操作序列,它包含了一组数据库操作命令,这组命令要么全部执行,要么全部不执行。因此事务是一个不可分割的工作逻辑单元。在数据库系统上执行并发操作时事务是作为最小的控制单元来使用的。这特别适用于多用户同时操作的数据通信系统。 在业务逻辑中我们要统一管理事务,. 阅读全文
shell之grep的学习
2012-03-02 22:54 by myjava2, 191 阅读, 收藏,
摘要:
最近一段时间没什么事儿,就像起来看看上次老师给说的学习mysql同时,一定学一门脚本语言,所以自己也潜下心来好好的学习shell脚本。上豆瓣上面找了一本好评最多的书。然后去图书馆借了本超级厚重的书,《unix sell 范例精解》果然很是详细啊。今儿刚好看到了grep这一工具,然后就把课后的题给做了下:文件test.txtSteve Blenheim:238-923-7366:95 Latham Lane, Easton, PA 83755:11/12/56:20300 Betty Boop:245-836-8357:635 Cutesy Lane, Hollywood, CA ,91464. 阅读全文
并行博弈树搜索算法-第7篇 另辟蹊径:其他的博弈树并行搜索算法
2012-03-02 22:12 by myjava2, 347 阅读, 收藏,
摘要:
除了基于Alpha-Beta算法的博弈树并行搜索算法外,还有其他的博弈树搜索算法.现简要介绍如下.7.1 SSS*算法及其并行化Alpha-Beta算法是一种基于Min-Max方法的固定深度(fixed-depth)搜索算法.说它是固定深度的搜索算法,是因为对每个结点,它依序从左到右搜索其所有子结点.与Alpha-Beta算法相同的是,SSS*算法[19](或者其对称算法DUAL*)也基于Min-Max方法,但与前者不同的是,它使用最佳优先(best-first)策略.即,SSS*算法不以结点在博弈树中所处的位置为标准,而按照它们前途有望的(promising)程度,由高至低搜素结点.为了实. 阅读全文
文件系统那些事-第2篇 不可不知的文件系统特性
2012-03-02 22:11 by myjava2, 309 阅读, 收藏,
摘要:
判断一个文件系统是否具有某些特性,是听从不同方面区分和对比文件系统的一种有效方式。一些常见的文件系统的特性如下。2.1 硬链接硬链接是指向存储卷上文件的目录引用(reference)或者指针(pointer)。与该文件关联的名称是一个存储在目录结构中的标签。这个标签将操作指向文件的数据。通过这种方法,同一个文件就可以和多个名字相关联。当使用这些不同的名字时,所作的任何改动都将影响到同一个文件数据。使用硬链接有很多的限制。首先为了防止以防止无休止的递归,大多数现代操作系统不允许对文件夹创建硬链接。其次硬链接的链接数目也受到引用计数的位数限制。另外硬链接只能使用在和文件相同的文件系统上,如果需要链 阅读全文
文件系统那些事-第1篇 丰富多样的文件系统
2012-03-02 00:45 by myjava2, 234 阅读, 收藏,
摘要:
什么是文件系统,文件系统可以进行怎样的分类?这是本篇将要谈论的问题。文件系统[i]是存储和组织计算机文件和文件中所包含的数据,以方便地找到和存取它们的方法。更加正式地说,文件系统是一个用来存储、分级管理、处理、导航(navigation)、访问和恢复数据的抽象数据种类(例如元数据)的集合。本篇[ii]从各个方面对诸多常见文件系统进行了对比。文件系统可以分为磁盘文件系统、网络文件系统和特殊目的的文件系统。进一步的,可以通过以下几个概念对文件系统的概念进行区分。1.1磁盘文件系统磁盘文件系统是为在磁盘这样的存储器中存储数据而设计的文件系统。存储器都直接或者间接地与计算机相连。一些磁盘文件系统使用日 阅读全文
并行博弈树搜索算法-第6篇 百花齐放:各种并行Alpha-Beta算法
2012-03-01 22:38 by myjava2, 1018 阅读, 收藏,
摘要:
下面开始介绍一些在Alpha-Beta算法中引入并行化的方法和算法.6.1 并行求值(Parallel Evaluation)游戏的博弈程序经常要在搜索深度和叶结点的求值复杂度之间进行平衡.一些博弈程序,使用简化的估值函数,以获得更深的搜索深度.但是花费在对叶结点的求值中的时间仍然占搜索时间的很大一部分.一个在博弈树搜索中应用并行性的思想[6]就是将求职函数设计得较为复杂,并将它划分到多个处理器中并行计算,然后综合各部分结果,得到最终的估值.6.2 并行吸出(Parallel Aspiration)并行吸出(Parallel Aspiration)或者窗口分裂(Window Spittting 阅读全文
浙公网安备 33010602011771号