Spring MVC的搭建及入门

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门,即可获取!
http://www.springframework.org/schema/beans/spring-beans.xsd">

(5)编写操作业务Controller

(需要返回一个ModelAndView,装数据,封视图)

package com.yixin.controller;

import org.springframework.web.servlet.ModelAndView;

import org.springframework.web.servlet.mvc.Controller;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

public class BlogController implements Controller {

public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {

//ModelAndView 模型和视图

ModelAndView mv = new ModelAndView();

//封装对象,放在ModelAndView中。Model

mv.addObject(“msg”,“HelloSpringMVC!”);

//封装要跳转的视图,放在ModelAndView中

mv.setViewName(“hello”); //: /WEB-INF/jsp/hello.jsp

return mv;

}

}

(6)将自己的类交给SpringIOC容器,注册bean

在springmvc-servlet.xml文件配置:

(7)编写jsp页面,显示ModelandView存放的数据

<%@ page contentType=“text/html;charset=UTF-8” language=“java” %>

Title

${msg}

到现在就已经配置好了,大家看下我的目录:

(8)配置tomcat

注意1:记得添加部署。

注意2:确定该项目有导入依赖,进入project structure进行查看有没有相关依赖,如果没有的话,在WEB-INF目录下建立lib目录,进将相关依赖导入。

(9)启动项目

url+/blog

看到这里就说明成功了!!!

然而我们在开发当中是用注解进行开发的,以上这么配置是为了能够更加了解SpringMVC的工作流程,接下来我们来进行注解开发讲解。

2.注解开发

======

(1)新建一个Moudle,添加web支持。

(2)由于Maven可能存在资源过滤的问题,将配置完善

pom.xml:

src/main/java

**/*.properties

**/*.xml

false

src/main/resources

**/*.properties

**/*.xml

false

(3)导入相关依赖

junit

junit

4.12

org.springframework

spring-webmvc

5.1.9.RELEASE

javax.servlet

servlet-api

2.5

javax.servlet.jsp

jsp-api

2.2

javax.servlet

jstl

1.2

(4)配置web.xml

<?xml version="1.0" encoding="UTF-8"?>

<web-app xmlns=“http://xmlns.jcp.org/xml/ns/javaee”

xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”

xsi:schemaLocation=“http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd”

version=“4.0”>

SpringMVC

org.springframework.web.servlet.DispatcherServlet

contextConfigLocation

classpath:springmvc-servlet.xml

1

SpringMVC

/

(5)添加Spring MVC配置文件

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns=“http://www.springframework.org/schema/beans”

xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”

xmlns:context=“http://www.springframework.org/schema/context”

xmlns:mvc=“http://www.springframework.org/schema/mvc”

xsi:schemaLocation="http://www.springframework.org/schema/beans

http://www.springframework.org/schema/beans/spring-beans.xsd

http://www.springframework.org/schema/context

https://www.springframework.org/schema/context/spring-context.xsd

http://www.springframework.org/schema/mvc

https://www.springframework.org/schema/mvc/spring-mvc.xsd">

<context:component-scan base-package=“com.yixin.controller”/>

<mvc:default-servlet-handler />

<mvc:annotation-driven />

<bean class=“org.springframework.web.servlet.view.InternalResourceViewResolver”

id=“internalResourceViewResolver”>

(6)创建Controller

package com.yixin.controller;

import org.springframework.stereotype.Controller;

import org.springframework.ui.Model;

import org.springframework.web.bind.annotation.RequestMapping;

@Controller

@RequestMapping(“/MyController”)

public class BlogController {

@RequestMapping(“/blog”)

public String hello(Model model){

model.addAttribute(“msg”,“Hello,SpringMVCAnnotation!”);

return “hello”;

}

}

分析

  • @Controller是为了让Spring IOC容器初始化时自动扫描到;

  • @RequestMapping是为了映射请求路径,这里因为类与方法上都有映射所以访问时应该是/MyController/blog;

  • 方法中声明Model类型的参数是为了把Action中的数据带到视图中;

  • 方法返回的结果是视图的名称hello,加上配置文件中的前后缀变成WEB-INF/jsp/hello.jsp(视图解析器的功能)。

(7)创建视图层

在WEB-INF/ jsp目录中创建hello.jsp

<%@ page contentType=“text/html;charset=UTF-8” language=“java” %>

Title

${msg}

(8)配置Tomcat运行


结语

总结

三个工作日收到了offer,头条面试体验还是很棒的,这次的头条面试好像每面技术都问了我算法,然后就是中间件、MySQL、Redis、Kafka、网络等等。

  • 第一个是算法

关于算法,我觉得最好的是刷题,作死的刷的,多做多练习,加上自己的理解,还是比较容易拿下的。

而且,我貌似是将《算法刷题LeetCode中文版》、《算法的乐趣》大概都过了一遍,尤其是这本

《算法刷题LeetCode中文版》总共有15个章节:编程技巧、线性表、字符串、栈和队列、树、排序、查找、暴力枚举法、广度优先搜索、深度优先搜索、分治法、贪心法、动态规划、图、细节实现题

最新出炉,头条三面技术四面HR,看我如何一步一步攻克面试官?

《算法的乐趣》共有23个章节:

最新出炉,头条三面技术四面HR,看我如何一步一步攻克面试官?

最新出炉,头条三面技术四面HR,看我如何一步一步攻克面试官?

  • 第二个是Redis、MySQL、kafka(给大家看下我都有哪些复习笔记)

基本上都是面试真题解析、笔记和学习大纲图,感觉复习也就需要这些吧(个人意见)

最新出炉,头条三面技术四面HR,看我如何一步一步攻克面试官?

  • 第三个是网络(给大家看一本我之前得到的《JAVA核心知识整理》包括30个章节分类,这本283页的JAVA核心知识整理还是很不错的,一次性总结了30个分享的大知识点)

最新出炉,头条三面技术四面HR,看我如何一步一步攻克面试官?

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门,即可获取!
尤其是这本**

《算法刷题LeetCode中文版》总共有15个章节:编程技巧、线性表、字符串、栈和队列、树、排序、查找、暴力枚举法、广度优先搜索、深度优先搜索、分治法、贪心法、动态规划、图、细节实现题

[外链图片转存中…(img-NeyG71CB-1714752011140)]

《算法的乐趣》共有23个章节:

[外链图片转存中…(img-ixY6578M-1714752011141)]

[外链图片转存中…(img-7AnZM3iX-1714752011141)]

  • 第二个是Redis、MySQL、kafka(给大家看下我都有哪些复习笔记)

基本上都是面试真题解析、笔记和学习大纲图,感觉复习也就需要这些吧(个人意见)

[外链图片转存中…(img-lVXv2CgB-1714752011141)]

  • 第三个是网络(给大家看一本我之前得到的《JAVA核心知识整理》包括30个章节分类,这本283页的JAVA核心知识整理还是很不错的,一次性总结了30个分享的大知识点)

[外链图片转存中…(img-bCbZpJx8-1714752011141)]

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门,即可获取!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值