注:此篇有些细节没写出,此文主要写重要的环节和需要注意的地方,轻喷

新建项目

选择Gradle , 勾选java 和 web。之后就是设定项目路径和名称,这里就不啰嗦了。

build.gradle文件下导入所需要的包,刷新一下。

  1 group 'com.benjious.createTest'
2 version '1.0-SNAPSHOT'
3
4 apply plugin: 'java'
5 apply plugin: 'war'
6
7 sourceCompatibility = 1.8
8
9 repositories {
10 mavenCentral()
11 }
12
13 dependencies {
14 testCompile group: 'junit', name: 'junit', version: '4.11'
15 testCompile group: 'junit', name: 'junit', version: '4.12'
16
17
18 compile'org.springframework:spring-context:4.3.6.RELEASE'
19 compile'org.springframework:spring-webmvc:4.3.6.RELEASE'
20 compile'org.springframework:spring-test:4.3.6.RELEASE'
21 }
22

目录结构

设置项目结构

贴出各个类的代码

  1 public class MyWebInitializer extends AbstractAnnotationConfigDispatcherServletInitializer {
2
3 @Override
4 protected Class<?>[] getRootConfigClasses() {
5 return new Class[]{RootConfig.class};
6 }
7
8 @Override
9 protected Class<?>[] getServletConfigClasses() {
10 return new Class[]{WebConfig.class};
11 }
12
13 @Override
14 protected String[] getServletMappings() {
15 return new String[] { "/" };
16 }
17 }
18
  1 //exclude : 过滤掉
2 @Configuration
3 @ComponentScan(basePackages = {"createtest"},excludeFilters = {@ComponentScan.Filter(type = FilterType.ANNOTATION,value = EnableWebMvc.class)})
4 public class RootConfig {
5
6 }
7
  1 @Configuration
2 @EnableWebMvc
3 @ComponentScan("createtest.web")
4 public class WebConfig extends WebMvcConfigurerAdapter {
5
6
7 @Bean
8 public ViewResolver viewResolver() {
9 InternalResourceViewResolver resolver = new InternalResourceViewResolver();
10 resolver.setPrefix("/WEB-INF/view/");
11 resolver.setSuffix(".jsp");
12 return resolver;
13 }
14
15
16 @Override
17 public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {
18 configurer.enable();
19 }
20
21 }
  1 @Controller
2 public class HomeControl {
3
4 @RequestMapping("/home")
5 public String home() {
6 return "home";
7 }
8
9 }
  1 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
2 <html>
3 <head>
4 <title>Home</title>
5 </head>
6 <body>
7 <p>home界面</p>
8 </body>
9 </html>

配置Tomcat

首先配置好Tomcat ,下面是配置好的界面

运行项目, 访问  http://localhost:8080/home/

这里需要的是在配置 Tomcat 中,设置 Application Context ,例如 Application Context 为 “/home ” ,那么 该项目的服务器的根地址为 :

http://localhost:8080/home/ , 那么要显示 home.jsp 界面应该为: http://localhost:8080/home/home .

参考:

IDEA创建一个Spring MVC 框架Java Web项目,Gradle构建的更多相关文章

  1. 规范化创建一个vs2017 Mvc框架项目

    vs2107 + dapper + MiniUi 标准化分层封装使 3.1 规范化创建一个vs2017 Mvc框架项目 此时创建的项目勾选 添加单元测试. 添加一个类库,主要用于实体类操作,类库名称 ...

  2. 使用Maven创建一个Spring MVC Web 项目

    使用Maven创建java web 项目(Spring MVC)用到如下工具: 1.Maven 3.2 2.IntelliJ IDEA 13 3.JDK 1.7 4.Spring 4.1.1 rele ...

  3. IntelliJ IDEA 14.x 创建工作空间与多个Java Web项目

    以往的Eclipse.NetBeans等开发工具不同,IDEA的Project相当与Eclipse的Workspace,而Module相当于Project. 下边就给出Eclipse与IDEA的概念的 ...

  4. 快速创建一个 spring mvc 示例

    1. 创建一个 servlet 项目 参考 http://www.cnblogs.com/zno2/p/5908589.html 2. 引入 spring mvc 依赖 <dependency& ...

  5. 使用IDEA搭建一个Spring + AOP (权限管理 ) + Spring MVC + Mybatis的Web项目 (零配置文件)

    前言: 除了mybatis 不是零配置,有些还是有xml的配置文件在里面的. 注解是Spring的一个构建的一个重要手段,减少写配置文件,下面解释一下一些要用到的注解: @Configuration  ...

  6. 使用IDEA搭建一个 Spring + Spring MVC + Mybatis 的Web项目 ( 零配置文件 )

    前言: 除了mybatis 不是零配置,有些还是有xml的配置文件在里面的. 注解是Spring的一个构建的一个重要手段,减少写配置文件,下面解释一下一些要用到的注解: @Configuration  ...

  7. 使用go语言开发一个后端gin框架的web项目

    用liteide来开发go的后端项目,需要注意的是环境变量要配置正确了 主要是GOROOT, GOPATH, GOBIN, PATH这几个, GOPATH主要用来存放要安的包,主要使用go get 来 ...

  8. Spring MVC框架处理Web请求的基本流程

  9. 【Spring】创建一个Spring的入门程序

    3.创建一个Spring的入门程序 简单记录 - Java EE企业级应用开发教程(Spring+Spring MVC+MyBatis)- Spring的基本应用 Spring与Spring MVC的 ...

随机推荐

  1. day04.3-生成器

    1. 生成器可以理想为一种数据类型,这种数据类型自动实现了迭代器协议(其他数据类型需要调用自己内置的__iter__方法),所以生成器就是可迭代对象. 2. 生成器分类及在python中的表现形式 生 ...

  2. VIM 文档编辑

    VIM进入时默认是普通模式,普通模式下输入“:”,即可进入命令模式,若想进入插入模式,看1:无论什么模式,按Esc键返回普通模式 1. VIM 工作模式 2. VIM 光标操作 3. VIM编辑文档 ...

  3. Objective-C语法基础:面向对象编程特点的总结

    1.类的声明与实现 Objective-C类的声明要写在@interface 与 @end之间,实现要写在@implementation 与 @end之间 2.类的-方法和+方法 类的-方法即类的实例 ...

  4. js中的类和对象以及自定义对象

    js中的类 1.类的声明 function Person(name,age){ this.name=name; this.age=age; this.test=function(a){ alert(a ...

  5. Kettle导入数据到Hive 出现多余的几行全部是null值的情况

    Kylin构建Cube的时候老是报错,说是有空值,其实源数据中是不存在空值的.为什么建Cube的时候会有呢? 执行完毕后使用Hive查询发现多了好几行全部是null的行. 这在源数据中是不存在的.分析 ...

  6. ACM-素数专题(持续更新)

    埃拉托斯特尼筛法,或者叫埃氏筛法(听上去似乎很高大上的样子) #include<bits/stdc++.h> using namespace std; typedef long long ...

  7. 矩阵&&高斯消元

    矩阵运算: \(A\times B\)叫做\(A\)左乘\(B\),或者\(B\)右乘\(A\). 行列式性质: \(1.\)交换矩阵的两行(列),行列式取相反数. \(2.\)某一行元素都\(\ti ...

  8. ajax乱码的问题

    ajax 乱码情况与原因很多,本文只讲其中之一: 浏览器端正常的数据,用ajax提交到服务器上就乱码了. 当ajax的提交方式是get而不是post时,其所携带的数据不会被字符编码过滤器所拦截(事实上 ...

  9. php session的简单使用

    创建session: session_start(); $_SESSION['name'] = $value; 获取session: session_start(); echo $_SESSION[' ...

  10. Ubuntu 16.04安装IntelliJ出品的数据库管理工具DataGrip

    IntelliJ出品的东西有一个共同特定,就是代码提示做的非常好. DataGrip是除了MySQL Workbench之外的另一个选择. 一.下载 https://www.jetbrains.com ...