使用maven构建ssm(spring+springmvc+mybatis)框架

来源:互联网 发布:sweetalert2.min.js 编辑:程序博客网 时间:2024/06/05 11:20

创建maven项目

  1. 使用idea或者eclipes创建maven web项目(具体步骤请参考其他博客)

pom.xml文件

1.在pom文件中的url标签下加入下面代码,方便以后更改jar包版本
<properties>
<springframework.version>4.3.7.RELEASE</springframework.version>
<log4j.version>1.2.17</log4j.version>
<jstl.version>1.2</jstl.version>
<jacksonForJSON.version>2.8.1</jacksonForJSON.version>
</properties>

2.在dependencies标签里面加入必要的jar包

<!-- ssm必要的jar包 -->    <dependency>      <groupId>org.springframework</groupId>      <artifactId>spring-core</artifactId>      <version>${springframework.version}</version>    </dependency>    <dependency>      <groupId>org.springframework</groupId>      <artifactId>spring-context</artifactId>      <version>${springframework.version}</version>    </dependency>    <dependency>      <groupId>org.springframework</groupId>      <artifactId>spring-aop</artifactId>      <version>${springframework.version}</version>    </dependency>    <dependency>      <groupId>org.springframework</groupId>      <artifactId>spring-aspects</artifactId>      <version>${springframework.version}</version>    </dependency>    <dependency>      <groupId>org.springframework</groupId>      <artifactId>spring-tx</artifactId>      <version>${springframework.version}</version>    </dependency>    <dependency>      <groupId>org.springframework</groupId>      <artifactId>spring-test</artifactId>      <version>${springframework.version}</version>    </dependency>    <dependency>      <groupId>org.springframework</groupId>      <artifactId>spring-web</artifactId>      <version>${springframework.version}</version>    </dependency>    <dependency>      <groupId>org.springframework</groupId>      <artifactId>spring-beans</artifactId>      <version>${springframework.version}</version>    </dependency>    <dependency>      <groupId>org.springframework</groupId>      <artifactId>spring-webmvc</artifactId>      <version>${springframework.version}</version>    </dependency>    <dependency>      <groupId>org.springframework</groupId>      <artifactId>spring-jdbc</artifactId>      <version>${springframework.version}</version>    </dependency>    <dependency>      <groupId>org.springframework</groupId>      <artifactId>spring-orm</artifactId>      <version>${springframework.version}</version>    </dependency>    <dependency>      <groupId>com.fasterxml.jackson.core</groupId>      <artifactId>jackson-databind</artifactId>      <version>${jacksonForJSON.version}</version>    </dependency>    <dependency>      <groupId>com.fasterxml.jackson.core</groupId>      <artifactId>jackson-core</artifactId>      <version>${jacksonForJSON.version}</version>    </dependency>    <dependency>      <groupId>com.fasterxml.jackson.core</groupId>      <artifactId>jackson-annotations</artifactId>      <version>${jacksonForJSON.version}</version>    </dependency>    <dependency>      <groupId>org.mybatis</groupId>      <artifactId>mybatis-spring</artifactId>      <version>1.2.4</version>    </dependency>    <dependency>      <groupId>org.mybatis</groupId>      <artifactId>mybatis</artifactId>      <version>3.3.1</version>    </dependency>    <dependency>      <groupId>mysql</groupId>      <artifactId>mysql-connector-java</artifactId>      <version>5.1.38</version>    </dependency>    <dependency>      <groupId>commons-dbcp</groupId>      <artifactId>commons-dbcp</artifactId>      <version>1.4</version>    </dependency>    <dependency>      <groupId>log4j</groupId>      <artifactId>log4j</artifactId>      <version>1.2.17</version>    </dependency><!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-log4j12 -->    <dependency>      <groupId>org.slf4j</groupId>      <artifactId>slf4j-log4j12</artifactId>      <version>1.6.1</version>    </dependency>    <dependency>      <groupId>commons-lang</groupId>      <artifactId>commons-lang</artifactId>      <version>2.6</version>    </dependency>    <dependency>      <groupId>commons-logging</groupId>      <artifactId>commons-logging</artifactId>      <version>1.1.1</version>    </dependency>

web.xml文件

1.添加 listener

<listener>    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>  </listener>

2.添加context-param

<context-param>    <param-name>contextConfigLocation</param-name>    <param-value>classpath:spring/applicationContext.xml</param-value>  </context-param>

3.添加filter,处理中文乱码

<filter>    <filter-name>CharacterEncodingFilter</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>CharacterEncodingFilter</filter-name>    <url-pattern>/*</url-pattern>  </filter-mapping>

4.添加servlet

<servlet>    <servlet-name>dispatcherServlet</servlet-name>    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>    <init-param>      <param-name>contextConfigLocation</param-name>      <param-value>classpath:spring/spring-servlet.xml</param-value>    </init-param>    <load-on-startup>1</load-on-startup>  </servlet>  <servlet-mapping>    <servlet-name>dispatcherServlet</servlet-name>    <url-pattern>/</url-pattern>  </servlet-mapping>

注意:
1.web2.3版本可能会报标签顺序错误,按要求调整一下就好了
2.第2、3步需要在resource文件夹下创建spring文件夹,在spring文件夹里创建applicationContext.xml和spring-servlet.xml,如图:这里写图片描述

资源配置文件

1.log4j.properties(放到resource文件夹下)

# Global logging configuration\uff0c\u5efa\u8bae\u5f00\u53d1\u73af\u5883\u4e2d\u8981\u7528debuglog4j.rootLogger=DEBUG, stdout# Console output...log4j.appender.stdout=org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.layout=org.apache.log4j.PatternLayoutlog4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n

2.db.properties(放到resource文件夹下)

#驱动jdbc.driver=com.mysql.jdbc.Driver#数据库地址jdbc.url=jdbc:mysql://localhost:3306/test1?useUnicode=true&amp;characterEncoding=utf-8&amp;autoReconnect=true#用户名jdbc.username=root#密码jdbc.password=root

3.spring-servlet.xml(放在resource/spring文件夹下)

<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"       xmlns:context="http://www.springframework.org/schema/context"       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"       xmlns:aop="http://www.springframework.org/schema/aop"       xmlns:mvc="http://www.springframework.org/schema/mvc"       xmlns:jee="http://www.springframework.org/schema/jee"       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/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd    http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee.xsd    http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd">    <!-- 自动扫描的包 -->    <context:component-scan base-package="com.shuangyang.**.controller"/>    <!-- 注解驱动 -->    <mvc:annotation-driven/>    <!-- 处理静态资源 -->    <mvc:default-servlet-handler/>    <!-- 处理器映射器 -->    <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"/>    <!-- 处理器适配器 -->    <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">        <!-- 加入 json数据的消息转换器 MappingJacksonHttpMessageConverter依赖Jackson的包 -->        <property name="messageConverters">            <list>                <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"></bean>            </list>        </property>    </bean>    <!-- 视图解析器 -->    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">        <property name="prefix" value="/WEB-INF/view/"/>        <property name="suffix" value=".jsp"/>    </bean></beans>

4.applicationContext.xml(放在resource/spring文件夹下)

<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"       xmlns:context="http://www.springframework.org/schema/context"       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"       xmlns:aop="http://www.springframework.org/schema/aop"       xmlns:mvc="http://www.springframework.org/schema/mvc"       xmlns:jee="http://www.springframework.org/schema/jee"       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/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd    http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee.xsd    http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd"><!-- 扫描service实现类的包 -->    <context:component-scan base-package="com.shuangyang.**.service.impl" use-default-filters="false">        <context:include-filter type="annotation" expression="org.springframework.stereotype.Service"/>        <context:include-filter type="annotation" expression="org.springframework.stereotype.Component"/>        <context:include-filter type="annotation" expression="org.springframework.stereotype.Repository"/>    </context:component-scan>    <!-- 加载其他的配置 -->    <import resource="classpath:spring/applicationContext-dao.xml"/></beans>

5.applicationContext-dao.xml(放在resource/spring文件夹下)

<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"       xmlns:context="http://www.springframework.org/schema/context"       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"       xmlns:aop="http://www.springframework.org/schema/aop"       xmlns:mvc="http://www.springframework.org/schema/mvc"       xmlns:jee="http://www.springframework.org/schema/jee"       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/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd    http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee.xsd    http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd">    <!-- 加载配置文件 -->    <context:property-placeholder location="classpath:db.properties" />    <!-- 数据源 -->    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" >        <property name="driverClassName" value="${jdbc.driver}" />        <property name="url" value="${jdbc.url}" />        <property name="username" value="${jdbc.username}"/>        <property name="password" value="${jdbc.password}"/>        <property name="maxActive" value="100"/>        <property name="maxIdle"  value="30"/>        <property name="maxWait" value="500"/>        <property name="defaultAutoCommit" value="true"/>        <property name="connectionProperties">            <value>charSet=utf-8</value>        </property>    </bean>    <!-- sqlSessionFactory -->    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">        <property name="dataSource" ref="dataSource" />        <!-- 自动扫描mapping.xml文件 -->        <property name="mapperLocations" value="classpath:mapper/**.xml"></property>        <!--             定义别名,默认首字母小写。typeAliasesPackage不支持通配符            若要typeAliasesPackage支持通配符,需要自定义SqlSessionFactoryBean ,            继承SqlSessionFactoryBean 重写setTypeAliasesPackage方法         -->        <!-- <property name="typeAliasesPackage" value="com.shuangyang.mould.login.bean,com.shuangyang.mould.mould1.bean"/> -->        <property name="typeAliasesPackage" value="com.shuangyang.test.bean"/>    </bean>    <!-- 扫描mapper(dao)包 -->    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">        <property name="basePackage" value="com.shuangyang.**.dao" />        <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>    </bean>    <!-- transactionManager -->    <bean id="transactionManager"          class="org.springframework.jdbc.datasource.DataSourceTransactionManager">        <property name="dataSource" ref="dataSource" />    </bean>    <!-- enable transaction annotation support -->    <tx:annotation-driven transaction-manager="transactionManager"/></beans>

6.在resource文件夹下创建mapper文件夹,将mybatis的xml文件放到mapper里面

工程截图

这里写图片描述

下载地址

ssm框架下载

阅读全文
2 0