通过一个非常简单的SSM项目来将SpringMVC配置整理清晰。
所有的文件在Git上面都能找到,由于把代码搞上来看的很不舒服,结构不清晰。
第一步:确定环境
IDEA
MySQL 5.7.19
Tomcat 9
Maven 3.6
第二步:创建数据库
参考GIT上面的SQL文件
第三步:新建Maven项目,基本目录搭建
1.导入Springmvc,Mybatis,spring,Junit相关依赖
2.建立基本结构和配置架构
- com.cll.pojo
- com.cll.dao
- com.cll.service
- com.cll.controller
- mybatis-config.xml
- appplicationContext.xml
- database.properties
- spring-dao.xml
- spring-service.xml
- spring-mvc.xml
第四步:编写Controller,和JSP文件(这些都很简单了,可以直接到Git上面下载)。
第五:主要来讲一下配置文件的分层。
1.首先:application.xml.将其分为三层导入,整合speing配置文件。
<import resource="spring-dao.xml"/>
<import resource="spring-service.xml"/>
<import resource="spring-mvc.xml"/>
2.spring-dao.xml.这是Spring整合Mybatis的配置文件。
<!-- 1.关联数据库文件 -->
<context:property-placeholder location="classpath:database.properties"/>
<!-- 2.数据库连接池 -->
<!-- 3.配置SqlSessionFactory对象 -->
<!-- 4.配置扫描Dao接口包,动态实现Dao接口注入到spring容器中 -->
3.spring-service层。spring整合service层的配置文件
3.1 扫描service相关的bean
3.2 将***serviceImpl注入到IOC容器中
3.4 配置事务管理器,注入数据库连接池。
到这里Spring层的配置结束,开始SpringMVC的配置。
4.web.xml
4.1配置DispatcherFilter,并且关联总的配置文件applicationContext.xml
<init-param>
<param-name>contextConfigLocation</param-name>
<!--一定要注意:我们这里加载的是总的配置文件,之前被这里坑了!-->
<param-value>classpath:applicationContext.xml</param-value>
</init-param>
4.2解决乱码,创建过滤器。
<!--encodingFilter-->
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>
org.springframework.web.filter.CharacterEncodingFilter
</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>utf-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
4.3设置session过期时间
<session-config>
<session-timeout>15</session-timeout>
</session-config> </web-app>
5.spring-mvc.xml
5.1开启现在常用的注解开发驱动
<mvc:annotation-driven />
5.2静态资源默认Servlet配置
<mvc:default-servlet-handler/>
5.3配置视图解析器
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
<property name="prefix" value="/WEB-INF/jsp/" />
<property name="suffix" value=".jsp" />
</bean>
5.4配置web相关的bean
<context:component-scan base-package="com.kuang.controller" />
好的,这基本就是配置文件的分层了。
Git地址:https://github.com/lele-Chang/order/tree/master/ssm
通过一个非常简单的SSM项目来将SpringMVC配置整理清晰。的更多相关文章
- vs2015制作一个超级简单的MVC项目
使用vs2015制作一个超级简单的MVC项目 本文链接:https://blog.csdn.net/qq_40919762/article/details/100705314 直奔主题一,创建一个 ...
- 当你的SSM项目中的springmvc.xml发生第一行错误解决方案
当你新建了一个SSM项目,你复制网上的xml文件来配置或者你下载了一个SSM项目打开发现xml文件错误,打开是第一行报错的时候你是不是很懵逼 或者是这样 总之就是xml文件中<?xml vers ...
- 一个简单的ssm项目
准备说明jdk.tomcat.idea.mave配置请看我前两篇,这里说下mysql以及我的mysql图像化工具 数据库 项目概览 项目构建--------搭建一个简单的mave的web项目,构建步骤 ...
- (一)使用IDEA新建一个最简单的JavaWeb项目,Maven管理
1.项目环境 IDEA:2016.2 JDK:1.8.0_76 Maven:3.2.5 2.File-->New-->Project-->Maven 3.选择Project SDK: ...
- 基于Idea从零搭建一个最简单的vue项目
一.需要了解的基本知识 node.js Node.js是一个Javascript运行环境(runtime),发布于2009年5月,由Ryan Dahl开发,实质是对Chrome V8引擎进行了封装.N ...
- 一个很简单的SpringCloud项目,集成Feign、Hystrix
Feign的功能:这是个消费者,根据服务注册在Eureka的ID去找到该服务,并调用接口Hystrix的功能:熔断器,假如A服务需要调用B服务的/cities接口获取数据,那就在A服务的control ...
- 使用IDEA导入一个Maven风格的SSM项目
转自: 方法一: (我用的这种,导入的方法 File->New->Project from existing sources)(同理,important也是一样的) https://how ...
- 搭建一个maven管理的ssm项目需要配置那些文件
链接:https://blog.csdn.net/java987654/article/details/80746866
- ssm项目快速搭建(配置)
核心jar包 <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncod ...
- 配置一个简单的传统SSM项目
背景 我们知道,从2002年开始,Spring一直在飞速的发展,如今已经成为了在Java EE开发中的标准,早期的项目都是传统的Spring-SpringMVC-Mybatis项目,打成一个war包丢 ...
随机推荐
- Python函数对象与闭包函数
[一]函数对象 函数对象指的是函数可以被当做 数据 来处理,具体可以分为四个方面的使用 [1]函数可以被引用 def add(x,y): return x + y func = add res = f ...
- 数据处理(传值& 乱码)
处理前端提交的数据 1.提交的域名称和处理方法的参数名一致时 /hello?name=akagi @RequestMapping("/hello") public Strin ...
- Windows10 Linux 子系统的骚操作之 Ctrl+Alt+T shell启动终端
巨硬的 WSL(Windows Subsystem for Linux)是真的好用 但是,由于本人比较喜欢按快捷键.所以一直想着找到Windows上安装的ubuntu.exe文件,搞个快捷方式,然后再 ...
- Android Studio虚拟机文件默认C盘转移其他盘
原文地址:Android Studio虚拟机文件默认C盘转移其他盘 - Stars-One的杂货小窝 某天发现,新创建的Android13模拟器,把我C盘搞得只剩下9G了,于是折腾了下,把模拟器相关文 ...
- Android USB开发1—开发环境搭建
通过Genymotion 与 VirtualBox 可以实现将电脑中的USB设备转接到Android模拟器中进行通信. Genymotion 配置 首先从https://www.genymotion. ...
- 不使用microlib实现STM32串口printf重定向:
不使用microlib实现STM32串口printf重定向: 突然发现有一篇markdown忘记上传了,补一下 注:使用的是CubeMX生成的工程文件 生成后,在usart.c中添加如下代码: //u ...
- django(视图层)
更详细的视图层讲解,看下面链接 https://www.cnblogs.com/xiaoyuanqujing/articles/11643459.html 一. 三板斧 ''' HttpRespons ...
- github 镜像地址
亲测可用的 github 镜像地址: https://hub.nuaa.cf , https://hub.fgit.cf
- 使用JMeter从JSON响应的URL参数中提取特定值
在使用Apache JMeter进行API测试时,我们经常需要从JSON格式的响应中提取特定字段的值.这可以通过使用JMeter内置的JSON提取器和正则表达式提取器来完成.以下是一个具体的例子,展示 ...
- 动态水印也能去除?ProPainter一键视频抠图整合包下载
ProPainter是一个基于E2FGVI实现的AI视频编辑工具,它结合了增强的传播和Transformer机制,能够快速高效地进行视频修复和水印去除 功能特点 · 对象移除:智能地检测和移除视频中的 ...