当前位置: 首页 > article >正文

搭建springmvc项目

什么是springmvc

MVC它是一种设计理念。把程序按照指定的结构来划分: Model模型 View视图 Controller控制层

springmvc框架是spring框架的一个分支。它是按照mvc架构思想设计的一款框架。

springmvc的主要作用: 接收浏览器的请求数据,对数据进行处理,然后返回页面进行显示.

1.创建maven的web工程,引入依赖        spring-webmvc

2.创建spring配置文件

        【1】包扫描

                <context:component-scan base-package="com.ghx"/>

        【2】开启注解驱动

                <mvc:annotation-driven/>

    【3】   <!-- 放行静态资源 -->

<mvc:default-servlet-handler/>

【4】视图解析器

 <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">

         <!-- 前缀-->

        <property name="prefix"    value="/views/"/>

       <!-- 后缀-->

           <property  name="suffix"    value=".jsp"/>

 </bean>

3.注册公共servlet    DispatcherServlet

<servlet>
    <servlet-name>springmvc01</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:springmvc01.xml</param-value>
    </init-param>
</servlet>
    <servlet-mapping>
        <servlet-name>springmvc01</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

4.编写controller类

@Controller
public class HelloController {
    @RequestMapping("/index")
    public String index(){
        System.out.println("你好");
        return "/hello";
    }
}

5.接受页面传来的大量参数,日期格式

使用实体类,实体类的属性要和参数的名字一致

日期格式需使用注解

@DateTimeFormat(pattern = "yyyy-MM-dd")

6.解决乱码 

使用过滤器

@WebFilter(urlPatterns = "/*")
public class EncodingFilter implements Filter {
    @Override
    public void init(FilterConfig filterConfig) throws ServletException {

    }

    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
        servletRequest.setCharacterEncoding("utf-8");
        servletResponse.setCharacterEncoding("utf-8");
        filterChain.doFilter(servletRequest,servletResponse);
    }

    @Override
    public void destroy() {

    }
}


http://www.kler.cn/a/441840.html

相关文章:

  • BottomNavigationBar组件的用法
  • Linux下MySQL的简单使用
  • 【KOA框架】koa框架基础及swagger接口文档搭建
  • SSE 实践:用 Vue 和 Spring Boot 实现实时数据传输
  • 数据库管理-第285期 Oracle 23ai:深入浅出向量索引(20250117)
  • vue+高德API搭建前端3D交通页面
  • Spire.PDF for .NET【页面设置】演示:向 PDF 文档添加页码
  • Unity3D实现抽象类的应用场景例子
  • SQL中的数据类型
  • 使用Node.js搭配express框架快速构建后端业务接口模块Demo
  • Rust中<‘_>是什么意思
  • 牛客周赛 Round 72 题解
  • 深入探索Vue.js中的v-html指令:HTML内容绑定与安全渲染的核心机制
  • L2tp环境搭建笔记- L2TP及PPP配置拔号实践
  • 线程安全与线程不安全
  • 【Python项目】基于Django的语音和背景音乐分离系统
  • Scala的隐式对象,隐式类
  • 使用Vscode+EIDE+Jlink开发STM32环境配置教程
  • 腾讯云全方位安全防护!
  • MySQL的并发控制与MVCC机制深度解析
  • 华为WLAN基础配置(AC6005模拟配置)
  • 【贪心算法】贪心算法六
  • Edge Scdn用起来怎么样?
  • DIDCTF流量分析
  • 面试小札:闪电五连鞭_3
  • 2024年大模型后训练(post-training)总结