在本教程中,我们将演示如何使用 Maven 创建一个 Java Web 项目(Spring MVC)。

用到的技术/工具:

  1. Maven 3.3.3
  2. Eclipse 4.3
  3. JDK 8
  4. Spring 4.1.1.RELEASED
  5. Tomcat 7
  6. Logback 1.0.13

1. 从Maven模板创建Web项目

您可以通过使用Maven的maven-archetype-webapp模板来创建一个快速启动Java Web应用程序的项目。在终端(* UNIX或Mac)或命令提示符(Windows)中,导航至您想要创建项目的文件夹。

键入以下命令:

  1. $ mvn archetype:generate -DgroupId=com.yiibai -DartifactId=CounterWebApp -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false

具体示例 :

  1. C:\worksp>mvn archetype:generate -DgroupId=com.yiibai -DartifactId=CounterWebAp
  2. p -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false
  3. [INFO] Scanning for projects...
  4. [INFO]
  5. [INFO] ------------------------------------------------------------------------
  6. [INFO] Building Maven Stub Project (No POM) 1
  7. [INFO] ------------------------------------------------------------------------
  8. [INFO]
  9. [INFO] >>> maven-archetype-plugin:2.4:generate (default-cli) > generate-sources
  10. @ standalone-pom >>>
  11. [INFO]
  12. [INFO] <<< maven-archetype-plugin:2.4:generate (default-cli) < generate-sources
  13. @ standalone-pom <<<
  14. [INFO]
  15. [INFO] --- maven-archetype-plugin:2.4:generate (default-cli) @ standalone-pom --
  16. -
  17. [INFO] Generating project in Batch mode
  18. Downloading: https://repo.maven.apache.org/maven2/org/apache/maven/archetypes/ma
  19. ven-archetype-webapp/1.0/maven-archetype-webapp-1.0.jar
  20. Downloaded: https://repo.maven.apache.org/maven2/org/apache/maven/archetypes/mav
  21. en-archetype-webapp/1.0/maven-archetype-webapp-1.0.jar (4 KB at 0.1 KB/sec)
  22. Downloading: https://repo.maven.apache.org/maven2/org/apache/maven/archetypes/ma
  23. ven-archetype-webapp/1.0/maven-archetype-webapp-1.0.pom
  24. Downloaded: https://repo.maven.apache.org/maven2/org/apache/maven/archetypes/mav
  25. en-archetype-webapp/1.0/maven-archetype-webapp-1.0.pom (533 B at 0.1 KB/sec)
  26. [INFO] -------------------------------------------------------------------------
  27. ---
  28. [INFO] Using following parameters for creating project from Old (1.x) Archetype:
  29. maven-archetype-webapp:1.0
  30. [INFO] -------------------------------------------------------------------------
  31. ---
  32. [INFO] Parameter: basedir, Value: C:\worksp
  33. [INFO] Parameter: package, Value: com.yiibai
  34. [INFO] Parameter: groupId, Value: com.yiibai
  35. [INFO] Parameter: artifactId, Value: CounterWebApp
  36. [INFO] Parameter: packageName, Value: com.yiibai
  37. [INFO] Parameter: version, Value: 1.0-SNAPSHOT
  38. [INFO] project created from Old (1.x) Archetype in dir: C:\worksp\CounterWebApp
  39. [INFO] ------------------------------------------------------------------------
  40. [INFO] BUILD SUCCESS
  41. [INFO] ------------------------------------------------------------------------
  42. [INFO] Total time: 10:30 min
  43. [INFO] Finished at: 2015-10-28T20:31:03+08:00
  44. [INFO] Final Memory: 16M/174M
  45. [INFO] ------------------------------------------------------------------------

新的Web项目命名为 “CounterWebApp”,以及一些标准的 web 目录结构也会自动创建。

2. 项目目录布局

查看生成的项目结构布局:

  1. .|____CounterWebApp
  2. ||____pom.xml
  3. ||____src
  4. |||____main
  5. ||||____resources
  6. ||||____webapp
  7. |||||____index.jsp
  8. |||||____WEB-INF
  9. ||||||____web.xml

Maven 产生了一些文件夹,一个部署描述符 web.xml,pom.xml 和 index.jsp。

注意,
请查看官方Maven标准目录布局指南来了解更多。

pom.xml

  1. <project xmlns="http://maven.apache.org/POM/4.0.0"
  2. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  3. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
  4. http://maven.apache.org/maven-v4_0_0.xsd">
  5. <modelVersion>4.0.0</modelVersion>
  6. <groupId>com.yiibai</groupId>
  7. <artifactId>CounterWebApp</artifactId>
  8. <packaging>war</packaging>
  9. <version>1.0-SNAPSHOT</version>
  10. <name>CounterWebApp Maven Webapp</name>
  11. <url>http://maven.apache.org</url>
  12. <dependencies>
  13. <dependency>
  14. <groupId>junit</groupId>
  15. <artifactId>junit</artifactId>
  16. <version>3.8.1</version>
  17. <scope>test</scope>
  18. </dependency>
  19. </dependencies>
  20. <build>
  21. <finalName>CounterWebApp</finalName>
  22. </build>
  23. </project>

web.xml – Servlet 2.3 已经比较旧, 建议升级到2.5

  1. <!DOCTYPE web-app PUBLIC
  2. "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
  3. "http://java.sun.com/dtd/web-app_2_3.dtd" ><web-app><display-name>Archetype Created Web Application</display-name></web-app>

index.jsp – 一个简单的 hello world html 页面文件

  1. <html>
  2. <body>
  3. <div><div class="ads-in-post hide_if_width_less_800">
  4. <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
  5. <!-- 728x90 - After2ndH4 -->
  6. <ins class="adsbygoogle hide_if_width_less_800"
  7. style="display:inline-block;width:728px;height:90px"
  8. data-ad-client="ca-pub-2836379775501347"
  9. data-ad-slot="3642936086"
  10. data-ad-region="mkyongregion"></ins>
  11. <script>
  12. (adsbygoogle = window.adsbygoogle || []).push({});
  13. </script>
  14. </div></div><h2>Hello World!</h2>
  15. </body>
  16. </html>

3. Eclipse IDE 支持

要导入这个项目到Eclipse中,需要生成一些 Eclipse 项目的配置文件:

3.1、在终端,进入到 “CounterWebApp” 文件夹中,键入以下命令:

  1. C:\worksp>cd CounterWebApp
  2. C:\worksp\CounterWebApp>mvn eclipse:eclipse -Dwtpversion=2.0
  3. [INFO] Scanning for projects...
  4. Downloading: https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven -war-plugin/2.2/maven-war-plugin-2.2.pom
  5. Downloaded: https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven- war-plugin/2.2/maven-war-plugin-2.2.pom (7 KB at 2.5 KB/sec)
  6. Downloading: https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven -war-plugin/2.2/maven-war-plugin-2.2.jar
  7. Downloaded: https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven- war-plugin/2.2/maven-war-plugin-2.2.jar (77 KB at 26.2 KB/sec)
  8. [INFO]
  9. [INFO] ------------------------------------------------------------------------
  10. [INFO] Building CounterWebApp Maven Webapp 1.0-SNAPSHOT
  11. [INFO] ------------------------------------------------------------------------
  12. [INFO]
  13. [INFO] >>> maven-eclipse-plugin:2.10:eclipse (default-cli) > generate-resources
  14. @ CounterWebApp >>>
  15. [INFO]
  16. [INFO] <<< maven-eclipse-plugin:2.10:eclipse (default-cli) < generate-resources
  17. @ CounterWebApp <<<
  18. [INFO]
  19. [INFO] --- maven-eclipse-plugin:2.10:eclipse (default-cli) @ CounterWebApp ---
  20. [INFO] Adding support for WTP version 2.0.
  21. [INFO] Using Eclipse Workspace: null
  22. [INFO] Adding default classpath container: org.eclipse.jdt.launching.JRE_CONTAINER
  23. [INFO] Not writing settings - defaults suffice
  24. [INFO] Wrote Eclipse project for "CounterWebApp" to C:\worksp\CounterWebApp.
  25. [INFO]
  26. [INFO] ------------------------------------------------------------------------
  27. [INFO] BUILD SUCCESS
  28. [INFO] ------------------------------------------------------------------------
  29. [INFO] Total time: 7.982 s
  30. [INFO] Finished at: 2015-10-28T20:24:57+08:00
  31. [INFO] Final Memory: 15M/146M
  32. [INFO] ------------------------------------------------------------------------
注意,此选项 -Dwtpversion=2.0 告诉 Maven 将项目转换到 Eclipse 的 Web 项目(WAR),而不是默认的Java项目(JAR)。为方便起见,以后我们会告诉你如何配置 pom.xml 中的这个 WTP 选项。

3.2 导入到 Eclipse IDE – File -> Import… -> General -> Existing Projects into workspace.

图像说明: 在 Eclipse 中,如果看到项目顶部有地球图标,意味着这是一个 Web 项目。

4. 更新POM

在Maven中,Web项目的设置都通过这个单一的pom.xml文件配置。

  1. 添加项目依赖 - Spring, logback 和 JUnit
  2. 添加插件来配置项目

阅读注释清楚明了。

pom.xml
  1. <project xmlns="http://maven.apache.org/POM/4.0.0" 
  2.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  3. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0  http://maven.apache.org/maven-v4_0_0.xsd">
  4. <modelVersion>4.0.0</modelVersion>
  5. <groupId>com.yiibai</groupId>
  6. <artifactId>CounterWebApp</artifactId>
  7. <packaging>war</packaging>
  8. <version>1.0-SNAPSHOT</version>
  9. <name>CounterWebApp Maven Webapp</name>
  10. <url>http://maven.apache.org</url> <properties>
  11. <jdk.version>1.7</jdk.version>
  12. <spring.version>4.1.1.RELEASE</spring.version>
  13. <jstl.version>1.2</jstl.version>
  14. <junit.version>4.11</junit.version>
  15. <logback.version>1.0.13</logback.version>
  16. <jcl-over-slf4j.version>1.7.5</jcl-over-slf4j.version>
  17. </properties>
  18.  
  19. <dependencies>
  20. <!-- Unit Test -->
  21. <dependency>
  22. <groupId>junit</groupId>
  23. <artifactId>junit</artifactId>
  24. <version>${junit.version}</version>
  25. </dependency>
  26.  
  27. <!-- Spring Core -->
  28. <dependency>
  29. <groupId>org.springframework</groupId>
  30. <artifactId>spring-core</artifactId>
  31. <version>${spring.version}</version>
  32. <exclusions>
  33. <exclusion>
  34. <groupId>commons-logging</groupId>
  35. <artifactId>commons-logging</artifactId>
  36. </exclusion>
  37. </exclusions>
  38. </dependency>
  39.  
  40. <dependency>
  41. <groupId>org.slf4j</groupId>
  42. <artifactId>jcl-over-slf4j</artifactId>
  43. <version>${jcl-over-slf4j.version}</version>
  44. </dependency>
  45. <dependency>
  46. <groupId>ch.qos.logback</groupId>
  47. <artifactId>logback-classic</artifactId>
  48. <version>${logback.version}</version>
  49. </dependency>
  50.  
  51. <dependency>
  52. <groupId>org.springframework</groupId>
  53. <artifactId>spring-web</artifactId>
  54. <version>${spring.version}</version>
  55. </dependency>
  56.  
  57. <dependency>
  58. <groupId>org.springframework</groupId>
  59. <artifactId>spring-webmvc</artifactId>
  60. <version>${spring.version}</version>
  61. </dependency>
  62. <!-- jstl -->
  63. <dependency>
  64. <groupId>jstl</groupId>
  65. <artifactId>jstl</artifactId>
  66. <version>${jstl.version}</version>
  67. </dependency>
  68. </dependencies>
  69.  
  70. <build>
  71. <finalName>CounterWebApp</finalName>
  72.  
  73. <plugins>
  74.     <!-- Eclipse project -->
  75.   <plugin>
  76. <groupId>org.apache.maven.plugins</groupId>
  77. <artifactId>maven-eclipse-plugin</artifactId>
  78. <version>2.9</version>
  79. <configuration>
  80.         <!-- Always download and attach dependencies source code -->
  81. <downloadSources>true</downloadSources>
  82. <downloadJavadocs>false</downloadJavadocs>
  83. <!-- Avoid type mvn eclipse:eclipse -Dwtpversion=2.0 -->
  84. <wtpversion>2.0</wtpversion>
  85. </configuration>
  86.   </plugin>
  87.  
  88.   <!-- Set JDK Compiler Level -->
  89.   <plugin>
  90. <groupId>org.apache.maven.plugins</groupId>
  91. <artifactId>maven-compiler-plugin</artifactId>
  92. <version>2.3.2</version>
  93. <configuration>
  94. <source>${jdk.version}</source>
  95. <target>${jdk.version}</target>
  96. </configuration>
  97.   </plugin>
  98.  
  99.   <!-- For Maven Tomcat Plugin -->
  100.   <plugin>
  101. <groupId>org.apache.tomcat.maven</groupId>
  102. <artifactId>tomcat7-maven-plugin</artifactId>
  103. <version>2.2</version>
  104. <configuration>
  105. <path>/CounterWebApp</path>
  106. </configuration>
  107.   </plugin>
  108. </plugins>
  109. </build>
  110. </project>

注意,为方便起见,声明 maven-eclipse-plugin,并配置wtpversion 来避免输入参数 -Dwtpversion=2.0。现在,每次使用 mvn eclipse:eclipse,Maven将这个项目导入转换为 Eclipse Web 项目。

  1. #之前
  2. mvn eclipse:eclipse --> Eclipse Java project (JAR)
  3. mvn eclipse:eclipse -Dwtpversion=2.0 --> Eclipse Java web project (WAR)
  4.  
  5. #之后
  6. mvn eclipse:eclipse --> Eclipse Java web project (WAR)

5. 更新源代码

在这一步中,在上一步配置完pom.xml后,重新执行 mvn eclipse:eclipse 这个命令,我们将创建Spring MVC的一些文件和logback日志框架的文件夹,最终的项目结构如下所示:

  1. .
  2. |____pom.xml
  3. |____src
  4. | |____main
  5. | | |____java
  6. | | | |____com
  7. | | | | |____yiibai
  8. | | | | | |____controller
  9. | | | | | | |____BaseController.java
  10. | | |____resources
  11. | | | |____logback.xml
  12. | | |____webapp
  13. | | | |____WEB-INF
  14. | | | | |____mvc-dispatcher-servlet.xml
  15. | | | | |____pages
  16. | | | | | |____index.jsp
  17. | | | | |____web.xml
注意,如果它不存在,需要手动创建文件夹。

5.1 创建 Spring MVC 的控制器类。

/src/main/java/com/yiibai/controller/BaseController.java

  1. package com.yiibai.controller;
  2.  
  3. import org.slf4j.LoggerFactory;
  4. import org.springframework.stereotype.Controller;
  5. import org.springframework.ui.ModelMap;
  6. import org.springframework.web.bind.annotation.PathVariable;
  7. import org.springframework.web.bind.annotation.RequestMapping;
  8. import org.springframework.web.bind.annotation.RequestMethod;
  9.  
  10. @Controller
  11. public class BaseController {
  12.  
  13. private static int counter = 0;
  14. private static final String VIEW_INDEX = "index";
  15. private final static org.slf4j.Logger logger = LoggerFactory.getLogger(BaseController.class);
  16.  
  17. @RequestMapping(value = "/", method = RequestMethod.GET)
  18. public String welcome(ModelMap model) {
  19.  
  20. model.addAttribute("message", "Welcome");
  21. model.addAttribute("counter", ++counter);
  22. logger.debug("[welcome] counter : {}", counter);
  23.  
  24. // Spring uses InternalResourceViewResolver and return back index.jsp
  25. return VIEW_INDEX;
  26.  
  27. }
  28.  
  29. @RequestMapping(value = "/{name}", method = RequestMethod.GET)
  30. public String welcomeName(@PathVariable String name, ModelMap model) {
  31.  
  32. model.addAttribute("message", "Welcome " + name);
  33. model.addAttribute("counter", ++counter);
  34. logger.debug("[welcomeName] counter : {}", counter);
  35. return VIEW_INDEX;
  36.  
  37. }
  38.  
  39. }

5.2 创建Spring配置文件。

/src/main/webapp/WEB-INF/mvc-dispatcher-servlet.xml
  1. <beans xmlns="http://www.springframework.org/schema/beans"
  2. xmlns:context="http://www.springframework.org/schema/context"
  3. 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.xsd         http://www.springframework.org/schema/context 
  7.         http://www.springframework.org/schema/context/spring-context.xsd">
  8.  
  9. <context:component-scan base-package="com.yiibai.controller" />
  10. <bean
  11. class="org.springframework.web.servlet.view.InternalResourceViewResolver">
  12. <property name="prefix">
  13. <value>/WEB-INF/pages/</value>
  14. </property>
  15. <property name="suffix">
  16. <value>.jsp</value>
  17. </property>
  18. </bean>
  19.  
  20. </beans>

5.3 更新让现有的 web.xml 支持 Servlet 2.5(默认的Servlet2.3 太旧了), 并且还通过 Spring 监听器 ContextLoaderListener 集成了Spring框架。

/src/main/webapp/WEB-INF/web.xml
  1. <web-app xmlns="http://java.sun.com/xml/ns/javaee" 
  2.         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  3. xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
  4.       http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
  5. version="2.5">
  6.  
  7. <display-name>Counter Web Application</display-name>
  8.  
  9. <servlet>
  10. <servlet-name>mvc-dispatcher</servlet-name>
  11. <servlet-class>
  12.                         org.springframework.web.servlet.DispatcherServlet
  13.                 </servlet-class>
  14. <load-on-startup>1</load-on-startup>
  15. </servlet>
  16.  
  17. <servlet-mapping>
  18. <servlet-name>mvc-dispatcher</servlet-name>
  19. <url-pattern>/</url-pattern>
  20. </servlet-mapping>
  21.  
  22. <context-param>
  23. <param-name>contextConfigLocation</param-name>
  24. <param-value>/WEB-INF/mvc-dispatcher-servlet.xml</param-value>
  25. </context-param>
  26.  
  27. <listener>
  28. <listener-class>
  29.                    org.springframework.web.context.ContextLoaderListener
  30.                 </listener-class>
  31. </listener>
  32. </web-app>

5.4 移动文件 index.jsp 到 WEB-INF/pages 目录下, 为了保护直接访问。并更新内容:

/src/main/webapp/WEB-INF/pages/index.jsp

5.5 在资源文件夹(resources)中创建 logback.xml 文件

/src/main/resources/logback.xml
  1. <?xml version="1.0" encoding="UTF-8"?>

6. Eclipse + Tomcat

在第5步中创建所有文件以后,这里有一些方法可以用来部署和测试Web项目,我们这里推荐使用6.2中的方法。

6.1 要编译,测试和项目打包成一个WAR文件,输入:

  1. mvn package

一个新的 WAR 文件将在 project/target/CounterWebApp.war产生,只需复制并部署到Tomcat 发布的目录。

6.2 如果想通过 Eclipse 服务器这个项目插件(Tomcat 或其它容器)调试,这里再输入:

  1. mvn eclipse:eclipse

如果一切顺利,该项目的依赖将被装配附加到 Web部署项目。图片: 右键点击 project -> Properties -> Deployment Assembly

6.3 Maven 的 Tomcat 插件声明(加入到 pom.xml):

pom.xml
  1. <!-- For Maven Tomcat Plugin -->

键入以下命令(有时网络不通畅需要执行2-3次):

  1. mvn tomcat:run
  2. tp://logback.qos.ch/codes.html#layoutInsteadOfEncoder for details
  3. 20:37:32,089 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Se
  4. g level of logger [com.yiibai.controller] to DEBUG
  5. 20:37:32,089 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Se
  6. g additivity of logger [com.yiibai.controller] to false
  7. 20:37:32,090 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction -
  8. ching appender named [STDOUT] to Logger[com.yiibai.controller]
  9. 20:37:32,090 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction
  10. tting level of ROOT logger to ERROR
  11. 20:37:32,090 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction -
  12. ching appender named [STDOUT] to Logger[ROOT]
  13. 20:37:32,090 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationActi
  14.  End of configuration.
  15. 20:37:32,091 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@3bead5  Registering current configuration as safe fallback point
  16.  
  17. 十月 28, 2015 20:37:32 下午 org.apache.catalina.core.ApplicationContext log
  18. 信息: Initializing Spring root WebApplicationContext
  19. 十月 28, 2015 20:37:33 下午 org.apache.catalina.core.ApplicationContext log
  20. 信息: Initializing Spring FrameworkServlet 'mvc-dispatcher'
  21. 十月 28, 2015 20:37:33 下午 org.apache.coyote.http11.Http11Protocol init
  22. 信息: Initializing Coyote HTTP/1.1 on http-8080
  23. 十月 28, 2015 20:37:33 下午 org.apache.coyote.http11.Http11Protocol start
  24. 信息: Starting Coyote HTTP/1.1 on http-8080

这将启动Tomcat,部署项目默认在端口8080。

出错:Maven项目下update maven后Eclipse报错:java.lang.ClassNotFoundException: ContextLoaderL

解决方案:

1.右键点击项目--选择Properties

选择Deployment Assembly,在右边点击Add按钮,在弹出的窗口中选择Java Build Path Entries

2.点击Next,选择Maven Dependencies

3.点击Finish,然后可以看到已经把Maven Dependencies添加到Web应用结构中了

操作完后,重新部署工程,不再报错了。然后我们再到.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\目录下,发现工程WEB-INF目录下自动生成了lib目录,并且所有的依赖jar包也都已经部署进来。问题因此解决。

 

标签:Maven    创建    Web应用程序    项目

本站文章除注明转载外,均为本站原创或编译
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创优秀实例教程
转载请注明:文章转载自::http://www.yiibai.com/maven/create-a-web-application-project-with-maven.html

maven 学习---使用Maven创建Web应用程序项目的更多相关文章

  1. Maven学习(十一)-----使用Maven创建Web应用程序项目

    使用Maven创建Web应用程序项目 用到的技术/工具: Maven 3.3.3 Eclipse 4.3 JDK 8 Spring 4.1.1.RELEASED Tomcat 7 Logback 1. ...

  2. 在 Visual Studio 2013 中创建 ASP.NET Web 项目(1):概述 - 创建 Web 应用程序项目

    注:本文是“在 Visual Studio 2013 中创建 ASP.NET Web 项目”专题的一部分,详情参见 专题导航 . 预备知识 本专题适用于 Visual Studio 2013 及以上版 ...

  3. 使用Maven创建Web应用程序项目

    用到的技术/工具: Maven 3.3.3 Eclipse 4.3 JDK 8 Spring 4.1.1.RELEASED Tomcat 7 Logback 1.0.13 1. 从Maven模板创建W ...

  4. Web 应用程序项目与 Visual Studio 中的网站项目的异同

    要查看英语原文,请勾选“英语”复选框.也可将鼠标指针移到文本上,在弹出窗口中显示英语原文. 翻译 英语 本文档已存档,并且将不进行维护. Web 应用程序项目与 Visual Studio 中的网站项 ...

  5. ASP.NET MVC Web API 学习笔记---第一个Web API程序

    http://www.cnblogs.com/qingyuan/archive/2012/10/12/2720824.html GetListAll /api/Contact GetListBySex ...

  6. Spring实战第五章学习笔记————构建Spring Web应用程序

    Spring实战第五章学习笔记----构建Spring Web应用程序 Spring MVC基于模型-视图-控制器(Model-View-Controller)模式实现,它能够构建像Spring框架那 ...

  7. SharePoint 2013 创建web应用程序报错"This page can’t be displayed"

    错误描述 This page can’t be displayed •Make sure the web address http://centeradmin is correct. •Look fo ...

  8. [SharePoint 2013 入门教程 2 ] 创建WEB应用程序,网站集,网站

    SharePoint 2013 的 Hello World 由大到小  创建WEB应用程序(老母),网站集(儿子),网站(孙子) 直接确定,其余都默认 填入标题,选好模板.网站集 儿子就有了. 点击页 ...

  9. SharePoint 2013 创建web应用程序报错&quot;This page can’t be displayed&quot;

    错误描写叙述 This page can't be displayed •Make sure the web address http://centeradmin is correct. •Look ...

随机推荐

  1. MySQL数据库(一)索引

    索引的作用是操作数据库时避免全表扫描. 索引的机制 B Tree与B+Tree索引 B(blance) 树可以看作是对2-3查找树的一种扩展,即他允许每个节点有M-1个子节点. 根节点至少有两个子节点 ...

  2. Lustre 文件系统安装

    制作一个本地镜像 reposync configfile: [root@localhost html]# cat lustre-repo.conf [lustre-server] name=lustr ...

  3. stl源码学习(版本2.91)--list

    stl源码学习(版本2.91)--list 一,阅读list()构造函数的收获 1,默认构造函数的作用和被调用的时机 struct no{ no(int i){} //no(){ // std::co ...

  4. [视频教程] 使用docker的方式安装redis

    直接使用docker拉取redis的镜像,并且进行端口映射与文件目录共享,这样可以直接在宿主机的端口上就可以进行访问了.其实本质上也是在一个简化版的ubuntu的容器内安装好的redis-server ...

  5. Android刷机

    1.安装第三方recovery 下载自己手机适配的recovery包 https://twrp.me/lg/lgnexus5.html fastboot 卡在 waiting for device $ ...

  6. MQTT linux centOS7 部署

    系统版本centos7 X64 1.设置保存安装包路径 # cd /usr/local/src 2.开始下载源包 官网资源: https://mosquitto.org/files/source/ # ...

  7. 开始认识java

    1.java发展历史                              1991年   詹姆斯·高斯林 (James Gosling)  SUN公司Green项目(消费类电子产品) Oak  ...

  8. 01-day-vuex的使用

    知识点1===>简单的使用vuex 进行state取值 使用yarn下载 yarn add vuex -D vuex的包叫做 store 跟pages同级 创建store文件夹,文件夹下有sto ...

  9. 1. Git初始

    一.Git初始 1. 定义 ​ 分布式的版本控制系统,在每个使用者电脑上就有一个完整的数据仓库,没有网络依然可以使用Git.当然为了习惯及团队协作,会将本地数据同步到Git服务器或者GitHub等代码 ...

  10. 2018年蓝桥杯A组C/C++决赛题目

    2018年蓝桥杯A组C/C++决赛题目 2018年蓝桥杯A组C/C++决赛题解     1:三角形面积 已知三角形三个顶点在直角坐标系下的坐标分别为: (2.3, 2.5) (6.4, 3.1) (5 ...