10 2013 档案

摘要:在XAMPP上安装DEDECMS,但小明尝试登录后台时,首先是验证码错误,解决验证码问题之后成功登录,但后台一片空白,连任何错误提示信息都没有。查看了PHP、APACHE、DEDECMS运行错误,却没有任何相关信息。问题排除1、那么会不会是PHP环境没有安装好呢?由于DEDECMS前台默认是php,如果php没有安装好,那么前台也应该是空白,但前台显示正常。2、会不会是php禁用了某些函数,导致php程序不能执行呢?如果禁用了某些函数,那么PHP、APACHE、DEDECMS等错误日志中应该会提示,查看了所有,依然没有。3、会不会php某些函数不被支持呢?找到处理登录操作的 D:\xampp\ 阅读全文
posted @ 2013-10-25 08:44 huidaoli 阅读(700) 评论(0) 推荐(0) 编辑
摘要:Dojo 是一个 JavaScript 实现的开源 DHTML(动态html)工具包。Dojo能做什么??1、让开发者更容易地为 Web 页面添加动态能力,也可以在其它支持 JavaScript 的环境中使用 Dojo;2、利用 Dojo 提供的组件,开发者可以提升 Web 应用程序的可用性和交互能力;3、Dojo 很大程度上屏蔽了浏览器之间的差异性,因此,开发者可以不用担心 Web 页面是否在某些浏览器中可用;4、通过 Dojo 提供的工具,您还可以为代码编写命令行式的单元测试代码。5、Dojo 的打包工具可以帮助您优化 JavaScript 代码,并且只生成部署应用程序所需的最小 Dojo 阅读全文
posted @ 2013-10-15 18:32 huidaoli 阅读(209) 评论(0) 推荐(0) 编辑
摘要:JSON: The Fat-Free Alternative to XMLJSON:丰富而免费的XML替代品(这个标题这么翻译,不知道对不对,呵呵)可扩展标记语言(XML)是源自标准通用标记语言(SGML)的文本格式。与SGML相比,XML很简单。超文本标记语言(HTML),通过比较,甚至更简单。即便如此,好的HTML参考书,有一英寸厚。这是因为组织文件的格式和结构是一个复杂的业务。围绕XML的热点大多是围绕一个新的角色,一个可以与之互换的数据序列化格式。 XML作为数据表示语言提供了两个巨大的优势:1、它是基于文本的。2、它是平台独立的。相比其他的数据交换格式而言,这些优势使独立应用达到更高 阅读全文
posted @ 2013-10-15 18:29 huidaoli 阅读(177) 评论(0) 推荐(0) 编辑
摘要:学习Dojo有些时间了,也整理了一些资料,先来个最入门级别的。HelloWorldAsp.Net+DojoDojo事件绑定,弹出HelloWorld[html]view plaincopyprint?Dojo操作DOM版HelloWorld[html]view plaincopyprint?MyFirstDojoProgram!Hello,Dojo!Dojo封装Ajax实现HelloWorld[html]view plaincopyprint?最近对Ajax关注多一些,可能会出一些dojo有关ajax方面的文章。dijit控件也可能谈一谈 阅读全文
posted @ 2013-10-15 18:28 huidaoli 阅读(257) 评论(0) 推荐(1) 编辑
摘要:性能优化是一个很大的话题,大到程序架构优化,数据库设计等,小到一个特定算法,甚至js优化等等。这里我们只简单谈一下hibernate的性能优化。在使用Hibernate的时候,通过正确的方法和策略,可以提高执行效率。(一)抓取策略抓取策略(fetching strategy)是指:当应用程序需要在(Hibernate实体对象图的)关联关系间进行导航的时候, Hibernate如何获取关联对象的策略。抓取策略可以在O/R映射的元数据中声明,也可以在特定的HQL 或条件查询(Criteria Query)中重载声明。例如单端代理,集合代理,批量抓取等设置方式通常为*fetch="join 阅读全文
posted @ 2013-10-15 18:27 huidaoli 阅读(242) 评论(0) 推荐(0) 编辑
摘要:Lazy:延迟加载,在真正使用某个对象的时候才正真的去创建,即hibernate才会正真的发出sql语句去加载该对象Lazy的有效期:只有在session打开的时候才有效;session关闭后lazy就没效了。lazy策略可以用在:1、 标签上:可以取值true/false* 标签上,可以取值true/false,这个特性需要类增强(不常用)* 设置标签中的lazy="true",或是保持默认(即不配置lazy属性)* 如果lazy的属性值为true,那么在使用load方法加载数据时,只有确实用到数据的时候才会发出sql语句;这样有可能减少系统的开销。注:上的lazy只影响 阅读全文
posted @ 2013-10-15 18:26 huidaoli 阅读(153) 评论(0) 推荐(0) 编辑
摘要:xhrGet 是 XHR 框架中最重要的函数,使用频率也最高。使用它即可以请求服务器上的静态文本资源如 txt、xml 等,也可以获取动态页面 php、jsp、asp 等,只要从服务器返回的是字符数据流即可。除了 xhrGet,Dojo 的 XHR 框架还包含 xhrPost,rawXhrPost,xhrPut,rawXhrPut,xhrDelete 。这几个函数与 xhrGet 类似,使用方法和参数都可以参考 xhrGet 。区别在于他们的 HTTP 请求类型,xhrPost 发送的是 Post 请求,xhrPut 发送的是 Put 请求,xhrDelete 发生的是 Delete 请求。下 阅读全文
posted @ 2013-10-15 18:25 huidaoli 阅读(676) 评论(0) 推荐(0) 编辑
摘要:在淘宝,我们对某类产品感兴趣,就会订阅该产品信息,当有货到后,我们会收到提示信息。下面就简单用Dojo订阅/发布模式来说明其实现的基本原理。大概功能需求:买家先在产品中心注册,说自己对衣服等感兴趣,接着产品中心发布了一条新信息“衣服到新款了,亲快来采购吧”,这时买家将立即收到这条消息,并显示出来(在本例中就是在firefox浏览器的firebug模拟控制台输出这条新信息)。然后买家可能对别的信息感兴趣,再次订阅,等等重复上述过程。最后买家不打算再订阅衣服信息了,就在产品中心取消了对衣服信息的注册。大概流程就是这样子的。果断上代码看效果,然后再来分析![javascript]view plain 阅读全文
posted @ 2013-10-15 18:24 huidaoli 阅读(266) 评论(0) 推荐(0) 编辑
摘要:Hibernate是一个开放源代码的ORM(对象-关系映射)框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命 意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。一、既然Hibernate是ORM的框架,说Hibernate,就不得不说ORM,那么什么是ORM?对象-关系映射(Object/Relation Mapping,简称ORM),是随着面向对 阅读全文
posted @ 2013-10-15 18:22 huidaoli 阅读(156) 评论(0) 推荐(0) 编辑
摘要:首先,SSH不是一个框架,而是多个框架(struts+spring+hibernate)的集成,是目前较流行的一种Web应用程序开源集成框架,用于构建灵活、易于扩展的多层Web应用程序。集成SSH框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层(实体层)。Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持。Spring一方面作为一个轻量级的IoC容器,负责查找、定位、创建和管理对象及对象之间的依赖关系,另一方面能使Struts和Hibernate更好地工作。由SSH构建系统的基本业务流 阅读全文
posted @ 2013-10-15 18:22 huidaoli 阅读(228) 评论(0) 推荐(0) 编辑
摘要:Pager-taglib,支持多种风格的分页显示。实际上她是一个Jsp标签库,为在JSP上显示分页信息而设计的一套标签,通过这些标签的不同的组合,会形成多种不一样的分页页面,风格各异,她自带的DEMO就有七种左右的分页风格,包括Google的分页风格。而需要订制自已的风格的分页页面也非常简单。pg:pager 这个标签用来设置分页的总体参数,一切分页标签都在其内工作。 url:分页的链接根地址,pager标签会在这个链接的基础上附加分页参数 items:总记录数,pager标签正是根据这个值来计算分页参数的 maxPageItems:每页显示的行数,默认为10 maxIndexPage... 阅读全文
posted @ 2013-10-15 18:21 huidaoli 阅读(141) 评论(0) 推荐(0) 编辑
摘要:什么是AOP?AOP是OOP的延续,是Aspect Oriented Programming的缩写,意思是面向方面编程。AOP实际是GoF设计模式的延续,设计模式孜孜不倦追求的是调用者和被调用者之间的解耦,AOP可以说也是这种目标的一种实现。为什么使用AOP?将通用需求功能从不相关类之中分离出来;同时,能够使得很多类共享一个行为,一旦行为发生变化,不必修改很多类,只要修改这个行为就可以。我们把这种行为称为"分散关注"AOP就是这种实现分散关注的编程方法,它将“关注”封装在“方面”中。AOP的本质可以理解为"动态代理模式",想想代理模式的作用就更容易理解A 阅读全文
posted @ 2013-10-15 18:20 huidaoli 阅读(228) 评论(0) 推荐(0) 编辑
摘要:在我前面的文章中,也试图总结过SSH,见http://blog.csdn.net/shan9liang/article/details/8803989,随着知识的积累,总感觉以前说得比较笼统,思路不够清晰,所以打算写几篇文章再稍微深入地剖析一下SSH,只能说是稍微,因为这三个框架的架构设计和基本原理,并不是通过几篇文字,就能说出所以然的,时间和精力有限,只是希望能通过这几篇简练的文字使大家对ssh的认识再上一个台阶。一、框架的本质在说Struts2,Spring和Hibernate核心原理之前,我觉得应该先搞明白以下三个问题,简短概括如下:1、什么框架?框架并不是什么神圣的东西,它只是一组ja 阅读全文
posted @ 2013-10-15 18:19 huidaoli 阅读(205) 评论(0) 推荐(0) 编辑
摘要:JPA(Java Persistence API,Java持久化API),定义了对象-关系映射(ORM)以及实体对象持久化的标准接口。JPA是JSR-220(EJB3.0)规范的一部分,在JSR-220中规定实体对象(EntityBean)由JPA进行支持。所以JPA不局限于EJB3.0,而是作为POJO持久化的标准规范,可以脱离容器独立运行,开发和测试更加方便。下面通过一张图来看一下JPA的基本概念。然后再做简要分析。注:不是真正意义的UML图啊,只是画着方便就用rose了。一、EntityManager,EntityManagerFactory,PersistenceContext三者的关 阅读全文
posted @ 2013-10-15 18:18 huidaoli 阅读(575) 评论(0) 推荐(0) 编辑
摘要:本文主要对jbpm4进行一个通俗、宏观的解析,涉及流程部署,流程定义,流程执行等基本概念,能让你很轻松地了解jbpm的基本结构和使用方法。 我们使用jbpm的一般步骤可以粗暴的分为:定义流程——》部署流程定义——》创建流程实例——》运行流程——》控制和监视流程——》流程结束,归档流程——》对历史流程进行数据分析——》优化和重组业务——》定义流程——》…… 在这个循环过程中,jbpm到底是怎么工作的? 我们先来下面这张图当我们拿到一个业务需求的描述。首先,我们要通过jbpl对该业务流程进行流程定义,表现为若干活动节点通过转移线条串联。有了流程定义文件,我们需要用到jbpm ... 阅读全文
posted @ 2013-10-15 18:17 huidaoli 阅读(236) 评论(0) 推荐(0) 编辑
摘要:RPC(Remote Procedure Call Protocol)RPC使用C/S方式,采用http协议,发送请求到服务器,等待服务器返回结果。这个请求包括一个参数集和一个文本集,通常形成“classname.methodname”形式。优点是跨语言跨平台,C端、S端有更大的独立性,缺点是不支持对象,无法在编译器检查错误,只能在运行期检查。Web ServiceWeb Service提供的服务是基于web容器的,底层使用http协议,类似一个远程的服务提供者,比如天气预报服务,对各地客户端提供天气预报,是一种请求应答的机制,是跨系统跨平台的。就是通过一个servlet,提供服务出去。首先客 阅读全文
posted @ 2013-10-15 18:15 huidaoli 阅读(255) 评论(0) 推荐(0) 编辑
摘要:问题起因:我在使用ant将流程定义和流程相关资源部署到JBPM数据库中的时候,报了下面一个错误。错误提示,大概是: 11:33:40,781 ERROR JDBCExceptionReporter:101 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'EQT??u_??????~? show variables like 'char%'; +- 阅读全文
posted @ 2013-10-15 18:14 huidaoli 阅读(229) 评论(0) 推荐(0) 编辑
摘要:本文主要介绍Struts2+Spring3+Mybatis3开发环境搭建Struts和Spring不过多介绍。MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架。MyBatis 消除了几乎所有的 JDBC 代码和参数的手工设置以及结果集的检索。MyBatis 使用简单的 XML 或注解用于配置和原始映射,将接口和 Java 的 POJOs(Plan Old Java Objects,普通的 Java 对象)映射成数据库中的记录。环境:Struts-2.3.14Spring-3.2.1MyBatis-3.2.2在apache-tomcat-7.0.39下测试通过Proj 阅读全文
posted @ 2013-10-15 18:13 huidaoli 阅读(282) 评论(0) 推荐(0) 编辑
摘要:0、安装JDK1.71、下载jboss-5.1.0.GA,解压jboss到D:\jboss-5.1.0.GA,bin/run来启动jboss,打开http://localhost:8080/web-console/测试是否安装成功2、下载apache-activemq-5.7.0,解压activemq到D:\apache-activemq-5.7.0,bin\activemq.bat启动ActiveMQ,打开http://localhost:8161/admin/测试是否安装成功3、下载ActiveMQ的rar资源组件包(老版本的ActiveMQ在ActiveMQ压缩包中就有,新版本的压缩包中 阅读全文
posted @ 2013-10-15 18:12 huidaoli 阅读(318) 评论(0) 推荐(0) 编辑
摘要:一、Jkconnector安装和配置,并整合tomcat集群1、下载我选择的是jakarta-tomcat-connectors-1.2.15-src.tar.gz何为Jkconnector? Tomcat提供了专门的JK插件来负责Tomcat和HTTP服务器的通信。把JK插件安置在对方的HTTP服务器上。当HTTP服务器接收到客 户请求时,它会通过JK插件来过滤URL,JK插件根据预先配置好的URL映射信息,决定是否要把客户请求转发给Tomcat服务器处理。2、安装(1)将jakarta-tomcat-connectors-1.2.15-src.tar.gz包解压到/usr/local目录下 阅读全文
posted @ 2013-10-15 17:45 huidaoli 阅读(234) 评论(0) 推荐(0) 编辑
摘要:一、Linux下tomcat安装和配置1、从www.apache.org网站中下载tomcat的Linux版本tar.gz(pgp,md5)2、将该文件通过ftp上传到Linux中如果不会上传,请参考第二节对于tomcat而言,文件很有可能是apachxxx.tar.gz的文件,对于该文件而言需要进行两次解压,首先通过gzip解压,使用gzip –d apachexx.tar.gz[-d(decompress)表示解压],解压之后会得到一个apachxx.tar的文件,之后使用tar进行tar文件的解压。使用tar –xvf apachxx.tar[-x(extract)表示解压缩,-v(ve 阅读全文
posted @ 2013-10-15 17:44 huidaoli 阅读(143) 评论(0) 推荐(0) 编辑
摘要:一、Linux下jdk安装和配置对于Linux安装JDK,需要进行以下几个步骤:1、从sun公司网站下载JDK的Linux安装版本本文采用jdk-7u21-linux-i586.rpm2、通过ftp将该文件上传到Linux 如果ftp不能上传,请参考上一节,我是采用的LeapFTP上传工具。3、修改该文件的运行权限 如果是root登陆,这一步可以忽略。 扫盲:Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作。 详细参见:http://www.cnblogs.com/avril/archive/2010/03/23/1692809... 阅读全文
posted @ 2013-10-15 17:43 huidaoli 阅读(138) 评论(0) 推荐(0) 编辑
摘要:早期的项目比较简单,多是用JSP 、Servlet + JDBC 直接搞定,后来使用 Struts1(Struts2)+Spring+Hibernate, 严格按照分层概念驱动项目开发,这次又使用 Spring MVC取代Struts来进行开发。MVC已经是现代Web开发中的一个很重要的部分,下面介绍一下SpringMVC+Spring3+Hibernate4的开发环境搭建先大致看一下项目结构:具体的代码不再演示,主要是走了一个很平常的路线,mvc-servcie-dao-hibernate的结构,源码可以下载,主要看一下配置文件。解释见注释web.xml[html]view plaincop 阅读全文
posted @ 2013-10-15 17:42 huidaoli 阅读(383) 评论(0) 推荐(0) 编辑
摘要:一、Linux下Apache安装和配置(包含GCC的安装)由于有了前面几节的安装经验,这里的安装步骤的具体说明,我就从简了。1、下载apache何为apache?Apache HTTP Server(简称Apache)是一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中2、安装apache:解压Apache压缩包 httpd-2.2.17.tar.gz到/usr/local,解压:-zxvf httpd-2.2.17.tar.gz进入 阅读全文
posted @ 2013-10-15 17:41 huidaoli 阅读(101) 评论(0) 推荐(0) 编辑
摘要:一、安装vsftpd和LeapFTP,并做相关配置1、先扫盲(1)何为vsftpd?如果你想在你的Linux/Unix服务器上搭建一个安全、高性能、稳定性好的FTP服务器,那么vsftpd可能是你的首选应用。vsftpd意思为“very secure FTP daemon(非常安全的FTP进程)”,是一个基于GPL发布的类UNIX类操作系统上运行的服务器的名字(是一种守护进程),可以运行在诸如Linux、BSD、Solaris、HP-UX以及Irix等系统上面。vsftpd支持很多其他传统的FTP服务器不支持的良好特性。(2)何为ftp?FTP的全称是File Transfer Protoco 阅读全文
posted @ 2013-10-15 17:40 huidaoli 阅读(160) 评论(0) 推荐(0) 编辑
摘要:Apache Hadoop 2.0.5-alpha 相比以前发布的稳定版本有了显著的改进。下面是一个简短的概述,包含分布式文件系统(Hadoop Distributed File System)和MapReduce方面的改进。HDFS 联合 为了横向地测量命名服务的,federation采用多重独立的命名节点/命名空间 这些命名节点是federated的,这意味着,这些命名节点是独立的,而且不要求与其他命名节点协同工作。数据节点作为块的公共存储器被所有命名节点使用。在cluster中,每一个数据节点被注册到所有的命名节点上。数据节点会定期发送心跳和块报告到命名节点,并处理来自命名节点的命令。 阅读全文
posted @ 2013-10-15 17:37 huidaoli 阅读(194) 评论(0) 推荐(0) 编辑
摘要:一、概述最近开始着手高校云平台的搭建,前些天做了hadoop集群测试环境的安装与配置的经验分享,这篇文章主要介绍win7 64位下 eclipse4.2 连接远程Redhat Linux 5下hadoop-1.2.0集群开发环境搭建二、环境1、window 7 64位2、eclipse 4.23、Redhat Linux 54、hadoop-1.2.0三、安装配置hadoop集群参考我的文章:http://blog.csdn.net/shan9liang/article/details/9841933http://www.jialinblog.com/?p=176四、在Eclipse下安装配置 阅读全文
posted @ 2013-10-15 17:36 huidaoli 阅读(173) 评论(0) 推荐(0) 编辑
摘要:一、安装linux和putty1、安装比较简单,不再重复贴图,具体参考以下文档http://www.docin.com/p-30647520.html如果是在一台全新的机器上安装,文档中虚拟机安装部分忽略即可。也可以参考http://wenku.baidu.com/view/1bfeb7651ed9ad51f01df2c9.html2、安装putty下载绿色版,直接解压即可顺便扫扫盲(1)何为Putty?Putty是一个免费的Windows平台下的telnet、rlogin和ssh客户端,Putty的功能丝毫不逊色于商业的telnet类工具一般我们的Linux服务器都在电信机房,而且一般配置好 阅读全文
posted @ 2013-10-15 17:36 huidaoli 阅读(228) 评论(0) 推荐(0) 编辑
摘要:一、概述1、该系列文章主要介绍Linux下tomcat集群的安装与配置,其中涵盖了Linux,vsftpd,jdk,tomcat,apache,jkconnector等相关知识,还包括Linux下的常用命令,作为一个java程序员,这些技术是我们在Linux平台下的基本功。在现有网络结构之上,负载均衡提供了一种廉价有效的方法扩展服务器带宽和增加吞吐量,加强网络数据处理能力,提高网络的灵活性和可用性。集群系统(Cluster)主要解决下面几个问题:1.高可靠性:利用集群管理软件,当主服务器故障时,备份服务器能够自动接管主服务器的工作,并及时切换过去,以实现对用户的不间断服务。2.高性能计算:即充 阅读全文
posted @ 2013-10-15 17:35 huidaoli 阅读(222) 评论(0) 推荐(0) 编辑
摘要:hadoop是一个开源分布式计算平台,以hadoop分布式文件系统HDFS和大规模数据分布式编程模型MapReduce为核心。它为用户提供了底部细节透明的分布式基础架构。HDFS的高容错性,高伸缩性等特点允许用户将hadoop部署在低廉的硬件上,形成分布式系统;而MapReduce分布式编程模型允许用户在不了解系统底层细节的情况下开发并行应用程序。再者,配合其他项目(如下图)的使用,使得用户可以利用hadoop轻松地组织计算机资源,利用集群的计算和存储能力,处理海量数据。hadoop主要相关项目,我总结了下面一张图供大家参考:这些子项目的总结会陆续给出! 阅读全文
posted @ 2013-10-15 17:34 huidaoli 阅读(106) 评论(0) 推荐(0) 编辑
摘要:eclipse连接远程hadoop集群开发时报错Exception in thread "main" org.apache.hadoop.security.AccessControlException: Permission denied: user=d, access=WRITE, inode="data":zxg:supergroup:rwxr-xr-xat org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.check(FSPermissionChecker.java:207)当前登 阅读全文
posted @ 2013-10-15 17:33 huidaoli 阅读(253) 评论(0) 推荐(0) 编辑
摘要:一、概述前些日子开始着手高校云平台的搭建,其中涉及很重要的一部分是hadoop集群测试环境的安装与配置,大概用了两天的时间,终于搞定了基本轮廓,把我的经验分享给大家。二、硬件环境1、windows 7 旗舰版 64位2、VMware Workstation ACE 版 6.0.23、Redhat Linux 54、Hadoop-1.2.0WindowsVM虚拟机器LinuxIP作用Window 764位VMware WorkstationRedhat1192.168.24.250NameNode、master、jobTrackerRedhat2192.168.24.249DataNode、sl 阅读全文
posted @ 2013-10-15 17:30 huidaoli 阅读(212) 评论(0) 推荐(0) 编辑
摘要:eclipse连接远程hadoop集群开发时报错错误信息:Exception in thread "main" java.io.IOException:Failed to set permissions of path:\tmp\hadoop-ysc\mapred\staging\ysc-2036315919\.staging to 0700解决方案(经笔者在hadoop1.2.0+jdk1.7下验证通过):0.安装jdk,ant,并且配置好环境变量安装配置jdk不再多说,ant参考我的文章:http://blog.csdn.net/shan9liang/article/d 阅读全文
posted @ 2013-10-15 17:27 huidaoli 阅读(136) 评论(0) 推荐(0) 编辑
摘要:对象模型示例:继承映射的实现方式有三种:(一)每棵类继承树一张表关系模型:映射文件:[html]view plaincopyprint?说明:因为类继承树肯定是对应多个类,要把多个类的信息存放在一张表中,必须有某种机制来区分哪些记录是属于哪个类的。这种机制就是,在表中添加一个字段,用这个字段的值来进行区分。用hibernate实现这种策略的时候,有如下步骤: 1、父类用普通的标签定义 2、在父类中定义一个discriminator,即指定这个区分的字段的名称和类型 如:3、子类使用标签定义,在定义subclass的时候,需要注意如下几点:*Subclass标签的name属性是子类的全路径名 * 阅读全文
posted @ 2013-10-15 16:55 huidaoli 阅读(93) 评论(0) 推荐(0) 编辑
摘要:单向多对多关联映射单向多对多关联对象模型:映射后的关系模型:多对多映射,会产生第三张表来维护关系映射文件:User.hbm.xml[html]view plaincopyprint?Role.hbm.xml[html]view plaincopyprint?双向多对多关联映射双向多对多关联对象模型映射出的关系模型与单向一样。映射方法基本相同,只是在多的一端加入: 需要注意: * 生成的中间表名称必须一样 * 生成的中间表中的字段必须一样 阅读全文
posted @ 2013-10-15 16:54 huidaoli 阅读(89) 评论(0) 推荐(0) 编辑
摘要:单向一对多关联映射映射后的关系模型:映射文件:一对多关联映射和多对一关联映射映射原理是一致的,都是在多的一端加入一个外键,指向一的一端它们的区别在于维护的关系不同:* 多对一维护的关系是:多指向一的关系,有了此关系,在加载多的时候可以将一加载上来* 一对多维护的关系是:一指向多的关系,有了此关系,在加载一的时候可以将多加载上来Group.hbm.xml[html]view plaincopyprint?User.hbm.xml[html]view plaincopyprint?在一的一端维护关系存在缺陷: * 因为多的一端User不知道Group的存在(也就是User没有维护与Group的关系 阅读全文
posted @ 2013-10-15 16:40 huidaoli 阅读(96) 评论(0) 推荐(0) 编辑
摘要:双向一对一关联映射与单向一对一关联映射一样,双向映射依然可以采用两种方式实现:1、主键关联;2、唯一外键关联1、主键关联映射出的关系模型与单向一样:映射文件与单向的区别在于:需要在Card加入标签,指示hibernate将关联对象User根据主键加载上来。不影响存储,只影响加载User.hbm.xml[html]view plaincopyprint?cardCard.hbm.xml[html]view plaincopyprint?不影响存储,只影响加载-->2、唯一外键关联映射出的关系模型与单向一样:映射文件:User.hbm.xml[html]view plaincopyprint 阅读全文
posted @ 2013-10-15 15:31 huidaoli 阅读(154) 评论(0) 推荐(0) 编辑
摘要:上篇中谈了Hibernate的基本映射,这篇开始谈Hibernate的关系映射。关系映射主要包括以下几种映射:我们先从多对一关联映射开始。多对一关联映射原理:在多的一端加入一个外键,指向一的一端,如下图:根据对象模型书写映射文件:在多的一端采用如下标签映射: User.hbm.xml[html]view plaincopyprint?Group.hbm.xml[html]view plaincopyprint? 阅读全文
posted @ 2013-10-15 15:29 huidaoli 阅读(115) 评论(0) 推荐(0) 编辑
摘要:在说Hibernate映射之前,先下了解下面的概念。对象-关系映射(Object/Relation Mapping,简称ORM),是随着面向对象的软件开发方法发展而产生的,是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术,本质上就是将数据从一种形式转换到另外一种形式。面向对象的开发方法是当今企业级应用开发环境中的主流开发方法,关系数据库是企业级应用环境中永久存放数据的主流数据存储系统。对象和关系数据是业务实体的两种表现形式,业务实体在内存中表现为对象,在数据库中表现为关系数据。内存中的对象之间存在关联和继承关系,而在数据库中,关系数据无法直接表达多对多关联和继承关系。因此,对象-关 阅读全文
posted @ 2013-10-15 15:28 huidaoli 阅读(135) 评论(0) 推荐(0) 编辑
摘要:单向一对一关联映射有两种方式实现一对一关联映射:1、主键关联:让两个实体的主键一样,即让两个对象具有相同的主键值,以表明它们之间的一一对应的关系;数据库表不会有多余的字段来维护它们之间的关系,仅通过表的主键来关联。映射后的关系模型:映射文件:User.hbm.xml[html]view plaincopyprint?cardCard.hbm.xml[html]view plaincopyprint?2、唯一外键关联:外键关联,本来是用于多对一的配置,但是加上唯一的限制之后,也可以用来表示一对一关联关系,可以把它看做是多对一的特殊情况。映射后的关系模型:映射文件:User.hbm.xml[htm 阅读全文
posted @ 2013-10-15 15:25 huidaoli 阅读(133) 评论(0) 推荐(0) 编辑
摘要:在通常的情况下,我们得到异常以后,需要将页面导航到一个错误提示的页面,提示错误信息。利用Stuts我们可以采用两种方式处理异常一、编程式异常处理*即我们在Action中调用业务逻辑层对象的方法时,用try{ }catch的方式来截获异常之后,手工对异常进行处理*我们以前的开发过程中,都是使用编程式的异常处理*在编程式异常处理的时候,我们可以使用struts的消息处理机制来对这些异常信息进行处理。二、自动异常处理机制*即在Action中不捕捉异常,而是将异常抛出给struts框架处理*我们需要在配置文件中指示struts如何处理这些被抛出的异常*使用元素来定义自动异常处理方式一在上一篇有关国际化 阅读全文
posted @ 2013-10-15 15:19 huidaoli 阅读(146) 评论(0) 推荐(0) 编辑
摘要:Struts设置转向信息的时候,需要用到Forward。我们有四种不同的处理方式:[html]view plaincopyprint?这几种方式有什么区别?1、方式一的forward的是全局共享的,所有Action都可以使用,而其余三种方式只有相应的action才能使用2、方式二仅仅起到一个转向的作用,完全由struts控制,很方便,但是我们不方便加入自定义的操作,除非重写struts框架中的类的方法。3、方法三和方法四,最大的区别在方式三不用我们自己写action了,它用的是Struts已经写好的action。需要注意的是,无论ActionForward还是我们自定义的action都是继承自 阅读全文
posted @ 2013-10-15 15:07 huidaoli 阅读(159) 评论(0) 推荐(0) 编辑
摘要:通过前面几篇的介绍,我们对ActionForward已经不再陌生,这篇我们再进一步了解一下它。1、转发or重定向ActionForward封装转向路径,用来完成页面的转向。那它既然是转向,到底是转发还是重定向呢?可以通过配置文件来设置,加入redirect属性,true重定向,false转发。默认的情况下,actionForward采用的是转发的方式进行页面跳转的。转发和重定向的区别:转发的时候,页面的url地址不变,而重定向的时候页面的url地址会发生变化。简单说明一下原因,因为转发的时候是采用的一个request(请求),既然页面跳转前后是同一个request,页面url当然不会变了;而重 阅读全文
posted @ 2013-10-15 15:06 huidaoli 阅读(190) 评论(0) 推荐(0) 编辑
摘要:Strust如何支持国际化?(一)页面(jsp)静态信息的国际化我们以登录这个例子来说明。通过点击中文或英文,实现登录界面语言信息的改变主要步骤:1、创建国际化资源文件*与上一篇中提到的创建方式一致属性文件内容MessagesBoundle_zn_CN.propertieslogin.form.field.username=\u7528\u6237 ----如果为GBK编码,这里是“用户名”login.form.field.password=\u5BC6\u7801 “密码”login.form.button.login=\u767B\u5F55 “登录”我们看到并非为中文,而是unicode 阅读全文
posted @ 2013-10-15 15:05 huidaoli 阅读(162) 评论(0) 推荐(0) 编辑
摘要:Web应用实现国际化(i18n),主要包括两个方面一、页面(jsp)静态信息的国际化二、动态消息的国际化在开始Struts国际化之前,我们先来看一下java如何实现国际化主要步骤:1、创建属性文件(国际化资源文件)*国际化资源文件是有baseName+Locale构成,如MessagesBundle_en_US.properties*缺省的国际化资源文件是baseName.properties格式命名,如:MessagesBundle.properties*关于中文必须转换成unicode,可以采用JAVA_HOME/bin/native2ascii工具转换命令native2ascii.exe 阅读全文
posted @ 2013-10-15 15:04 huidaoli 阅读(131) 评论(0) 推荐(0) 编辑
摘要:Struts标签库的使用和JSTL标签库使用方式类似。认识可以了,建议熟练掌握JSTL标签库。struts标签库基本认识就可以了。核心操作:配置: * 配置国际化支持,在struts-config.xml文件中加入如下配置: * 最好提供国际化资源文件(MessageResources.properties),将该文件放到src下 使用: 采用taglib引入 测试代码:ACTION[java]view plaincopyprint?packagecom.jialin;importjava.util.ArrayList;importjava.util.Date;importjava.ut... 阅读全文
posted @ 2013-10-15 14:56 huidaoli 阅读(135) 评论(0) 推荐(0) 编辑
摘要:使用ActionForm把表单数据单独封装起来,而且提供了自动的数据验证,简化了代码的编写,给我们带来了极大的方便。但是,ActionForm也存在一些明显的不足:1、如果ActionForm对应的HTML表单添加或删除一些属性,ActionForm类就可能需要修改并重新编译;所以如果HTML表单是动态的,那么ActionForm就无能为力了;2、ActionForm增加了项目中类的数量!3、对于安全性要求不高的系统,ActionForm的数据验证并不常用,我们一般都在js中验证了面对这些缺点,Struts引入了动态actionform概念,动态ActionForm使得用户无须为应用程序的每一 阅读全文
posted @ 2013-10-15 14:53 huidaoli 阅读(126) 评论(0) 推荐(0) 编辑
摘要:先看struts-config.xml[html]view plaincopyprint?其中 validate和attribut有什么用?validate,是否验证表单数据。我们在ActionForm中,重写父类的validate方法,当从表单收集完数据放到ActionForm后,如果配置文件中validate=true,将调用该方法,这里我们可以做一些数据验证。[java]view plaincopyprint?@OverridepublicActionErrorsvalidate(ActionMappingmapping,HttpServletRequestrequest){System 阅读全文
posted @ 2013-10-15 14:22 huidaoli 阅读(108) 评论(0) 推荐(0) 编辑
摘要:了解了Struts的基本流程,那么我们利用Struts来实现一个简单的登陆功能:先用时序图来描述一下登录功能的处理流程:核心操作:1、配置struts * 拷贝struts相关的jar到WEB-INF/lib下 * 在web.xml文件中配置ActionServlet * 提供struts-config.xml文件,需要放到WEB-INF下2、实现 *建立login.jsp/loginSuccess.jsp/loginFail.jsp *建立了LoginAction.java/userActionForm.java *将LoginAction/LoginActionForm/相关jsp配置到s 阅读全文
posted @ 2013-10-15 11:24 huidaoli 阅读(155) 评论(0) 推荐(0) 编辑
摘要:上篇中,用jsp+servlet演示了一下Struts的基本原理,这一篇我们介绍一下Struts执行的基本流程。假设现在有以下情景:用户正在浏览一个用STRUTS的技术构建的网站主页,主页上有个登陆表单,用户填好登陆名和密码,单击“登陆”按钮,就激活了以下一系列过程:(1)用户的请求以HTTP方式传输到服务器上,接受请求的是ActionServlet.(2)ActionServlet接收到请求后,会查找Struts-config.xml文件来确定服务器上是否有用户请求的操作,此处用户请求操作应为登陆操作。如果没有,则返回一个用户请求无效的出错信息。(3)当ActionServlet请求找到用户 阅读全文
posted @ 2013-10-15 11:22 huidaoli 阅读(176) 评论(0) 推荐(0) 编辑
摘要:struts是开源项目。它通过采用 Java Servlet/JSP 技术,实现了基于Java EE Web应用的MVC的应用框架。Struts继承了MVC的各项特性,并根据J2EE的特点,做了相应的变化与扩展。 阅读全文
posted @ 2013-10-15 11:00 huidaoli 阅读(164) 评论(0) 推荐(0) 编辑
摘要:软件开发是一项团队活动,必然需要团队成员间的交流与协作。由此,如何提高团队协作的效率便成为大家共同关注的话题。我们请到三位嘉宾将结合自己的实践经验与大家一起探讨。 阅读全文
posted @ 2013-10-12 09:01 huidaoli 阅读(2531) 评论(0) 推荐(0) 编辑
摘要:朱莉·弗雷德里克森是美国纽约一家企业软件公司的联合创始人兼首席执行官,芳龄29岁。她开玩笑地说,她运营初创企业的方式不大对劲儿。她不强迫自己醒着就得工作,她无视那种“猛男”创业方式;她每天工作的时间控制在10个小时以内,周末也很少工作;她吃得好,参加铁人三项运动,保证每晚至少9小时的睡眠时间。 阅读全文
posted @ 2013-10-12 08:52 huidaoli 阅读(352) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示