摘要:
问题起因:我在使用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%'; +- 阅读全文
摘要:
本文主要介绍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 阅读全文
摘要:
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压缩包中就有,新版本的压缩包中 阅读全文
摘要:
一、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目录下 阅读全文
摘要:
一、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 阅读全文
摘要:
一、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... 阅读全文
摘要:
早期的项目比较简单,多是用JSP 、Servlet + JDBC 直接搞定,后来使用 Struts1(Struts2)+Spring+Hibernate, 严格按照分层概念驱动项目开发,这次又使用 Spring MVC取代Struts来进行开发。MVC已经是现代Web开发中的一个很重要的部分,下面介绍一下SpringMVC+Spring3+Hibernate4的开发环境搭建先大致看一下项目结构:具体的代码不再演示,主要是走了一个很平常的路线,mvc-servcie-dao-hibernate的结构,源码可以下载,主要看一下配置文件。解释见注释web.xml[html]view plaincop 阅读全文
摘要:
一、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进入 阅读全文
摘要:
一、安装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 阅读全文
摘要:
Apache Hadoop 2.0.5-alpha 相比以前发布的稳定版本有了显著的改进。下面是一个简短的概述,包含分布式文件系统(Hadoop Distributed File System)和MapReduce方面的改进。HDFS 联合 为了横向地测量命名服务的,federation采用多重独立的命名节点/命名空间 这些命名节点是federated的,这意味着,这些命名节点是独立的,而且不要求与其他命名节点协同工作。数据节点作为块的公共存储器被所有命名节点使用。在cluster中,每一个数据节点被注册到所有的命名节点上。数据节点会定期发送心跳和块报告到命名节点,并处理来自命名节点的命令。 阅读全文
摘要:
一、概述最近开始着手高校云平台的搭建,前些天做了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下安装配置 阅读全文
摘要:
一、安装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服务器都在电信机房,而且一般配置好 阅读全文
摘要:
一、概述1、该系列文章主要介绍Linux下tomcat集群的安装与配置,其中涵盖了Linux,vsftpd,jdk,tomcat,apache,jkconnector等相关知识,还包括Linux下的常用命令,作为一个java程序员,这些技术是我们在Linux平台下的基本功。在现有网络结构之上,负载均衡提供了一种廉价有效的方法扩展服务器带宽和增加吞吐量,加强网络数据处理能力,提高网络的灵活性和可用性。集群系统(Cluster)主要解决下面几个问题:1.高可靠性:利用集群管理软件,当主服务器故障时,备份服务器能够自动接管主服务器的工作,并及时切换过去,以实现对用户的不间断服务。2.高性能计算:即充 阅读全文
摘要:
hadoop是一个开源分布式计算平台,以hadoop分布式文件系统HDFS和大规模数据分布式编程模型MapReduce为核心。它为用户提供了底部细节透明的分布式基础架构。HDFS的高容错性,高伸缩性等特点允许用户将hadoop部署在低廉的硬件上,形成分布式系统;而MapReduce分布式编程模型允许用户在不了解系统底层细节的情况下开发并行应用程序。再者,配合其他项目(如下图)的使用,使得用户可以利用hadoop轻松地组织计算机资源,利用集群的计算和存储能力,处理海量数据。hadoop主要相关项目,我总结了下面一张图供大家参考:这些子项目的总结会陆续给出! 阅读全文
摘要:
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)当前登 阅读全文
摘要:
一、概述前些日子开始着手高校云平台的搭建,其中涉及很重要的一部分是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 阅读全文
摘要:
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 阅读全文
摘要:
对象模型示例:继承映射的实现方式有三种:(一)每棵类继承树一张表关系模型:映射文件:[html]view plaincopyprint?说明:因为类继承树肯定是对应多个类,要把多个类的信息存放在一张表中,必须有某种机制来区分哪些记录是属于哪个类的。这种机制就是,在表中添加一个字段,用这个字段的值来进行区分。用hibernate实现这种策略的时候,有如下步骤: 1、父类用普通的标签定义 2、在父类中定义一个discriminator,即指定这个区分的字段的名称和类型 如:3、子类使用标签定义,在定义subclass的时候,需要注意如下几点:*Subclass标签的name属性是子类的全路径名 * 阅读全文
摘要:
单向多对多关联映射单向多对多关联对象模型:映射后的关系模型:多对多映射,会产生第三张表来维护关系映射文件:User.hbm.xml[html]view plaincopyprint?Role.hbm.xml[html]view plaincopyprint?双向多对多关联映射双向多对多关联对象模型映射出的关系模型与单向一样。映射方法基本相同,只是在多的一端加入: 需要注意: * 生成的中间表名称必须一样 * 生成的中间表中的字段必须一样 阅读全文
摘要:
单向一对多关联映射映射后的关系模型:映射文件:一对多关联映射和多对一关联映射映射原理是一致的,都是在多的一端加入一个外键,指向一的一端它们的区别在于维护的关系不同:* 多对一维护的关系是:多指向一的关系,有了此关系,在加载多的时候可以将一加载上来* 一对多维护的关系是:一指向多的关系,有了此关系,在加载一的时候可以将多加载上来Group.hbm.xml[html]view plaincopyprint?User.hbm.xml[html]view plaincopyprint?在一的一端维护关系存在缺陷: * 因为多的一端User不知道Group的存在(也就是User没有维护与Group的关系 阅读全文
摘要:
双向一对一关联映射与单向一对一关联映射一样,双向映射依然可以采用两种方式实现: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 阅读全文
摘要:
上篇中谈了Hibernate的基本映射,这篇开始谈Hibernate的关系映射。关系映射主要包括以下几种映射:我们先从多对一关联映射开始。多对一关联映射原理:在多的一端加入一个外键,指向一的一端,如下图:根据对象模型书写映射文件:在多的一端采用如下标签映射: User.hbm.xml[html]view plaincopyprint?Group.hbm.xml[html]view plaincopyprint? 阅读全文
摘要:
在说Hibernate映射之前,先下了解下面的概念。对象-关系映射(Object/Relation Mapping,简称ORM),是随着面向对象的软件开发方法发展而产生的,是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术,本质上就是将数据从一种形式转换到另外一种形式。面向对象的开发方法是当今企业级应用开发环境中的主流开发方法,关系数据库是企业级应用环境中永久存放数据的主流数据存储系统。对象和关系数据是业务实体的两种表现形式,业务实体在内存中表现为对象,在数据库中表现为关系数据。内存中的对象之间存在关联和继承关系,而在数据库中,关系数据无法直接表达多对多关联和继承关系。因此,对象-关 阅读全文
摘要:
单向一对一关联映射有两种方式实现一对一关联映射:1、主键关联:让两个实体的主键一样,即让两个对象具有相同的主键值,以表明它们之间的一一对应的关系;数据库表不会有多余的字段来维护它们之间的关系,仅通过表的主键来关联。映射后的关系模型:映射文件:User.hbm.xml[html]view plaincopyprint?cardCard.hbm.xml[html]view plaincopyprint?2、唯一外键关联:外键关联,本来是用于多对一的配置,但是加上唯一的限制之后,也可以用来表示一对一关联关系,可以把它看做是多对一的特殊情况。映射后的关系模型:映射文件:User.hbm.xml[htm 阅读全文
摘要:
在通常的情况下,我们得到异常以后,需要将页面导航到一个错误提示的页面,提示错误信息。利用Stuts我们可以采用两种方式处理异常一、编程式异常处理*即我们在Action中调用业务逻辑层对象的方法时,用try{ }catch的方式来截获异常之后,手工对异常进行处理*我们以前的开发过程中,都是使用编程式的异常处理*在编程式异常处理的时候,我们可以使用struts的消息处理机制来对这些异常信息进行处理。二、自动异常处理机制*即在Action中不捕捉异常,而是将异常抛出给struts框架处理*我们需要在配置文件中指示struts如何处理这些被抛出的异常*使用元素来定义自动异常处理方式一在上一篇有关国际化 阅读全文
摘要:
Struts设置转向信息的时候,需要用到Forward。我们有四种不同的处理方式:[html]view plaincopyprint?这几种方式有什么区别?1、方式一的forward的是全局共享的,所有Action都可以使用,而其余三种方式只有相应的action才能使用2、方式二仅仅起到一个转向的作用,完全由struts控制,很方便,但是我们不方便加入自定义的操作,除非重写struts框架中的类的方法。3、方法三和方法四,最大的区别在方式三不用我们自己写action了,它用的是Struts已经写好的action。需要注意的是,无论ActionForward还是我们自定义的action都是继承自 阅读全文
摘要:
通过前面几篇的介绍,我们对ActionForward已经不再陌生,这篇我们再进一步了解一下它。1、转发or重定向ActionForward封装转向路径,用来完成页面的转向。那它既然是转向,到底是转发还是重定向呢?可以通过配置文件来设置,加入redirect属性,true重定向,false转发。默认的情况下,actionForward采用的是转发的方式进行页面跳转的。转发和重定向的区别:转发的时候,页面的url地址不变,而重定向的时候页面的url地址会发生变化。简单说明一下原因,因为转发的时候是采用的一个request(请求),既然页面跳转前后是同一个request,页面url当然不会变了;而重 阅读全文
摘要:
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 阅读全文
摘要:
Web应用实现国际化(i18n),主要包括两个方面一、页面(jsp)静态信息的国际化二、动态消息的国际化在开始Struts国际化之前,我们先来看一下java如何实现国际化主要步骤:1、创建属性文件(国际化资源文件)*国际化资源文件是有baseName+Locale构成,如MessagesBundle_en_US.properties*缺省的国际化资源文件是baseName.properties格式命名,如:MessagesBundle.properties*关于中文必须转换成unicode,可以采用JAVA_HOME/bin/native2ascii工具转换命令native2ascii.exe 阅读全文
摘要:
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... 阅读全文
摘要:
使用ActionForm把表单数据单独封装起来,而且提供了自动的数据验证,简化了代码的编写,给我们带来了极大的方便。但是,ActionForm也存在一些明显的不足:1、如果ActionForm对应的HTML表单添加或删除一些属性,ActionForm类就可能需要修改并重新编译;所以如果HTML表单是动态的,那么ActionForm就无能为力了;2、ActionForm增加了项目中类的数量!3、对于安全性要求不高的系统,ActionForm的数据验证并不常用,我们一般都在js中验证了面对这些缺点,Struts引入了动态actionform概念,动态ActionForm使得用户无须为应用程序的每一 阅读全文
摘要:
先看struts-config.xml[html]view plaincopyprint?其中 validate和attribut有什么用?validate,是否验证表单数据。我们在ActionForm中,重写父类的validate方法,当从表单收集完数据放到ActionForm后,如果配置文件中validate=true,将调用该方法,这里我们可以做一些数据验证。[java]view plaincopyprint?@OverridepublicActionErrorsvalidate(ActionMappingmapping,HttpServletRequestrequest){System 阅读全文
摘要:
了解了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 阅读全文
摘要:
上篇中,用jsp+servlet演示了一下Struts的基本原理,这一篇我们介绍一下Struts执行的基本流程。假设现在有以下情景:用户正在浏览一个用STRUTS的技术构建的网站主页,主页上有个登陆表单,用户填好登陆名和密码,单击“登陆”按钮,就激活了以下一系列过程:(1)用户的请求以HTTP方式传输到服务器上,接受请求的是ActionServlet.(2)ActionServlet接收到请求后,会查找Struts-config.xml文件来确定服务器上是否有用户请求的操作,此处用户请求操作应为登陆操作。如果没有,则返回一个用户请求无效的出错信息。(3)当ActionServlet请求找到用户 阅读全文
摘要:
struts是开源项目。它通过采用 Java Servlet/JSP 技术,实现了基于Java EE Web应用的MVC的应用框架。Struts继承了MVC的各项特性,并根据J2EE的特点,做了相应的变化与扩展。 阅读全文
摘要:
Hibernate工作原理及为什么要用?
原理:
1. 读取并解析配置文件
2. 读取并解析映射信息,创建SessionFactory
3. 打开Sesssion
4. 创建事务Transation
5. 持久化操作
6. 提交事务
7. 关闭Session
8. 关闭SesstionFactory 阅读全文