搭建Spring+Spring MVC+MyBatis+FreeMarker+Maven框架实战

实战讲解搭建Spring+Spring MVC+MyBatis+FreeMarker+Maven框架

提醒JDK 1.8 的以上的请把 POM.XML 里Spring 版本换到4以上!!!

 

一、项目结构如下:

 

二、Maven pom.xml 配置如下:

Xml代码   收藏代码
  1. <project xmlns="http://maven.apache.org/POM/4.0.0"   
  2.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   
  3.     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">  
  4.   <modelVersion>4.0.0</modelVersion>  
  5.   <groupId>com.xieke.test</groupId>  
  6.   <artifactId>ssm-freemarker-demo</artifactId>  
  7.   <version>0.0.1-SNAPSHOT</version>  
  8.   <packaging>war</packaging>  
  9.     
  10.    <build>  
  11.         <finalName>ssm-freemarker-demo</finalName>  
  12.    </build>  
  13.   
  14.    <dependencies>  
  15.        <dependency>  
  16.            <groupId>junit</groupId>  
  17.            <artifactId>junit</artifactId>  
  18.            <version>4.11</version>  
  19.            <scope>test</scope>  
  20.        </dependency>  
  21.   
  22.        <!-- spring jar -->  
  23.        <dependency>  
  24.            <groupId>org.springframework</groupId>  
  25.            <artifactId>spring-core</artifactId>  
  26.            <version>3.2.6.RELEASE</version>  
  27.        </dependency>  
  28.        <dependency>  
  29.            <groupId>org.springframework</groupId>  
  30.            <artifactId>spring-context</artifactId>  
  31.            <version>3.2.6.RELEASE</version>  
  32.        </dependency>  
  33.        <dependency>  
  34.            <groupId>org.springframework</groupId>  
  35.            <artifactId>spring-context-support</artifactId>  
  36.            <version>3.2.6.RELEASE</version>  
  37.        </dependency>  
  38.        <dependency>  
  39.            <groupId>org.springframework</groupId>  
  40.            <artifactId>spring-tx</artifactId>  
  41.            <version>3.2.6.RELEASE</version>  
  42.        </dependency>  
  43.        <dependency>  
  44.            <groupId>org.springframework</groupId>  
  45.            <artifactId>spring-aop</artifactId>  
  46.            <version>3.2.6.RELEASE</version>  
  47.        </dependency>  
  48.        <dependency>  
  49.            <groupId>org.springframework</groupId>  
  50.            <artifactId>spring-beans</artifactId>  
  51.            <version>3.2.6.RELEASE</version>  
  52.        </dependency>  
  53.        <dependency>  
  54.            <groupId>org.springframework</groupId>  
  55.            <artifactId>spring-jdbc</artifactId>  
  56.            <version>3.2.6.RELEASE</version>  
  57.        </dependency>  
  58.   
  59.        <!-- spring mvc jar -->  
  60.        <dependency>  
  61.            <groupId>org.springframework</groupId>  
  62.            <artifactId>spring-web</artifactId>  
  63.            <version>3.2.6.RELEASE</version>  
  64.        </dependency>  
  65.        <dependency>  
  66.            <groupId>org.springframework</groupId>  
  67.            <artifactId>spring-webmvc</artifactId>  
  68.            <version>3.2.6.RELEASE</version>  
  69.        </dependency>  
  70.   
  71.        <!-- mybatis jar -->  
  72.        <dependency>  
  73.            <groupId>org.mybatis</groupId>  
  74.            <artifactId>mybatis</artifactId>  
  75.            <version>3.2.4</version>  
  76.        </dependency>  
  77.   
  78.        <!-- mybatis-spring jar -->  
  79.        <dependency>  
  80.            <groupId>org.mybatis</groupId>  
  81.            <artifactId>mybatis-spring</artifactId>  
  82.            <version>1.2.2</version>  
  83.        </dependency>  
  84.   
  85.        <!-- mysql-connector-java jar -->  
  86.        <dependency>  
  87.            <groupId>mysql</groupId>  
  88.            <artifactId>mysql-connector-java</artifactId>  
  89.            <version>5.1.28</version>  
  90.        </dependency>  
  91.        <!-- 数据库连接池 jar -->  
  92.        <dependency>  
  93.            <groupId>commons-dbcp</groupId>  
  94.            <artifactId>commons-dbcp</artifactId>  
  95.            <version>1.4</version>  
  96.        </dependency>  
  97.        <dependency>  
  98.            <groupId>commons-pool</groupId>  
  99.            <artifactId>commons-pool</artifactId>  
  100.            <version>1.6</version>  
  101.        </dependency>  
  102.   
  103.        <!-- log jar -->  
  104.        <dependency>  
  105.            <groupId>log4j</groupId>  
  106.            <artifactId>log4j</artifactId>  
  107.            <version>1.2.17</version>  
  108.        </dependency>  
  109.        <dependency>  
  110.            <groupId>org.slf4j</groupId>  
  111.            <artifactId>slf4j-api</artifactId>  
  112.            <version>1.7.5</version>  
  113.        </dependency>  
  114.        <dependency>  
  115.            <groupId>org.slf4j</groupId>  
  116.            <artifactId>slf4j-log4j12</artifactId>  
  117.            <version>1.7.5</version>  
  118.        </dependency>  
  119.   
  120.        <!-- jsp Template jar -->  
  121.        <dependency>  
  122.            <groupId>org.freemarker</groupId>  
  123.            <artifactId>freemarker</artifactId>  
  124.            <version>2.3.20</version>  
  125.        </dependency>  
  126.   
  127.        <!-- apache servlet api jar -->  
  128.        <dependency>  
  129.            <groupId>org.apache.tomcat</groupId>  
  130.            <artifactId>servlet-api</artifactId>  
  131.            <version>6.0.37</version>  
  132.        </dependency>  
  133.    </dependencies>  
  134.      
  135. </project>  

 

三、项目 web.xml配置如下:

Xml代码   收藏代码
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  3.     xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"  
  4.     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"  
  5.     version="3.0">  
  6.   
  7.     <!-- 配置log4j日志   -->    
  8.     <context-param>    
  9.      <param-name>log4jConfigLocation</param-name>    
  10.      <param-value>classpath:log4j.properties</param-value>    
  11.     </context-param>    
  12.     <listener>    
  13.      <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>    
  14.     </listener>    
  15.   
  16.     <!-- 字符集过滤器 -->  
  17.     <filter>  
  18.         <filter-name>CharacterEncodingFilter</filter-name>  
  19.         <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>  
  20.         <init-param>  
  21.             <param-name>encoding</param-name>  
  22.             <param-value>UTF-8</param-value>  
  23.         </init-param>  
  24.         <init-param>  
  25.             <param-name>forceEncoding</param-name>  
  26.             <param-value>true</param-value>  
  27.         </init-param>  
  28.     </filter>  
  29.     <filter-mapping>  
  30.         <filter-name>CharacterEncodingFilter</filter-name>  
  31.         <url-pattern>/*</url-pattern>  
  32.     </filter-mapping>  
  33.      
  34.     <!-- Spring mvc 配置,配置文件名称默认为{servlet-name}-servlet.xml,路径默认在/WEB-INF/下 -->  
  35.     <servlet>  
  36.         <servlet-name>springmvc</servlet-name>  
  37.         <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>  
  38.          <init-param>    
  39.            <param-name>contextConfigLocation</param-name>    
  40.            <param-value>classpath:spring/*.xml</param-value>    
  41.          </init-param>    
  42.         <load-on-startup>1</load-on-startup>  
  43.     </servlet>  
  44.     <servlet-mapping>  
  45.         <servlet-name>springmvc</servlet-name>  
  46.         <url-pattern>/</url-pattern>  
  47.     </servlet-mapping>  
  48.       
  49. </web-app>  

 

四、Spring applicationContext.xml配置如下:

Xml代码   收藏代码
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <beans xmlns="http://www.springframework.org/schema/beans"    
  3.        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    
  4.        xmlns:p="http://www.springframework.org/schema/p"    
  5.        xmlns:tx="http://www.springframework.org/schema/tx"    
  6.        xmlns:aop="http://www.springframework.org/schema/aop"    
  7.        xmlns:context="http://www.springframework.org/schema/context"    
  8.        xsi:schemaLocation="http://www.springframework.org/schema/beans    
  9.        http://www.springframework.org/schema/beans/spring-beans-3.0.xsd    
  10.        http://www.springframework.org/schema/tx    
  11.        http://www.springframework.org/schema/tx/spring-tx-3.0.xsd    
  12.        http://www.springframework.org/schema/aop    
  13.        http://www.springframework.org/schema/aop/spring-aop-3.0.xsd    
  14.        http://www.springframework.org/schema/context    
  15.        http://www.springframework.org/schema/context/spring-context-2.5.xsd"    
  16.        default-init-method="init">  
  17.                           
  18.     <!-- 引入jdbc配置文件 -->    
  19.     <context:property-placeholder location="classpath:jdbc.properties" />    
  20.         
  21.     <!--创建jdbc数据源 -->    
  22.     <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">    
  23.         <property name="driverClassName" value="${driver}" />    
  24.         <property name="url" value="${url}" />    
  25.         <property name="username" value="${username}" />    
  26.         <property name="password" value="${password}" />    
  27.     </bean>    
  28.      
  29.     <!-- 创建SqlSessionFactory,同时指定数据源 -->    
  30.     <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">    
  31.         <property name="dataSource" ref="dataSource" />    
  32.         <!-- 配置sql映射文件所在位置  注意:默认与mapper类位置相同   -->    
  33.         <property name="mapperLocations" value="classpath:sqlmap/*.xml" />    
  34.     </bean>    
  35.      
  36.     <!-- 配置事务管理器,全注解声明式事务  -->    
  37.     <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">    
  38.         <property name="dataSource" ref="dataSource" />    
  39.     </bean>    
  40.     <tx:annotation-driven transaction-manager="transactionManager" />    
  41.        
  42.     <!-- Mapper接口所在包名,Spring会自动查找其下的Mapper -->    
  43.     <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">    
  44.         <property name="basePackage" value="com.xieke.test.mapper" />    
  45.         <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />    
  46.         <!-- 默认情况下会自动注入id=sqlSessionFactory的bean,也可以按上述方式指定sqlSessionFactory -->    
  47.     </bean>    
  48.   
  49. </beans>  

 

五、Spring MVC springmvc-servlet.xml配置如下:

Xml代码   收藏代码
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <beans xmlns="http://www.springframework.org/schema/beans"  
  3.     xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context"  
  4.     xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:tx="http://www.springframework.org/schema/tx"  
  5.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  6.     xsi:schemaLocation="http://www.springframework.org/schema/aop     
  7.         http://www.springframework.org/schema/aop/spring-aop-3.0.xsd     
  8.         http://www.springframework.org/schema/beans     
  9.         http://www.springframework.org/schema/beans/spring-beans-3.0.xsd     
  10.         http://www.springframework.org/schema/context     
  11.         http://www.springframework.org/schema/context/spring-context-3.0.xsd     
  12.         http://www.springframework.org/schema/mvc     
  13.         http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd     
  14.         http://www.springframework.org/schema/tx     
  15.         http://www.springframework.org/schema/tx/spring-tx-3.0.xsd" >  
  16.   
  17.     <!-- 扫描com.xieke.test包下的所有class文件,配置注解的类全都装入容器中进行管理 -->  
  18.     <context:component-scan base-package="com.xieke.test" />  
  19.     <!-- 添加注解驱动 -->  
  20.     <mvc:annotation-driven />  
  21.     <!-- 静态资源处理 -->  
  22.     <mvc:resources mapping="/**" location="/"/>  
  23.       
  24.     <mvc:view-controller path="/" view-name="redirect:/user/all"/>    
  25.   
  26.     <!-- FreeMarker视图解析器  -->  
  27.     <bean id="freemarkerResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">  
  28.         <property name="order" value="1" />  
  29.         <property name="suffix" value=".ftl" />  
  30.         <property name="contentType" value="text/html;charset=utf-8" />  
  31.         <property name="viewClass">  
  32.             <value>org.springframework.web.servlet.view.freemarker.FreeMarkerView</value>  
  33.         </property>  
  34.     </bean>  
  35.       
  36.     <!-- freemarker的配置 -->    
  37.     <bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">  
  38.         <property name="templateLoaderPath">  
  39.             <value>/WEB-INF/views/</value>  
  40.         </property>  
  41.         <property name="freemarkerSettings"><!-- 设置FreeMarker环境属性 -->  
  42.             <props>  
  43.                 <prop key="template_update_delay">5</prop><!--刷新模板的周期,单位为秒 -->  
  44.                 <prop key="default_encoding">UTF-8</prop><!--模板的编码格式 -->  
  45.                 <prop key="locale">UTF-8</prop><!-- 本地化设置 -->  
  46.                 <prop key="datetime_format">yyyy-MM-dd HH:mm:ss</prop>  
  47.                 <prop key="time_format">HH:mm:ss</prop>  
  48.                 <prop key="number_format">0.####</prop>  
  49.                 <prop key="boolean_format">true,false</prop>  
  50.                 <prop key="whitespace_stripping">true</prop>  
  51.                 <prop key="tag_syntax">auto_detect</prop>  
  52.                 <prop key="url_escaping_charset">UTF-8</prop>  
  53.             </props>  
  54.         </property>  
  55.     </bean>  
  56.       
  57. </beans>  

   至此搭建完毕,以上是主要的配置文件,想详细了解的,可以下载查看源代码,下载地址为:       http://pan.baidu.com/s/1c7e8eM

 

转载请注明出处: http://xieke90.iteye.com/blog/2302912

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JEECMS内容管理系统是国内java开源CMS行业知名度最高、用户量最大的站群管理系统。 功能: 信息管理 ├ 文章 ├ 相册 ├ 多媒体 ├ 视频 ├ 下载 ├ 作品 ├ 产品 ├ 文库 ├ 招聘 互动信息 ├ 留言与反馈 ├ 评论 ├ 投票调查 ├ 在线调查问卷/答卷 ├ 通知公告 ├ 领导信箱 ├ 站内信 ├ 广告管理 用户与权限 ├ 用户管理 ├ 会员组管理 ├ 会员组权限管理 ├ 信息发布审批 ├ 会员浏览权限 ├ 部门管理 ├ 工作流 日志管理 ├ 操作日志 ├ 稿件操作日志 ├ 登录日志 ├ 工作量统计 统计功能 ├ 会员注册统计 ├ 内容统计 ├ 评论统计 ├ 留言统计 ├ PV统计 ├ 独立IP统计 ├ 独立访客统计 ├ 人均浏览次数统计 ├ 来访网站统计 ├ 来访页面统计 ├ 搜索关键字统计 ├ 受访页面统计 ├ 地区分布统计 ├ 统计初始化 发布与部署 ├ 文章静态化 ├ 全站静态化 ├ FTP同步 ├ 服务器分布部署 ├ 批处理 (批量移动文章/栏目、批量删除、批量上传图片/附件等) ├ 一键排版 ├ 定时任务 ├ tag自动提取 站点配置 ├ 网站参数配置 ├ 用户注册配置 ├ RSS配置 ├ RSS订阅 ├ TAG管理 ├ 文件上传配置 ├ 模板管理 ├ 自定义模板 ├ 可视化模板编辑 ├ 全文检索 ├ 友情链接管理 系统管理 ├ 内容关键字管理 ├ 自定义模型管理(自定义栏目/内容模型,一个栏目支持多种内容模型) ├ 网页信息采集 ├ 模块管理 ├ 数据备份与恢复 ├ 网站防火墙 ├ 附件管理 ├ 字典管理 ├ 国际化(前后台可以设置成多语言,目前系统自带后台英文操作菜单) ├ 系统支持PC端、移动端访问 网站群 ├ 节点维护 ├ 节点独立管理 ├ 站点信息共享管理 ├ 站点信息推送 ├ 全站搜索
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值