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整合的过程,这次刚刚好基于自己的一个小项目 ...
随机推荐
- vue项目中,更改数组元素的值,视图没有实时更新?
问题背景: export default { data(){ showItems: [false, false, false, false] }, methods: { showItem(index) ...
- 从HotSpot VM源码看字符串常量池(StringTable)和intern()方法
引言 字符串常量池(StringTable)是JVM中一个重要的结构,它有助于避免重复创建相同内容的String对象.那么StringTable是怎么实现的?"把字符串加入到字符串常量池中& ...
- java面试-JDK自带的JVM 监控和性能分析工具用过哪些?
一.JDK的命令行工具 1.jps(JVM Process Status Tools):虚拟机进程状况工具 jps -l 2.jinfo(Configuration Info for java):Ja ...
- 3步安装Python虚拟环境virtualenv
1. pip安装必要库 pip install virtualenv -i https://pypi.douban.com/simple pip install virtualenvwrapper - ...
- OOUML系列总结及终章回顾
盼望着,盼望着,OO课程终于结束了,但是,此刻的我却感到一丝失落,甚至想着再来一单元岂不妙哉? 目录 总结本单元三次作业架构 四个单元中架构设计及OO方法理解的演进 四个单元中测试理解与实践的演进 课 ...
- 自动化kolla-ansible部署ubuntu20.04+openstack-victoria之镜像制作win2008r2-19
自动化kolla-ansible部署ubuntu20.04+openstack-victoria之镜像制作win2008r2-19 欢迎加QQ群:1026880196 进行交流学习 制作OpenSta ...
- Django 视图(View)
1. 视图简介 2. URLconf 1)关联各应用下的 URLconf 2)URLconf 的编写 3)namespace 反向解析 3. 视图函数&错误视图 4. HttpRequest ...
- 7.bug生命周期
new:测试发现并提交bug,状态为new/active; open: 分配bug到开发人员,状态为open: fixed:开发人员处理完bug,将状态改为fixed: closed/reopen:测 ...
- Web安全实践
目录 前言 编码安全 反序列化命令执行 SQL 注入 跨站 XSS(Cross-site scripting) 跨站请求伪造 CSRF(Cross-site request forgery) URL跳 ...
- 千位分隔符,音频音量加强,transform 垂直居中
1.最近做阴阳师日本官网,其中有个功能是获取预约人数,设计稿上的人数是这样151,567,000,想了想自己写还有点麻烦,于是网上copy了代码,再修改了下. 其中,有一点需要注意的是:函数中的str ...