ext springmvc mysql_SSM 框架——Spring+SpringMVC+Mybatis 的搭建教程

一:概述

SSM 框架在项目开发中经常使用到,相比于 SSH 框架,它在仅几年的开发中运用的更加广泛。

Spring 作为一个轻量级的框架,有很多的拓展功能,最主要的我们一般项目使用的就是 IOC 和 AOP。

SpringMVC 是 Spring 实现的一个 Web 层,相当于 Struts 的框架,但是比 Struts 更加灵活和强大!

Mybatis 是 一个持久层的框架,在使用上相比 Hibernate 更加灵活,可以控制 sql 的编写,使用 XML 或注解进行相关的配置!

根据上面的描述,学习 SSM 框架就非常的重要了!

二:搭建一个 SSM 的过程

使用 Maven 管理项目

使用 Maven 在 Eclipse 中创建一个 webapp 的项目 ,具体的创建过程不做演示,如有不会创建的[创建项目]

也可以使用 Maven 命令进行创建,在 Dos 窗口进入指定的目录,执行下面命令:

mvnarchetype:create -DgroupId=org.ssm.dufy -DartifactId=ssm-demo -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false

使用命令要注意,系统安装了 Maven,并配置好了环境变量![Maven 的安装和环境变量配置]

导入项目(命名创建),添加依赖

导入项目是 IDE 中,或者直接在 IDE 创建,一般默认有【src/main/java】,手动创建【src/test/resources】、【src/test/java】文件夹。

如下项目结构:

然后直接配置 pom.xml 文件中的包依赖!

4.0.0org.dufyssmwar0.0.1-SNAPSHOTssmDemohttp://maven.apache.org4.0.5.RELEASE3.2.11.6.61.2.125.1.35org.springframeworkspring-core${spring.version}org.springframeworkspring-webmvc${spring.version}org.springframeworkspring-context${spring.version}org.springframeworkspring-context-support${spring.version}org.springframeworkspring-aop${spring.version}org.springframeworkspring-aspects${spring.version}org.springframeworkspring-tx${spring.version}org.springframeworkspring-jdbc${spring.version}org.springframeworkspring-web${spring.version}org.springframeworkspring-test${spring.version}testorg.springframeworkspring-webmvc${spring.version}org.springframeworkspring-web${spring.version}mysqlmysql-connector-java${mysql.version}com.alibabadruid0.2.23com.alibabafastjson1.1.41log4jlog4j${log4j.version}org.slf4jslf4j-api${slf4j.version}ch.qos.logbacklogback-classic1.1.2ch.qos.logbacklogback-core1.1.2org.logback-extensionslogback-ext-spring0.1.1org.mybatismybatis${mybatis.version}org.mybatismybatis-spring1.2.0javax.servletjavax.servlet-api3.0.1javax.servlet.jspjavax.servlet.jsp-api2.3.2-b01javax.servletjstl1.2junitjunit3.8.1testssmDemo

创建数据库和表,生成代码

创建数据库我参考别人的博客数据库设计,这块没有自己去书写,直接添上代码

DROPTABLEIFEXISTSuser_t;CREATETABLEuser_t(idint(11)NOTNULLAUTO_INCREMENT,user_namevarchar(40)NOTNULL,passwordvarchar(255)NOTNULL,ageint(4)NOTNULL, PRIMARYKEY(id) )ENGINE=InnoDBAUTO_INCREMENT=2DEFAULTCHARSET=utf8;insertintouser_t(id,user_name,password,age)values(1,'测试','sfasgfaf',24)

生成代码请查看:

SSM框架——使用MyBatis Generator自动创建代码 - CSDN博客

生成的代码导入图片解释:

Spring 和 mybatis 整合,连接数据库, 进行 Junit 测试

将生成的代码拷贝到项目中,然后进行 Spring 和 Mybatis 的整合,添加配置文件!

主要有

applicationContent.xml :Spring 的相关配置!

Spring-mhbatis.xml : Spring 和 Mybatis 集成配置!

jdbc.properties : 数据库信息配置!

logback.xml : 日志输出信息配置!(不做介绍,详细信息查看源码)

主要介绍 applicationContext.xml、Spring-mhbatis.xml、jdbc.properties。主要内容如下:

jdbc.properties

jdbc_driverClassName=com.mysql.jdbc.Driverjdbc_url=jdbc:mysql://localhost:3306/ssm?useUnicode=true&characterEncoding=utf8jdbc_username=rootjdbc_password=root

applicationContext.xml

"> 可以不在配置 -->

spring-mybatis.xml

测试代码,两种方式:

测试 1:

package org.ssm.dufy.service;importorg.junit.Test;importorg.junit.runner.RunWith;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.test.context.ContextConfiguration;importorg.springframework.test.context.junit4.SpringJUnit4Cla***unner;importorg.ssm.dufy.entity.User;@RunWith(SpringJUnit4Cla***unner.class)// 告诉 junit spring 配置文件 @ContextConfiguration({"classpath:applicationContext.xml"})publicclassIUserServiceTest{@AutowiredpublicIUserServiceuserService; @Testpublicvoid getUserByIdTest(){Useruser = userService.getUserById(1);System.out.println(user.getUserName()); } }

测试 2:

package org.ssm.dufy.service;importorg.springframework.context.ApplicationContext;importorg.springframework.context.support.ClassPathXmlApplicationContext;importorg.ssm.dufy.entity.User;publicclassIUserServiceTest2{publicstaticvoid main(String[] args){ApplicationContextapplication = newClassPathXmlApplicationContext("applicationContext.xml");IUserServiceuService = (IUserService) application.getBean("userService");Useruser = uService.getUserById(1);System.out.println(user.getUserName()); }}

5:整合 SpringMVC,添加配置,创建 jsp

SpringMVC 需要的依赖在 pom.xml 中已经加上了,现在需在 Web 项目中的 web.xml 中添加启动 SpringMVC 启动配置和 Spring 整合 SpringMVC 的配置了。

新增如下两个文件:

spring-mvc.xml

Index of /schema/beans

Index of /schema/context

Index of /schema/mvc

http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd"> application/json -->json=application/json xml=application/xml html=text/html/ 映射时,能映射静态资源 -->

web.xml

SSM-DEMOcontextConfigLocationclasspath:applicationContext.xml

webAppRootKey

springmvc.root

-->SpringEncodingFilterorg.springframework.web.filter.CharacterEncodingFilterencodingUTF-8forceEncodingtrueSpringEncodingFilter/*logbackConfigLocationclasspath:logback.xmlch.qos.logback.ext.spring.web.LogbackConfigListenerorg.springframework.web.context.ContextLoaderListenerdispatcherServletorg.springframework.web.servlet.DispatcherServletcontextConfigLocationclasspath:spring-mvc.xml1dispatcherServlet/index.jsp

作者:huadeyu

链接:https://hacpai.com/article/1530496952471

来源:×××派

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值