java spring mvc 初探 web搭建过程详解

提前准备安装tomcat

设备:mac

第一步:下载

进入官网下载压缩包

注意:如果jdk版本是1.8,则tomcat需要v8才行,否则会报错

https://tomcat.apache.org/

第二步:解压

解压后路径

/Users/you/Library/tomcat/apache-tomcat-8.5.73

进入此目录 修改配置 code setclasspath.sh

sh 复制代码
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_251.jdk/Contents/Home
export JRE_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_251.jdk/Contents/Home

添加环境变量

第三步: 启动服务

cd /Users/you/Library/tomcat/apache-tomcat-8.5.73/bin

sh startup.sh

查看效果 http://localhost:8080/

打开页面看到那只猫表示启动成功

停止服务 方式

sh shutdown.sh

demo: spring mvc

目标

  • 创建工程,mvc架构
  • 自定义controller和view(jsp)
java 复制代码
// 提前准备安装tomcat 
// tomcat安装后路径:/Users/you/Library/tomcat/apache-tomcat-8.5.73
// Library文件夹是隐藏的,如果需要从idea引入tomcat,还需要注意使用打开隐藏文件开关

// 1. 初始化工程
// 创建 spring mvc 工程
- create new project 
- 选择: 左侧spring  右侧 Spring MVC(5.2.3) +Download
- 填写: project name spring02-mvc
- Finished 

// 2. 工程目录
├── lib
│   ├── aopalliance-1.0.jar
│   ├── commons-logging-1.2.jar
│   ├── spring-aop-5.2.3.RELEASE.jar
│   ├── spring-aspects-5.2.3.RELEASE.jar
│   ├── spring-beans-5.2.3.RELEASE.jar
│   ├── spring-context-5.2.3.RELEASE.jar
│   ├── spring-context-support-5.2.3.RELEASE.jar
│   ├── spring-core-5.2.3.RELEASE.jar
│   ├── spring-expression-5.2.3.RELEASE.jar
│   ├── spring-instrument-5.2.3.RELEASE.jar
│   ├── spring-jdbc-5.2.3.RELEASE.jar
│   ├── spring-jms-5.2.3.RELEASE.jar
│   ├── spring-messaging-5.2.3.RELEASE.jar
│   ├── spring-orm-5.2.3.RELEASE.jar
│   ├── spring-oxm-5.2.3.RELEASE.jar
│   ├── spring-test-5.2.3.RELEASE.jar
│   ├── spring-tx-5.2.3.RELEASE.jar
│   ├── spring-web-5.2.3.RELEASE.jar
│   └── spring-webmvc-5.2.3.RELEASE.jar
├── spring02-mvc.iml
├── src
└── web
    ├── WEB-INF
    │   ├── applicationContext.xml
    │   ├── dispatcher-servlet.xml
    │   └── web.xml
    └── index.jsp
// 4.1 xml配置 web/WEB-INF/dispatcher-servlet.xml
//  JSP 根据配置存放jsp文件配置
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="
        http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context-3.0.xsd">
    // <!--支持注解,例如@Controller,对应src下controller的包名-->
    <context:component-scan base-package="com.ah" />
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        // <!-- 配置JSP页面的位置:比如controller中return "hi" 对应文件位置是 /web/template/hi.jsp -->
        <property name="prefix">
            <value>/template/</value>
        </property>
        <property name="suffix">
            <value>.jsp</value>
        </property>
    </bean>
</beans>
// 4.2 xml配置 web/WEB-INF/web.xml 重要! 否则controller新的路由会出现404 
// 修改 url-pattern 标签 
// 修改前: <url-pattern>*.form</url-pattern>
// 修改后: <url-pattern>/</url-pattern>

// 5. 新增controller 
// 新增包: src下 com.ah 
// 新增类: src/com.ah/HelloMVCController.java 
// 对应路由是: localhost:8080/hi 
package com.ah;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@Controller
public class HelloMVCController {
    @RequestMapping(value = "/hi", method = RequestMethod.GET)
    public String hi(ModelMap model) {
        System.out.println("===test hi===");
        model.addAttribute("msg", "hello spring mvc!");
        return "hi";
    }
}

// 6. 添加jsp 
spring02-mvc/web/index.jsp  // 工程默认创建的 
spring02-mvc/web/template/hi.jsp // 自定义,对应controller路由 hi 

// 7. idea部署服务器tomcat
- 准备本机tomcat安装目录: /Users/you/Library/tomcat/apache-tomcat-8.5.73
- idea -》Run -》Edit Configurations -》 点绿色的+号,选择 tomcat-->local -》出现弹窗 
弹窗配置server
- name: tomcat8 
- application server: 选择tomcat 的安装目录  /Users/you/Library/tomcat/apache-tomcat-8.5.73 
- URL: 改为 http://localhost:8080/  默认是 http://localhost:8080/spring02_mvc_war_exploded/
弹窗配置Deployment
- 点击 + 号 
- 选择: Artifact... 
- 选择完成后,中间区域出现 spring02-mvc:war exploded 
- Application context: / 默认是 /spring02_mvc_war_exploded


// 8. 核对idea配置
idea -》 File -》 Project Structure 弹窗 
左侧每个入口检查下配置 
图解: https://img-blog.csdnimg.cn/img_convert/1536246cd64491338955df2ea13bb262.jpeg
需要重点看 Artifacts: 保证 WEB-INF/lib 存在spring mvc 的依赖包 
- 最后侧的2个spring依赖包上右键: put into /WEB-IN/lib 
- 操作完成后,中间区域打开 WEB-INF 目录确认lib添加进来

// 9. 调试运行
- 方式1: Run-> Debug 'tomcat' 
- 方式2: 点击小虫虫

// 10. 最终效果
// http://localhost:8080/
// http://localhost:8080/hi

xml配置 web/WEB-INF/dispatcher-servlet.xml

JSP 根据配置存放jsp文件配置

idea部署服务器tomcat

核对idea配置

调试运行

最终效果

相关推荐
武子康25 分钟前
大数据-226 离线数仓 - Flume 优化配置 自定义拦截器 拦截原理 了 拦截器实现 Java
java·大数据·数据仓库·hive·hadoop·数据挖掘·flume
晨航2 小时前
Flink新版Source接口源码解析
java·大数据·flink
ccsd113 小时前
jmeter并发测试
java·jmeter
2401_857600955 小时前
电商系统开发:Spring Boot框架实战
java·spring boot·后端
WAXXD5 小时前
Java读取WPS excel.xlsx嵌入图片
java·excel·wps
yava_free6 小时前
详解一下JVM诊断方法和其工具的使用
java·开发语言
南宫生6 小时前
力扣-Hot100-二叉树其二【算法学习day.33】
java·数据结构·学习·算法·leetcode·动态规划
小吕学编程6 小时前
开发中SQL积累
java·数据库·sql
KevinAha7 小时前
Tomcat 8.5 源码导读
java·tomcat
她说人狗殊途7 小时前
设计模式学习
java·学习·设计模式