SSM框架整合(Spring+SpringMVC+Mybatis)
第一步:创建maven项目并完善项目结构
第二步:相关配置
pom.xml
引入相关jar包
1 <properties>
2 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
3 <maven.compiler.source>1.7</maven.compiler.source>
4 <maven.compiler.target>1.7</maven.compiler.target>
5 <spring.version>5.0.2.RELEASE</spring.version>
6 <slf4j.version>1.6.6</slf4j.version>
7 <log4j.version>1.2.12</log4j.version>
8 <mysql.version>5.1.6</mysql.version>
9 <mybatis.version>3.4.5</mybatis.version>
10 </properties>
11
12 <dependencies>
13 <!-- spring -->
14 <dependency>
15 <groupId>org.aspectj</groupId>
16 <artifactId>aspectjweaver</artifactId>
17 <version>1.6.8</version>
18 </dependency>
19 <dependency>
20 <groupId>org.springframework</groupId>
21 <artifactId>spring-aop</artifactId>
22 <version>${spring.version}</version>
23 </dependency>
24 <dependency>
25 <groupId>org.springframework</groupId>
26 <artifactId>spring-context</artifactId>
27 <version>${spring.version}</version>
28 </dependency>
29 <dependency>
30 <groupId>org.springframework</groupId>
31 <artifactId>spring-web</artifactId>
32 <version>${spring.version}</version>
33 </dependency>
34 <dependency>
35 <groupId>org.springframework</groupId>
36 <artifactId>spring-webmvc</artifactId>
37 <version>${spring.version}</version>
38 </dependency>
39 <dependency>
40 <groupId>org.springframework</groupId>
41 <artifactId>spring-test</artifactId>
42 <version>${spring.version}</version>
43 </dependency>
44 <dependency>
45 <groupId>org.springframework</groupId>
46 <artifactId>spring-tx</artifactId>
47 <version>${spring.version}</version>
48 </dependency>
49 <dependency>
50 <groupId>org.springframework</groupId>
51 <artifactId>spring-jdbc</artifactId>
52 <version>${spring.version}</version>
53 </dependency>
54 <dependency>
55 <groupId>junit</groupId>
56 <artifactId>junit</artifactId>
57 <version>4.12</version><scope>compile</scope>
58 </dependency>
59 <dependency>
60 <groupId>mysql</groupId>
61 <artifactId>mysql-connector-java</artifactId>
62 <version>${mysql.version}</version>
63 </dependency>
64 <dependency>
65 <groupId>javax.servlet</groupId>
66 <artifactId>servlet-api</artifactId>
67 <version>2.5</version>
68 <scope>provided</scope>
69 </dependency>
70 <dependency>
71 <groupId>javax.servlet.jsp</groupId>
72 <artifactId>jsp-api</artifactId>
73 <version>2.0</version>
74 <scope>provided</scope>
75 </dependency>
76 <dependency>
77 <groupId>jstl</groupId>
78 <artifactId>jstl</artifactId>
79 <version>1.2</version>
80 </dependency>
81 <!-- log start -->
82 <dependency>
83 <groupId>log4j</groupId>
84 <artifactId>log4j</artifactId>
85 <version>${log4j.version}</version>
86 </dependency>
87 <dependency>
88 <groupId>org.slf4j</groupId>
89 <artifactId>slf4j-api</artifactId>
90 <version>${slf4j.version}</version>
91 </dependency>
92 <dependency>
93 <groupId>org.slf4j</groupId>
94 <artifactId>slf4j-log4j12</artifactId>
95 <version>${slf4j.version}</version>
96 </dependency>
97 <!-- log end -->
98 <dependency>
99 <groupId>org.mybatis</groupId>
100 <artifactId>mybatis</artifactId>
101 <version>${mybatis.version}</version>
102 </dependency><dependency>
103 <groupId>org.mybatis</groupId>
104 <artifactId>mybatis-spring</artifactId>
105 <version>1.3.0</version>
106 </dependency>
107 <!--这里选择哪种链接池自己决定 我是用的durid-->
108 <dependency>
109 <groupId>com.alibaba</groupId>
110 <artifactId>druid</artifactId>
111 <version>1.0.9</version>
112 </dependency>
113 </dependencies>
114 配置编译java路径下的xml文件(当mybatis采用mapper.xml形式编写sql语句的时候,放在dao层下的xml文件maven默认是不编译的)
115 在build标签里加入以下代码
116
117 <resources>
118 <!--编译src/main/java目录下的xml文件-->
119 <resource>
120 <directory>src/main/java</directory>
121 <includes>
122 <include>**/*.xml</include>
123 </includes>
124 <filtering>true</filtering>
125 </resource>
126 </resources>
到此为止pom.xml就配置好了
-----------------------------------------------------------------------------------------------------------------------------------------
接下来我们配置mybatis的配置文件
SqlMapConfig.xml(因为我们后面要整合Spring所以很多配置都放在了Spring配置文件里面 这里我们只配置一下别名方便以后mapper.xml的编写)
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!--配置别名-->
<typeAliases>
<!--domain包路径>
<package name="cn.jydm.domain"></package>
</typeAliases>
</configuration>
jdbc.properties(这里主要填写一下数据库的相关数据 我只填写了必要的数据 链接限制等自己根据情况填写)
driverClass=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/数据库名?useUnicode=true&characterEncoding=utf8
user=root (这里说明一下之所以没有填username 是因为在Spring配置文件里面编写${username} 会获取到主机名字 导致连接数据库失败)
password=密码
到这数据库的相关东西都编写好了
-------------------------------------------------------------------------------------------------------------------------------------------
SpringMVC的配置
springmvc.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=" http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">
<!-- 配置spring创建容器时要扫描的包 -->
<context:component-scan base-package="cn.jydm.contraller" />
<!-- 配置视图解析器 -->
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/pages/"></property>
<property name="suffix" value=".jsp"></property>
</bean>
<!-- 配置spring开启注解mvc的支持-->
<mvc:annotation-driven></mvc:annotation-driven>
</beans>
---------------------------------------------------------------------------------------------------------------------------------------
接下来我们配置一下spring的配置文件(因为无论是SpringMVC还是Mybatis都是与Spring整合所以我们最后配置Spring)
applicationContext.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:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx.xsd">
<!--引入jdbc配置文件-->
<context:property-placeholder location="classpath:jdbc.properties"></context:property-placeholder>
<!--开启注解的扫描,希望处理service和dao,controller不需要Spring框架去处理-->
<context:component-scan base-package="cn.jydm" >
<!--配置哪些注解不扫描-->
<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller" />
</context:component-scan>
<!--spring整合mybatis框架-->
<!-- 配置Durid的连接池对象 -->
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init"
destroy-method="close">
<property name="driverClassName" value="${driverClass}" />
<property name="url" value="${url}" />
<property name="username" value="${user}" />
<property name="password" value="${password}" />
</bean>
<!-- 配置SqlSession的工厂 -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<!--指定mapper的配置文件-->
<property name="configLocation" value="classpath:SqlMapConfig.xml" />
<!--指定mapper文件的存放路径-->
<property name="mapperLocations" value="classpath:cn/jydm/dao/*.xml"/>
</bean>
<!-- 配置扫描dao的包 -->
<bean id="mapperScanner" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="cn.jydm.dao"/>
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
</bean>
</beans>
这样所有的配置文件就都写好了SSM框架也就整合完毕了
最后还有一个日志文件
log4j.properties
# Global logging configuration
log4j.rootLogger=DEBUG, stdout
# Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n
在整合过程中出现了tomcat启动失败的问题,后来发现是配置别名的时候包路径没有写对 导致mapper.xml里的返回值类型出现了找不到的问题。
SSM框架整合(Spring+SpringMVC+Mybatis)的更多相关文章
- maven项目快速搭建SSM框架(一)创建maven项目,SSM框架整合,Spring+Springmvc+Mybatis
首先了解服务器开发的三层架构,分配相应的任务,这样就能明确目标,根据相应的需求去编写相应的操作. 服务器开发,大致分为三层,分别是: 表现层 业务层 持久层 我们用到的框架分别是Spring+Spri ...
- Maven+SSM框架(Spring+SpringMVC+MyBatis)(二)
1.基本概念 2.开发环境搭建 3.Maven Web项目创建 4.SSM整合 此次整合我分两个配置文件: 1)分别是spring-mybatis.xml,包含spring和mybatis的配置文件, ...
- ssm框架(Spring Springmvc Mybatis框架)整合及案例增删改查
三大框架介绍 ssm框架是由Spring springmvc和Mybatis共同组成的框架.Spring和Springmvc都是spring公司开发的,因此他们之间不需要整合.也可以说是无缝整合.my ...
- 2018用IDEA搭建SSM框架(Spring+SpringMVC+Mybatis)
使用IDEA搭建ssm框架 环境 工具:IDEA 2018.1 jdk版本:jdk1.8.0_171 Maven版本:apache-maven-3.5.3 Tomcat版本:apache-tomcat ...
- 【SSM框架】Spring + Springmvc + Mybatis 基本框架搭建集成教程
本文将讲解SSM框架的基本搭建集成,并有一个简单demo案例 说明:1.本文暂未使用maven集成,jar包需要手动导入. 2.本文为基础教程,大神切勿见笑. 3.如果对您学习有帮助,欢迎各种转载,注 ...
- 使用maven整合spring+springmvc+mybatis
使用maven整合spring+springmvc+mybatis 开发环境: 1. jdk1.8 2. eclipse4.7.0 (Oxygen) 3. mysql 5.7 在pom.xml文件中, ...
- java web后台开发SSM框架(Spring+SpringMVC+MyBaitis)搭建与优化
一.ssm框架搭建 1.1创建项目 新建项目后规划好各层的包. 1.2导入包 搭建SSM框架所需包百度云链接:http://pan.baidu.com/s/1cvKjL0 1.3整合spring与my ...
- 【SSM 6】Spring+SpringMVC+Mybatis框架搭建步骤
一.整体概览 首先看maven工程的创建 二.各层的文件配置 2.1,SSM父工程 <span style="font-family:KaiTi_GB2312;font-size:18 ...
- 《经久不衰的Spring框架:Spring+SpringMVC+MyBatis 整合》
前言 主角即Spring.SpringMVC.MyBatis,即所谓的SSM框架,大家应该也都有所了解,概念性的东西就不写了,有万能的百度.之前没有记录SSM整合的过程,这次刚刚好基于自己的一个小项目 ...
随机推荐
- Nginx日志分析 awk 命令
通过Nginx日志,可以简单分析WEB网站的运行状态.数据报表.IP.UV(unique visitor指独立访客访问数,一台电脑终端为一个访客.).PV(page view即页面访问量,每打开一次页 ...
- 使用Vscode 开发调试 C/C++ 项目
需要安装的扩展 C/C++ 如果是远程 Linux上开发还需要安装 Remote Development 创建工作目录后,代码远程克隆... 省略.. 创建项目配置文件,主要的作用是代码智能提示,错误 ...
- SqlServer游标的创建与使用
前言 大家都对SqlServer视图.存储过程.触发器的创建与使用有一定的了解了,我们来看下什么是游标,怎么使用,什么时候用. SqlServer视图的创建与使用 SqlServer存储过程的创建与使 ...
- 经典变长指令SIB
前言 ModR/M字段是用来进行内存寻址的,可当地址形如DS:[EAX + ECX*2 + 12345678]时,仅仅靠ModR/M字段,是描述不出来的. 这时就在ModR/M后面增加一个SIB字节, ...
- Linux(六):系统运维常用命令
实际的生产环境下,不论是研发还是运维,或多或少的得面对在linux上定位问题这个关卡,这里介绍一下linux环境下一些状态查看常用的命令. 系统资源监控 总体资源占用情况查看 命令:top 像wind ...
- 采用QT技术,开发OFD电子文档阅读器
前言 ofd作为板式文档规范,相当于国产化的pdf.由于pdf标准制定的较早,相关生态也比较完备,市面上的pdf阅读器种类繁多.国内ofd阅读器寥寥无几,作者此前采用wpf开发了一款阅读器,但该阅读器 ...
- Spring-@PostConstruct注解
@PostConstruct注解 @PostConstruct注解好多人以为是Spring提供的.其实是Java自己的注解. Java中该注解的说明:@PostConstruct该注解被用来修饰一个非 ...
- 如何在 NET 程序万种死法中有效的生成 Dump (下)
一:背景 上一篇我们聊到了如何通过 procdump 抓取 cpu爆高 和 内存暴涨 两种情况,这一篇再聊聊如何去抓程序 挂死 和 意外退出. 二:程序挂死 1. 定义 程序挂死 简单的说就是程序没有 ...
- 004-Java中的运算符
@ 目录 一.运算符 一.分类 二.算数运算符 三.关系运算符 四.逻辑运算符 五.赋值运算符 六.条件运算符(三目运算符) 七.+运算符 一.运算符 一.分类 二.算数运算符 加 $+$ 减 $ ...
- Nest 中处理 XML 类型的请求与响应
公众号及小程序的微信接口是通过 xml 格式进行数据交换的. 比如接收普通消息的接口: 当普通微信用户向公众账号发消息时,微信服务器将 POST 消息的 XML 数据包到开发者填写的 URL 上. - ...