`
king_tt
  • 浏览: 2258459 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

GAE集成SpringMVC

 
阅读更多

摘要:

本教程,主要展示GAE如何集成SpringMVC 框架,同时,实现一个小案例(墙内可以访问http://www.baifeibai.com/查看案例)。

所使用技术和工具:

  1. Eclipse-Jee-Juno (version 4.2)
  2. JDK 1.6
  3. Google Plugin for Eclipse
  4. Google App Engine Java SDK 1.7.4
  5. Spring 3.1.0

备注:

在学习本教程之前,您可能需要了解SpringMVC开发技术,同样你也可能需要阅读下我上一篇博文[GAE 教程] 初识GAE

  • 项目集成SpringMVC 需要依赖以下jar
    1. aopalliance-1.0.jar
    2. commons-logging-1.1.1.jar

    3. spring-aop-3.1.0.RELEASE.jar

    4. spring-asm-3.1.0.RELEASE.jar

    5. spring-beans-3.1.0.RELEASE.jar

    6. spring-context-3.1.0.RELEASE.jar

    7. spring-context-support-3.1.0.RELEASE.jar

    8. spring-core-3.1.0.RELEASE.jar

    9. spring-expression-3.1.0.RELEASE.jar

    10. spring-web-3.1.0.RELEASE.jar

    11. spring-webmvc-3.1.0.RELEASE.jar

  • 准备好Jar包以后,将这些jar包拷贝到项目的war/WEB-INF/lib 中

复制所需jar包到项目

  • 导入后,通过Configure Build Path…配置引用下这些包就好了

导入依赖包

  • 配置SpringMVC,首先我们需要在war/WEB-INF/ 下创建一个Spring XML bean的配置文件 {YourServletName}-servlet.xml,用来定义bean 和 试图解析器
复制代码
 1 <beans xmlns="http://www.springframework.org/schema/beans"
 2     xmlns:context="http://www.springframework.org/schema/context"
 3     xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 4     xsi:schemaLocation="
 5         http://www.springframework.org/schema/beans     
 6         http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
 7         http://www.springframework.org/schema/context 
 8         http://www.springframework.org/schema/context/spring-context-3.0.xsd
 9         http://www.springframework.org/schema/mvc
10         http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">
11 
12     <!-- 对web包中的所有类进行扫描,以完成bean的创建和自动依赖注入功能 -->
13     <context:component-scan base-package="com.javawill" />
14 
15     <!-- 对模型视图的名称的解析 -->
16     <bean
17         class="org.springframework.web.servlet.view.InternalResourceViewResolver">
18         <property name="prefix">
19             <value>/WEB-INF/jsp/</value>
20         </property>
21         <property name="suffix">
22             <value>.jsp</value>
23         </property>
24     </bean>
25 
26 </beans>
复制代码

  • 同时,我们需要将Spring 集成到我们的web.xml中,有的人可能IDE无法显示web.xml的内容,只需要刷新web.xml 文件(注意是文件,不是内容)
复制代码
 1 <?xml version="1.0" encoding="utf-8" standalone="no"?>
 2 <web-app xmlns="http://java.sun.com/xml/ns/javaee"
 3     xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
 4     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5"
 5     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
 6     <!-- spring mvc的servlet,加载WEB-INF/baifeibai-servlet.xml的配置文件,以启动Spring MVC模块 -->
 7     <servlet>
 8         <servlet-name>baifeibai</servlet-name>
 9         <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
10         <load-on-startup>1</load-on-startup>
11     </servlet>
12     <servlet-mapping>
13         <servlet-name>baifeibai</servlet-name>
14         <url-pattern>*.do</url-pattern>
15     </servlet-mapping>
16     <context-param>
17         <param-name>contextConfigLocation</param-name>
18         <param-value>/WEB-INF/baifeibai-servlet.xml</param-value>
19     </context-param>
20     <!-- spring容器启动监听器 -->
21     <listener>
22         <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
23     </listener>
24     <welcome-file-list>
25         <welcome-file>index.html</welcome-file>
26     </welcome-file-list>
27     <servlet>
28         <servlet-name>SystemServiceServlet</servlet-name>
29         <servlet-class>com.google.api.server.spi.SystemServiceServlet</servlet-class>
30         <init-param>
31             <param-name>services</param-name>
32             <param-value />
33         </init-param>
34     </servlet>
35     <servlet-mapping>
36         <servlet-name>SystemServiceServlet</servlet-name>
37         <url-pattern>/_ah/spi/*</url-pattern>
38     </servlet-mapping>
39 </web-app>
复制代码

  • 现在我们看看我们项目的新结构,并实现一个简单的业务,通过Controller 定义一个变量值,并在JSP上展现出来

    项目结构

  • 编写Controller.java
复制代码
 1 /**
 2  * Create by Javawill in 2013-1-10
 3  */
 4 package com.javawill.example.spring.controller;
 5 
 6 import org.springframework.stereotype.Controller;
 7 import org.springframework.ui.Model;
 8 import org.springframework.web.bind.annotation.RequestMapping;
 9 
10 /**
11  * GAE集成SpringMVC Controller 实例
12  * @author  <a href="mailto:iflytekwill@qq.com">Javawill</a>
13  * @version 1.0
14  */
15 @Controller
16 public class SpringController {
17     @RequestMapping("/example/welcome.do")
18     public String Welcome(Model model, String inputval){
19         if ( inputval == null || ("".equals(inputval))) {
20             inputval = "您可以试试在下面的输入框输入值,测试下Spring的传参!";
21         } else {
22             inputval = "您之前输入的值为:" + inputval;
23         }
24         model.addAttribute("hello", "您好,欢迎您来到GAE+SpringMVC学习项目演示网站!");
25         model.addAttribute("msg", inputval);
26         return "example/spring/welcome";
27     }
28 }
复制代码

  • 用于展现的JSP页面代码
复制代码
 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
 2     pageEncoding="UTF-8"%>
 3 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
 4 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 5 <html>
 6 <head>
 7 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 8 <title>Javawill 演示案例</title>
 9 </head>
10 <body>
11     <h2>${hello }</h2>
12     ${msg }
13     <form action="<c:url  value='/example/welcome.do'  />" method="post">
14         输入值:<input id="inputval" name="inputval" /> 
15         <input type="submit" value="确定" />
16     </form>
17 
18 </body>
19 </html>
复制代码

页面展现效果

输入值以后的效果

分享到:
评论

相关推荐

    GAE-SpringMVC_Example

    GAE-SpringMVC_Example SpringMVC 应用示例,支持:Google AppEngine v1.9.15 和 SpringMVC v3.1.1 是一个建立在[集成开发环境] Moon Eclipse Service Release 1 (4.4.1) 上的项目,因此您可以将其导入Eclipse 并...

    spring3+springmvc+jpa2+gae

    标题 "spring3+springmvc+jpa2+gae" 指的是一个集成开发环境,它结合了Spring框架的三个核心组件以及Google App Engine (GAE)。这个项目旨在展示如何在GAE上运行一个基于Spring 3、Spring MVC和JPA 2.0的应用程序。...

    基于GAE的Demo

    【基于GAE的Demo】是一个使用Eclipse集成开发环境构建的项目,主要展示了如何在Google App Engine(GAE)平台上整合Struts2、Spring和Tiles框架。GAE是Google提供的一个云计算平台,允许开发者在Google的基础设施上...

    spring+gae

    【标题】"Spring+GAE"揭示了将Google App Engine(GAE)与Spring框架集成的主题,这是一个在云端运行Java应用程序的关键技术组合。Spring是一个广泛使用的开源Java框架,提供了依赖注入、面向切面编程和MVC(模型-...

    GAE包(以配置好,解压可用)

    描述中提到,“GAE集成程序,共有三个软件包”,这可能包括GAE的SDK(软件开发工具包)、Python解释器以及一些辅助工具。Python是GAE支持的主要编程语言之一,用于编写应用程序。SDU(可能是某种特定的工具或服务)...

    gae-pytorch-master_pytorch_pytorchgae_GAE_自编码器_gaepytorchmaster_

    【标题】"gae-pytorch-master_pytorch_pytorchgae_GAE_自编码器_gaepytorchmaster_" 提供的信息表明,这是一个使用PyTorch实现的图自编码器(Graph Autoencoder, GAE)项目,其核心是将自编码器的概念应用于图数据。...

    GAE使用规则

    GAE使用规则GAE使用规则GAE使用规则GAE使用规则GAE使用规则GAE使用规则GAE使用规则GAE使用规则GAE使用规则

    gae_in_pytorch-master_GAE_

    **图形自动编码器(GAE)在PyTorch中的实现** **一、GAE概述** 图形自动编码器(Graph Autoencoder, GAE)是一种应用于图数据的深度学习模型,它结合了自动编码器(Autoencoder)的思想与图神经网络(Graph Neural...

    GAE之webapp框架

    - **集成性**:与GAE环境高度集成,易于使用GAE提供的各种服务。 - **灵活性**:支持多种Web开发模式,如MVC等。 #### 三、`webapp`框架核心组件 **1. RequestHandler 类** `RequestHandler` 是`webapp`框架中最...

    GAE入门教程

    pass之GAE入门教程, 学习GAE

    GAE blog安装

    8. **持续集成/持续部署(CI/CD)**:为了提高效率和保证质量,可以设置CI/CD流程,如使用Jenkins或GitHub Actions,使得每次代码提交都会自动触发测试和部署。 9. **域名绑定**:如果需要,还可以将自定义域名绑定到...

    关于GAE的教程、工具与文档(建站)

    12. **云服务集成**:GAE可以与其他Google Cloud Platform服务无缝集成,如Cloud Storage、Cloud SQL、Cloud Firestore等,扩大应用的功能范围。 总的来说,GAE为开发者提供了一个强大的平台,用于快速构建可伸缩的...

    让gae支持php的方法

    在提供的压缩包文件中,`readme.txt`可能包含有关如何配置和使用Quercus在GAE上运行PHP的详细指南,而`phpwithjava`可能是示例代码或者项目结构,帮助用户理解如何将PHP代码与Java环境集成。 总的来说,使用Quercus...

    GAE入门教程.pdf

    - GAE 集成了 Google 用户系统,可以验证用户是否已登录,并获取其信息。 - 这允许开发具有用户登录功能的应用,提供安全的身份验证。 6. **处理表单数据** - GAE 应用可以处理 Form 表单数据,理解 Post 和 Get...

    spring+gae+hibernate

    标题“spring+gae+hibernate”所提及的是一个技术集成项目,主要涉及Spring框架、Google App Engine(GAE)和Hibernate三个关键组件。让我们详细探讨这三个技术以及它们的集成。 Spring是一个开源的Java企业级应用...

    GAE扩展样例程序

    【标题】"GAE扩展样例程序"是一个针对Google App Engine (GAE) 平台的EGL(Enterprise Generation Language)扩展项目。这个程序的主要目的是为开发者提供一个模板或者起点,帮助他们更好地理解和实践如何在GAE上...

    GAE编程指南

    《GAE编程指南》是一种云计算服务,跟其他的同类产品不同,它提供了一种简单的应用程序构建模型,通过这种模型,你可以轻松地构建出能够容纳数百万用户的应用程序。《GAE编程指南》是介绍使用这个强大平台的专家级...

    GAE read rss send to 腾讯微博

    标题“GAE read rss send to 腾讯微博”指的是一个使用Google App Engine(GAE)平台开发的应用程序,该程序的功能是从RSS源读取数据并将其发布到腾讯微博。RSS(Really Simple Syndication)是一种内容聚合格式,常...

    EGL扩展GAE示例代码

    它支持生成Java、JavaScript和其他语言的代码,这使得EGL成为一种跨平台的解决方案,可以无缝地与各种技术栈集成,如GAE。 Google App Engine(GAE)是Google提供的一个平台即服务(PaaS)云托管环境,允许开发者...

Global site tag (gtag.js) - Google Analytics