方式一:使用ModelAndView
方式二:使用request。
方式三:使用ModelMap对象作为处理方法
方式四:使用session。
如何重定向?
基于注解的mvc应用
==========
目录
step1.导包
step2.配置文件
step3.配置DispatcherServlet
step4.写Controller
. 不用实现Controller接口。
. 可以添加多个处理方法。
. 处理方法写起来更灵活:方法名不做要求,
返回值可以是ModelAndView,可以是String,也
可以void。
. 使用到的注解:
@Controller: 要加在类前面。
@RequestMapping:可以加到类前面,也可以
添加到处理方法前面。用来设置请求路径与
处理方法的对应关系。
step5.写jsp
step6.修改配置文件
读取请求参数值
方式一:通过request。
方式二:处理方法的入参与请求参数名一致。
注:如果不一致,可以使用 @RequestParam(请求参数名)。
方式三:封装成javabean。
step1. 先写一个java类,该类要添加
与请求参数名一致的属性,并且为这些
属性添加相应的get/set方法。
step2. 将这个类作为处理方法的入参。
向页面传值
方式一:使用ModelAndView
step1. 将处理结果放到Map对象里面。
step2. 将Map对象添加到ModelAndView对象
里面。
step3. 将ModelAndView作为处理方法的返回值。
方式二:使用request。
方式三:使用ModelMap对象作为处理方法的入参。
方式四:使用session。
如何重定向?
. 默认情况下,springmvc会使用转发机制。
. 如果要重定向,要看处理方法的返回值
的类型。
情形一:返回值是String。
return “redirect:index.do”;
情形二: 返回值是ModelAndView。
step1. RedirectView rv =
new RedirectView(“index.do”);
step2. return new ModelAndView(rv);
generated by haroopad
案例演示:
工程案例目录结构
spring环境搭建必备jar:
也可以采用Maven的jar管理工具添加依赖,在pom.xml中添加springmvc相关jar即可
pom.xml
4.0.0
com.study
springcase-day04
0.0.1-SNAPSHOT
war
org.springframework
spring-webmvc
3.2.8.RELEASE
web.xml
<?xml version="1.0" encoding="UTF-8"?>springcase-day04
index.html
index.htm
index.jsp
default.html
default.htm
default.jsp
springmvc
org.springframework.web.servlet.DispatcherServlet
contextConfigLocation
classpath:app.xml
1
springmvc
*.do
app.xml
<?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:jdbc=“http://www.springframework.org/schema/jdbc”
xmlns:jee=“http://www.springframework.org/schema/jee”
xmlns:tx=“http://www.springframework.org/schema/tx”
xmlns:aop=“http://www.springframework.org/schema/aop”
xmlns:mvc=“http://www.springframework.org/schema/mvc”
xmlns:util=“http://www.springframework.org/schema/util”
xmlns:jpa=“http://www.springframework.org/schema/data/jpa”
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd
http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.2.xsd
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.2.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd
http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa-1.3.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.2.xsd">
<context:component-scan base-package=“controller”/>
mvc:annotation-driven/
HelloController.java
package controller;
import java.io.UnsupportedEncodingException;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Java)
完结
Redis基于内存,常用作于缓存的一种技术,并且Redis存储的方式是以key-value的形式。Redis是如今互联网技术架构中,使用最广泛的缓存,在工作中常常会使用到。Redis也是中高级后端工程师技术面试中,面试官最喜欢问的问题之一,因此作为Java开发者,Redis是我们必须要掌握的。
Redis 是 NoSQL 数据库领域的佼佼者,如果你需要了解 Redis 是如何实现高并发、海量数据存储的,那么这份腾讯专家手敲《Redis源码日志笔记》将会是你的最佳选择。
一个人可以走的很快,但一群人才能走的更远。如果你从事以下工作或对以下感兴趣,欢迎戳这里加入程序员的圈子,让我们一起学习成长!
AI人工智能、Android移动开发、AIGC大模型、C C#、Go语言、Java、Linux运维、云计算、MySQL、PMP、网络安全、Python爬虫、UE5、UI设计、Unity3D、Web前端开发、产品经理、车载开发、大数据、鸿蒙、计算机网络、嵌入式物联网、软件测试、数据结构与算法、音视频开发、Flutter、IOS开发、PHP开发、.NET、安卓逆向、云计算
如果你需要了解 Redis 是如何实现高并发、海量数据存储的,那么这份腾讯专家手敲《Redis源码日志笔记》将会是你的最佳选择。
[外链图片转存中…(img-PlKljrvj-1712429111679)]
一个人可以走的很快,但一群人才能走的更远。如果你从事以下工作或对以下感兴趣,欢迎戳这里加入程序员的圈子,让我们一起学习成长!
AI人工智能、Android移动开发、AIGC大模型、C C#、Go语言、Java、Linux运维、云计算、MySQL、PMP、网络安全、Python爬虫、UE5、UI设计、Unity3D、Web前端开发、产品经理、车载开发、大数据、鸿蒙、计算机网络、嵌入式物联网、软件测试、数据结构与算法、音视频开发、Flutter、IOS开发、PHP开发、.NET、安卓逆向、云计算