eclipse 右键项目为什么没有properties菜单_只需几步,从零开始搭建SSM项目
SSM(Spring+SpringMVC+MyBatis)
SSM(Spring+SpringMVC+MyBatis)框架集由Spring、SpringMVC、MyBatis三个开源框架整合而成,常作为数据源较简单的web项目的框架,并且可在此基础上延伸扩展集成出很多东西。
延伸部分此处就不介绍了。本篇面向的只是刚准备入门框架,或者对基本SSM框架配置还不太熟悉的朋友。
这次搭建基于eclipse+tomcat+mysql,想自己搭建一遍的朋友可以跟着下面的步骤一起。
话不多说,开始。。。
第一步:建立动态web工程
eclipse下点击 File -> new -> other -> web -> Dynamic Web Project。
输入项目名,点击next,next,把web.xml勾上,点击Finish。
这样建立的就是最基本最原始结构的web项目了。
第二步:配置项目的tomcat。(已配置可略过)
eclipse下点击 Window -> Preferences -> Server - Runtime Environments -> Add,选择本机上的tomcat所在位置。即可完成配置。
配置后将工程部署至tomcat中,建立index.jsp,在网页中输入localhost:8080/ssmDemo,测试项目能否正常发布。
说明:1.若此时jsp页面报错: The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path,是因为没有将工程配置的服务器依赖的jar包配置到工程中。
解决方法是右键工程 Build Path -> Configure Builde Path -> Add Liberary -> Server Runtime -> 选择刚才配置的tomcat即可。
2.建议将工作区间与jsp的字符集编码统一改为utf-8。在Window -> Preferences下的General -> Workspace,与 Web -> JSP Files中设置。
第三步:引入SpringMvc相关依赖jar包和核心配置文件spring-mvc.xml,修改项目的web.xml文件。并测试是否配置成功。
前两步是建立并发布普通Web工程的一般步骤,这一步才开始正式引入SSM框架。首先,引入SpringMvc框架。
3.1 工程中导入SpringMvc依赖的相关jar包与其核心配置文件之一的spring-mvc.xml。
(配置文件可统一放在工程的resources文件夹中方便管理。右键工程 -> new -> Source Folder -> 输入文件名完成。
注意,这里的resources文件夹必须是Source Folder,而不是普通的Folder,不然web.xml会找不到该配置文件。)
3.2 在web.xml中引用该配置文件。
3.3在网页中输入localhost:8080/ssmDemo,测试项目能否正常发布。能正常发布则证明引入springMvc的配置成功。
(web.xml中指定寻找放在工程的classpath下的spring文件夹下的spring-mvc.xml文件,服务器找不到会报错,无法启动。
默认的classpath是在工程的build文件夹中。可将classpath改为配置放在WEB-INF中。更改操作为: 右键工程 -> Build Path -> Configure Build Path
-> 找到Source栏 -> 修改Default output folder为: ssmDemo/WebContent/WEB-INF/classes )
第四步:开发前后台交互的通道: controller层
4.1 根据配置文件spring-mvc.xml中controller的配置,新建一个package用于存放controller类,并在WEB-INF下建立jsp文件夹存放jsp页面。
4.2 springMvc的配置文件中扫描controller所在的包,开启注解,并对jsp视图进行一些基本的配置。
4.3 在网页中输入http://localhost:8080/ssmDemo/testController/toTestPage,测试是否能够前往界面并显示数据。
第五步:引入SpringMvc相关依赖jar包和核心配置文件spring-mybatis.xml及其相关依赖,修改项目的web.xml文件。
上一步中,我们已经能够将controller中的数据msg传至前台,并能显示到界面中。但是msg一般都是从数据库中获取出来的,
所以我们需要在工程中编写dao层,使controller层能够获取到数据库中的数据。此时dao层的配置也就相当于SSM中Spring和Mybaties的配置了。
(此处有点类似于重复第三步和第四步。可合为一步写,但还是分开两步说清楚好一点)
5.1 工程中导入SpringMvc依赖的相关jar包与其另一核心配置文件spring-mybatis.xml。
spring-mybatis.xml中,基本配置是差不多固定的。基本配置只需要修改以下三个地方:
并且在spring-mybatis.xml依赖的jdbc.properties中修改连接地址即可。
第六步:开发后台与数据库交互的通道: dao层
6.1 根据配置文件spring-mybatis.xml中dao层,service层,与mapping对应的位置建立对应文件夹。至此建立起MVC三层结构。
(当然也可以先建立起三层结构再配置对应的配置文件。也可以边配置边验证边建立。)
6.2 插入测试数据,进行与数据库的连接验证。spring已经封装好测试连接的方法。(测试数据可存放于resource下的init文件中)
第七步:SSM整体验证
还是在网页中输入http://localhost:8080/ssmDemo/testController/toTestPage,测试是否能够前往界面并显示数据。此时即可通过service层调用dao层,获取数据库中的数据了。至此,SSM的基本框架已经成型。可以在该框架基础上添加其它的东西了。
eclipse 右键项目为什么没有properties菜单_只需几步,从零开始搭建SSM项目相关推荐
- python发音机器人_只需三步,菜鸟也能用Python做一个简易版Siri
原标题:只需三步,菜鸟也能用Python做一个简易版Siri 当下,各个手机厂商都陆续的推出了属于自己的智能手机机器人,像是苹果的Siri,小米的小爱,还有等等.这些智能机器人不仅仅方便了我们对于手机 ...
- centos7如何精简容量_只需3步!教你打造精简win10,去除系统自带程序,运行更快...
说到win10系统,真是让人很头痛,尤其是系统不断更新的同时,也不断变大! 结果,一些配置相对没有这么好的电脑,安装win10系统之后,除了卡之外,还发现系统中有一大堆这辈子都不怎么用的系统程序组件之 ...
- win10清理c盘_只需十步,C盘轻松腾出30G!使用win10自带工具清理系统垃圾,让电脑重获新生...
第一步:打开 win10 的设置界面.你可以选择在桌面底部的菜单栏点击右键,选择"任务栏设置"唤起设置界面. 第二步:在左上角的搜索框输入"存储使用情况",并点 ...
- win10 minikube镜像位置_只需3步!教你打造精简win10,去除系统自带程序,运行更快!...
说到win10系统,真是让人很头痛,尤其是系统不断更新的同时,也不断变大! 结果,一些配置相对没有这么好的电脑,安装win10系统之后,除了卡之外,还发现系统中有一大堆这辈子都不怎么用的系统程序组件之 ...
- vue xlsx 导入导出_只需三步vue实现excel文件数据提取并存为json数据
前言: 以前将excel数据导入到数据库是通过前端,将excel文件上传到后端,通过后端语言进行相应的加工将excel文件中的数据取出并存入数据库:从而实现数据库的存入流程.但是这也带来了一些问题,首 ...
- 实现歌词效果自动滚动_只需五步,专业Pr软件实现视频歌词渐变色效果,你学会了吗?...
大家好,现如今短视频行业的飞速发展,造就视频的花样百出,形成不同视角冲击,其中音乐播放器的歌词渐变效果是我们平常接触最多的一个效果(如下图),今天我就来给大家讲解如何用Premiere软件快速简单制作 ...
- 无返回值_只需一步,在Spring Boot中统一Restful API返回值格式与处理异常
统一返回值 在前后端分离大行其道的今天,有一个统一的返回值格式不仅能使我们的接口看起来更漂亮,而且还可以使前端可以统一处理很多东西,避免很多问题的产生. 比较通用的返回值格式如下: public cl ...
- windows 组播收不到消息_只需2步,轻松解决登录微信电脑版后,手机收不到消息提醒的问题...
因为可以用手机号搜索的原因,我们在和客户沟通时,往往会通过电话号码添加对方的微信,便于收发文件资料,久而久之,就养成了通过微信传输文件的习惯. 但有一个一直困扰我们的问题,登录微信电脑版后,手机端往往 ...
- python国际象棋ai程序_只需五步!手把手教你搭建国际象棋AI机器人
王新民 编译 量子位 报道 | 公众号 QbitAI 要创建一个简单的象棋AI,我们在开始编程之前要先了解四个基本的概念:移动生成.棋局评估.最大最小搜索和α-β剪枝搜索过程. 在每个步骤中,我们将会 ...
最新文章
- 目标检测--Enhancement of SSD by concatenating feature maps for object detection
- Java-反射简介及例子
- iframe 按比例缩放_不按常理出牌!5个Excel灵异事件,能让你崩溃
- 《Linux系统和网络性能监测》读书笔记
- [蓝桥杯]字母组串-递归
- netsh 禁用端口
- 2021中国智能驾驶核心软件产业研究报告:软件定义,数据驱动.pdf(附下载链接)...
- Codeforces-Div312
- 【初赛】「阅读程序」题答v1.0
- ANSYS APDL入门教程
- 修复win7便签功能
- 医学知识图谱构建关键技术及研究进展
- 硬件工程师应该知道的音频功放电路
- 2022年最新餐饮外卖行业市场研报合集(共45份)
- JUL、JCL、Log4j、Slf4j各种日志框架的使用
- unity3d + lua + 斗地主 系列 (2) 创建扑克规则
- GLFWError #65542 Happen, WGL: The driver does not appear to support OpenGL的问题处理经历
- 技法(但请少用):为非活动窗口绘制活动的标题栏
- MATLAB差值画树叶,MATLAB分形图形 树叶
- 腾讯和蘑菇街的面试总结