`
杰然不同
  • 浏览: 26283 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

Maven,Spring,Hibernate,Flex,PureMVC整合(一)

    博客分类:
  • RIA
阅读更多

主要参考文章:

1.《构建全栈式Flex、BlazeDS和Spring集成解决方案》
2. http://www.iteye.com/topic/392836

      最近和朋友正策划一个记账的小型项目,想用Flex来做前端开发。以前有看过Flex方面的教程,这次动手构建这个项目还真花了不少时间,因为像我这么构建的文章几乎没有。按理说上面2篇参考文章都能构建好项目,但是我想用Maven的人肯定很多,"风雪涟漪"的构建没用到Maven,而《构建全栈式Flex、BlazeDS和Spring集成解决方案》教程里连Flex都用Maven构建,不能说不好,但是目前FlexBuilder3根本不支持Maven构建的项目,所以根本无法用此IDE,对于大多数人来说做开发还是比较依赖IDE的,所以我各取所长构建自己的项目。好了,废话不多说,我们开始。
     在Java端用Spring+hibernate搭基本骨架,我有个兄弟之前做了个Flex项目,Java端用Spring+hibernate+Struts2架构,然后用Flex的HttpService来请求数据。但我总觉得Struts2在这里显得很多余,完全可以用Spring+BlazeDS与Flex经行交互。

 

所需要的开发环境 :

1.Eclipse3.4(J2EE版本)

2.Flex Builder 3

3.Maven2.0.9

(说明:2.1.0和2.2.0两个版本对flex-compiler-mojo支持有Bug,如果完全用《构建全栈式Flex、BlazeDS和Spring集成解决方案》来构建,建议使用2.0.9的Maven版本)

 

一、利用Maven构建Web应用

打开Cmd,定位到你的工作空间,运行下面命令

mvn archetype:create -DgroupId=com.zhjj.zhangben -DartifactId=zhengben

然后加入eclipse支持,运行mvn eclipse:eclipse

现在你可以用eclipse打开这个基础应用了

 

二、加入spring,hibernate,blazeds,spring-flex依赖

<!-- 添加spring依赖 -->
  <dependency>
   <groupId>org.springframework</groupId>
   <artifactId>spring</artifactId>
   <version>${spring.version}</version>
  </dependency>
  <dependency>
   <groupId>org.springframework</groupId>
   <artifactId>spring-webmvc</artifactId>
   <version>${spring.version}</version>
  </dependency>
  <dependency>
   <groupId>org.springframework</groupId>
   <artifactId>spring-test</artifactId>
   <version>${spring.version}</version>
   <scope>test</scope>
  </dependency>
  <dependency>
   <groupId>org.aspectj</groupId>
   <artifactId>aspectjrt</artifactId>
   <version>1.5.4</version>
  </dependency>
  <dependency>
   <groupId>org.aspectj</groupId>
   <artifactId>aspectjweaver</artifactId>
   <version>1.5.4</version>
  </dependency>
  <!-- 添加hibernate依赖 -->
  <dependency>
   <groupId>org.hibernate</groupId>
   <artifactId>hibernate-annotations</artifactId>
   <version>${hibernate.annotations.version}</version>
  </dependency>
  <dependency>
   <groupId>org.hibernate</groupId>
   <artifactId>hibernate-commons-annotations</artifactId>
   <version>${hibernate.annotations.version}</version>
  </dependency>
  <dependency>
   <groupId>${jdbc.groupId}</groupId>
   <artifactId>${jdbc.artifactId}</artifactId>
   <version>${jdbc.version}</version>
  </dependency>
  <!-- 添加blazeds依赖 -->
  <dependency> 
   <groupId>com.adobe.blazeds</groupId> 
   <artifactId>blazeds-common</artifactId> 
   <version>3.0.0.544</version> 
  </dependency> 
  <dependency> 
   <groupId>com.adobe.blazeds</groupId> 
   <artifactId>blazeds-core</artifactId> 
   <version>3.0.0.544</version> 
  </dependency> 
  <dependency> 
   <groupId>com.adobe.blazeds</groupId> 
   <artifactId>blazeds-remoting</artifactId> 
   <version>3.0.0.544</version> 
  </dependency> 
  <dependency> 
   <groupId>backport-util-concurrent</groupId> 
   <artifactId>backport-util-concurrent</artifactId> 
   <version>3.1</version> 
  </dependency>
  <!-- spring-flex -->
  <dependency> 
   <groupId>org.springframework</groupId> 
   <artifactId>spring-flex</artifactId> 
   <version>1.0.0.RELEASE</version> 
  </dependency>

  

 需要说明的是,目前为止spring-flex还没有以公共的Maven仓库方式公开,所以要到http://www.springsource.org/spring-flex 去下载然后自己加到本地仓库中。

 

三、以下几个依赖包都不可或缺,否则会报很多莫名其妙的错误(这些错误我Google,Baidu了个好几天才解决,我哭啊。。。。)

<dependency>
   <groupId>org.codehaus.jackson</groupId>
   <artifactId>jackson-core-asl</artifactId>
   <version>0.9.9-6</version>
  </dependency>
  <!-- 
   cglib(Code Generation Library)是一个强大的,高性能,高质量的Code生成类库。它可以在运行期扩展Java类与实现Java接口。
   cglib封装了asm,可以在运行期动态生成新的class。
   cglib用于AOP,jdk中的proxy必须基于接口,cglib却没有这个限制
   -->
  <dependency>
   <groupId>cglib</groupId>
   <artifactId>cglib</artifactId>
   <version>2.2</version>
  </dependency>
  <!-- xalan是一套xslt处理器,用来将XML文件转换为HTML,TEXT和XML等其他类型文件格式 -->
  <dependency>
   <groupId>xalan</groupId>
   <artifactId>xalan</artifactId>
   <version>2.7.1</version>
  </dependency>
  <dependency> 
   <groupId>javax.servlet</groupId> 
   <artifactId>servlet-api</artifactId> 
   <version>2.5</version> 
   <scope>provided</scope> 
  </dependency>

  

四、增加几个插件

<plugins>

<!-- 编译用的 -->
   <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
     <source>1.5</source>
     <target>1.5</target>
    </configuration>
   </plugin>

<!-- 用来在Java中生成数据库表-->
   <plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>hibernate3-maven-plugin</artifactId>
    <version>2.1</version>
    <configuration>
     <components>
      <component>
       <name>hbm2ddl</name>
       <implementation>annotationconfiguration</implementation>
       <!-- Use 'jpaconfiguration' if you're using JPA. -->
       <!--<implementation>jpaconfiguration</implementation>-->
      </component>
     </components>
     <componentProperties>
      <drop>true</drop>
      <jdk5>true</jdk5>
      <propertyfile>target/classes/jdbc.properties</propertyfile>
      <skip>${maven.test.skip}</skip>
     </componentProperties>
    </configuration>
    <executions>
     <execution>
      <phase>process-test-resources</phase>
      <goals>
       <goal>hbm2ddl</goal>
      </goals>
     </execution>
    </executions>
    <dependencies>
     <dependency>
      <groupId>${jdbc.groupId}</groupId>
      <artifactId>${jdbc.artifactId}</artifactId>
      <version>${jdbc.version}</version>
     </dependency>
    </dependencies>
   </plugin>
   <plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>dbunit-maven-plugin</artifactId>
    <version>1.0-beta-1</version>
    <configuration>
     <dataTypeFactoryName>${dbunit.dataTypeFactoryName}</dataTypeFactoryName>
     <driver>${jdbc.driverClassName}</driver>
     <username>${jdbc.username}</username>
     <password>${jdbc.password}</password>
     <url>${jdbc.url}</url>
     <src>src/test/resources/sample-data.xml</src>
     <type>${dbunit.operation.type}</type>
     <schema>${dbunit.schema}</schema>
     <skip>${maven.test.skip}</skip>
    </configuration>
    <executions>
     <execution>
      <id>test-compile</id>
      <phase>test-compile</phase>
      <goals>
       <goal>operation</goal>
      </goals>
     </execution>
     <execution>
      <!-- Runs before integration tests and jetty:run-war -->
      <id>test</id>
      <phase>test</phase>
      <goals>
       <goal>operation</goal>
      </goals>
     </execution>
    </executions>
    <dependencies>
     <dependency>
      <groupId>${jdbc.groupId}</groupId>
      <artifactId>${jdbc.artifactId}</artifactId>
      <version>${jdbc.version}</version>
     </dependency>
    </dependencies>
   </plugin>
<!-- Jetty插件,测试服务器 -->
   <plugin>
    <groupId>org.mortbay.jetty</groupId>
    <artifactId>maven-jetty-plugin</artifactId>
    <version>6.1.6</version>
    <configuration>
     <contextPath>/zhangben</contextPath>
     <scanIntervalSeconds>3</scanIntervalSeconds>
     <connectors>
      <connector
       implementation="org.mortbay.jetty.bio.SocketConnector">
       <port>8080</port>
       <maxIdleTime>60000</maxIdleTime>
      </connector>
     </connectors>
     <scanTargetPatterns>
      <scanTargetPattern>
       <directory>
        src/main/webapp/WEB-INF
       </directory>
       <excludes>
        <exclude>**/*.jsp</exclude>
       </excludes>
       <includes>
        <include>**/*.properties</include>
        <include>*.xml</include>
       </includes>
      </scanTargetPattern>
      <scanTargetPattern>
       <directory>src/main/resources</directory>
       <includes>
        <include>*.properties</include>
        <include>*.xml</include>
       </includes>
      </scanTargetPattern>
     </scanTargetPatterns>
    </configuration>
   </plugin>
<!-- eclipse插件 -->
   <plugin>
    <artifactId>maven-eclipse-plugin</artifactId>
    <version>2.5.1</version>
    <configuration>
     <additionalProjectnatures>
      <projectnature>org.springframework.ide.eclipse.core.springnature</projectnature>
     </additionalProjectnatures>
     <additionalBuildcommands>
      <buildcommand>org.springframework.ide.eclipse.core.springbuilder</buildcommand>
     </additionalBuildcommands>
     <downloadSources>true</downloadSources>
     <downloadJavadocs>true</downloadJavadocs>
     <wtpversion>1.5</wtpversion>
    </configuration>
   </plugin>
  </plugins>

 

  

 

要下班了,明天继续!!!

6
0
分享到:
评论
2 楼 杰然不同 2009-07-29  
growrain 写道
我想请教你是如何把maven2的项目转化成flex builder3的项目的,谢谢。

目前应该转不了,maven2不支持对Flex Builder3这个IDE,虽然这也是基于eclipse开发的。对此我也很郁闷
1 楼 growrain 2009-07-29  
我想请教你是如何把maven2的项目转化成flex builder3的项目的,谢谢。

相关推荐

    pureMVC 实例

    《pureMVC实战:构建基于Flex前端与BlazeDS、Spring和Hibernate后端的应用》 在软件开发领域,尤其在企业级应用中,选择合适的框架和技术栈至关重要。本实例采用了一个强大的组合:PureMVC作为前端框架,BlazeDS...

    maven、spring、spring mvc、mybatis 整合实现ssm通用增删改查基础开发框架

    maven、spring、spring mvc、mybatis 整合实现ssm通用增删改查基础开发框架.maven、spring、spring mvc、mybatis 整合实现ssm通用增删改查基础开发框架.maven、spring、spring mvc、mybatis 整合实现ssm通用增删改查...

    最新 maven spring hibernate mvc 4.X

    本项目标题为"最新 Maven Spring Hibernate MVC 4.X",意味着我们将探讨如何使用这些技术构建一个基于Java的Web应用程序。 首先,`Maven`是Apache软件基金会开发的一款项目管理工具,它主要负责项目的构建、依赖...

    用Maven搭建Spring+Spring MVC+Hibernate框架

    本篇文章将深入探讨如何使用Maven作为构建工具,在Eclipse环境中搭建一个整合了Spring、Spring MVC和Hibernate的项目。 首先,让我们了解Maven。Maven是Apache开发的一款项目管理和综合工具,它通过一个项目对象...

    maven整合spring+hibernate+struts2

    本项目“maven整合spring+hibernate+struts2”就是一个典型的Java Web开发模式,它利用Maven作为项目管理工具,Spring作为核心框架,Hibernate作为持久层解决方案,Struts2作为表现层控制器。以下将详细阐述这些技术...

    spring+hibernate+flex整合

    以上就是Spring、Hibernate和Flex整合的基础知识和搭建步骤,对于初学者来说,这是一个很好的起点,能够帮助他们理解这些技术的协同工作方式,并为更复杂的项目打下基础。通过不断地实践和学习,开发者可以逐步掌握...

    Maven+Spring MVC +Hibernate Validate

    本项目" Maven+Spring MVC +Hibernate Validate" 提供了一种强大的技术栈,用于实现这一目标。它将Maven作为项目构建工具,Spring MVC作为后端控制器框架,而Hibernate Validate则负责服务端的数据验证。下面我们将...

    Spring+Hibernate+SpringMVC+Maven整合

    本项目"Spring+Hibernate+SpringMVC+Maven整合"集中了四个流行的Java技术,旨在提供一个全面的后端开发解决方案。以下是这些技术及其整合的关键知识点: 1. **Spring框架**:Spring是一个开源的Java平台,它为开发...

    IntelliJ IDEA上创建Maven Spring MVC项目

    在本文中,我们将深入探讨如何使用IntelliJ IDEA创建一个基于Maven的Spring MVC项目。首先,我们需要了解几个核心概念: 1. **IntelliJ IDEA**:这是一款强大的Java集成开发环境(IDE),广泛用于Java应用程序的...

    springmvc spring hibernate jpa maven 整合

    这个项目"springmvc spring hibernate jpa maven 整合"就是这样一个例子,它整合了四个关键的技术组件:Spring MVC、Spring、Hibernate和JPA,以及依赖管理工具Maven。让我们详细探讨这些技术及其在项目中的作用。 ...

    使用maven整合spring和hibernate的例子(spring mvc)

    本教程将重点介绍如何使用Maven作为项目管理工具,结合Spring MVC作为控制层框架和Hibernate作为持久层框架,来构建一个完整的Web应用。Maven是Apache组织提供的一个项目管理和综合工具,它可以帮助我们管理项目的...

    maven spring spring mvc mybatis 整合

    本主题将详细探讨"Maven、Spring、Spring MVC和MyBatis"这四大技术的整合,以及它们如何协同工作来构建高效、可维护的Web应用程序。 首先,Maven是一个项目管理和综合工具,它通过一个XML配置文件管理项目的依赖...

    Maven整合Spring+SpringMVC+Hibernate+SpringDataJPA

    在现代Java Web开发中,"Maven整合Spring+SpringMVC+Hibernate+SpringDataJPA"是一个常见的架构组合,被广泛应用于构建企业级应用程序。这个组合通常被称为"SSM",其中"M"代表Maven,"S"代表Spring,包括Spring核心...

    Maven+Spring+Spring MVC+MyBatis+MySQL,搭建SSM框架环境

    Maven+Spring+Spring MVC+MyBatis+MySQL,搭建SSM框架环境

    Maven+Hibernate+Spring+Spring MVC开发新闻发布系统

    5、Spring MVC 三、课程目标 1、深入理解Maven工作原理 2、熟练掌握Maven基础应用 3、熟练掌握Maven企业级开发 四、课程大纲 第1课 Maven 概述及安装 第2课 使用Maven构建Java项目 第3课 理解Maven核心概念(一) ...

    maven(springmvc+spring+hibernate)

    SSH整合指的是Spring、Struts和Hibernate这三大Java开源框架的集成应用。这三大框架分别负责控制层、视图层和持久层,它们的结合能够构建出功能强大的企业级Web应用程序。 Spring框架是整个SSH整合的核心,它提供了...

    maven与spring MVC

    综上所述,这个项目可能是一个使用Maven构建的Java Web应用,采用Spring MVC作为MVC架构,利用Hibernate进行数据库操作,通过Validation进行数据验证,并且使用DWR来增强前端的交互性。这样的组合提供了一个强大、...

    Maven + spring + spring mvc + mybatis 整合例子

    以下是关于Maven、Spring、Spring MVC和MyBatis的详细知识点: 1. Maven: Maven是一个项目管理和综合工具,它通过定义项目构建过程,依赖管理和项目信息管理来简化Java项目的构建。Maven使用XML格式的`pom.xml`...

    Spring+SpringMvc+Maven+Hibernate整合

    通过这种整合,我们可以快速构建一个功能完善的Web应用,同时享受到Spring的灵活性、SpringMVC的轻量级Web控制、Maven的依赖管理以及Hibernate的数据持久化优势。对于初学者来说,这样的整合实例有助于理解这些框架...

    零配置Maven+Spring MVC4.2.4+Hibernate5.2.10

    零配置Maven+Spring MVC4.2.4+Hibernate5.2.10 零配置Maven+Spring MVC4.2.4+Hibernate5.2.10 零配置Maven+Spring MVC4.2.4+Hibernate5.2.10 零配置Maven+Spring MVC4.2.4+Hibernate5.2.10

Global site tag (gtag.js) - Google Analytics