有不少朋友在maven中因为pom文件依赖的事导致报错

今天我这个快速搭建ssm框架,确保在jdk7或者jdk8的环境,tomcat没什么要求。但如果要用jdk8的话,最好用run as中的server启动tomcat否则如果用maven build启动,输入浏览器地址进入jsp页面会报无法编译Jsp错误,这是因为maven自带tomcat6.jdk版本与tomcat存在冲突。导致jsp编译的环境有问题。

一、导入正确依赖

  1. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  2. <modelVersion>4.0.0</modelVersion>
  3. <groupId>cn.demo.test</groupId>
  4. <artifactId>test001</artifactId>
  5. <version>0.0.1-SNAPSHOT</version>
  6. <packaging>war</packaging>
  7.  
  8. <dependencies>
  9. <!-- 单元测试 -->
  10. <dependency>
  11. <groupId>junit</groupId>
  12. <artifactId>junit</artifactId>
  13. <version>3.8.1</version>
  14. <scope>test</scope>
  15. </dependency>
  16. <!-- spring核心包 -->
  17. <dependency>
  18. <groupId>org.springframework</groupId>
  19. <artifactId>spring-test</artifactId>
  20. <version>4.3.13.RELEASE</version>
  21. </dependency>
  22. <dependency>
  23. <groupId>org.springframework</groupId>
  24. <artifactId>spring-webmvc</artifactId>
  25. <version>4.3.13.RELEASE</version>
  26. </dependency>
  27. <dependency>
  28. <groupId>org.springframework</groupId>
  29. <artifactId>spring-core</artifactId>
  30. <version>4.3.13.RELEASE</version>
  31. </dependency>
  32. <dependency>
  33. <groupId>org.springframework</groupId>
  34. <artifactId>spring-aop</artifactId>
  35. <version>4.3.13.RELEASE</version>
  36. </dependency>
  37. <dependency>
  38. <groupId>aspectj</groupId>
  39. <artifactId>aspectjweaver</artifactId>
  40. <version>1.5.4</version>
  41. </dependency>
  42. <dependency>
  43. <groupId>aspectj</groupId>
  44. <artifactId>aspectjrt</artifactId>
  45. <version>1.5.4</version>
  46. </dependency>
  47. <dependency>
  48. <groupId>org.codehaus.jackson</groupId>
  49. <artifactId>jackson-mapper-asl</artifactId>
  50. <version>1.9.11</version>
  51. </dependency>
  52. <!--mybatis核心包 -->
  53. <dependency>
  54. <groupId>org.mybatis</groupId>
  55. <artifactId>mybatis</artifactId>
  56. <version>3.1.1</version>
  57. </dependency>
  58. <dependency>
  59. <groupId>org.mybatis</groupId>
  60. <artifactId>mybatis-spring</artifactId>
  61. <version>1.1.1</version>
  62. </dependency>
  63. <dependency>
  64. <groupId>mysql</groupId>
  65. <artifactId>mysql-connector-java</artifactId>
  66. <version>5.1.21</version>
  67. </dependency>
  68. <dependency>
  69. <groupId>c3p0</groupId>
  70. <artifactId>c3p0</artifactId>
  71. <version>0.9.1.2</version>
  72. <type>jar</type>
  73. </dependency>
  74. <!--打印日志 -->
  75. <dependency>
  76. <groupId>org.slf4j</groupId>
  77. <artifactId>slf4j-api</artifactId>
  78. <version>1.7.5</version>
  79. </dependency>
  80. <dependency>
  81. <groupId>org.slf4j</groupId>
  82. <artifactId>slf4j-log4j12</artifactId>
  83. <version>1.7.5</version>
  84. </dependency>
  85. <dependency>
  86. <groupId>log4j</groupId>
  87. <artifactId>log4j</artifactId>
  88. <version>1.2.17</version>
  89. </dependency>
  90. <dependency>
  91. <groupId>jstl</groupId>
  92. <artifactId>jstl</artifactId>
  93. <version>1.2</version>
  94. </dependency>
  95. <dependency>
  96. <groupId>org.springframework</groupId>
  97. <artifactId>spring-context-support</artifactId>
  98. <version>4.3.13.RELEASE</version>
  99.  
  100. </dependency>
  101. <!-- mybatis分页插件 -->
  102. <!-- <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId>
  103. <version>4.1.4</version> </dependency> --> <!-- javax.servlet.jsp-api -->
  104. <dependency>
  105. <groupId>javax.servlet.jsp</groupId>
  106. <artifactId>javax.servlet.jsp-api</artifactId>
  107. <version>2.2.1</version>
  108. <scope>provided</scope>
  109. </dependency>
  110. <!-- javax.servlet-api -->
  111. <dependency>
  112. <groupId>javax.servlet</groupId>
  113. <artifactId>javax.servlet-api</artifactId>
  114. <version>3.1.0</version>
  115. <scope>provided</scope>
  116. </dependency>
  117.  
  118. <!-- spring-web -->
  119. <dependency>
  120. <groupId>org.springframework</groupId>
  121. <artifactId>spring-web</artifactId>
  122. <version>4.3.13.RELEASE</version>
  123. </dependency>
  124.  
  125. <!-- spring-webmvc -->
  126. <dependency>
  127. <groupId>org.springframework</groupId>
  128. <artifactId>spring-webmvc</artifactId>
  129. <version>4.3.13.RELEASE</version>
  130. </dependency>
  131. <!-- 阿里巴巴fastjson -->
  132. <dependency>
  133. <groupId>com.alibaba</groupId>
  134. <artifactId>fastjson</artifactId>
  135. <version>1.2.41</version>
  136. </dependency>
  137. <!--dbcp -->
  138. <dependency>
  139. <groupId>org.apache.commons</groupId>
  140. <artifactId>commons-dbcp2</artifactId>
  141. <version>2.1.1</version>
  142. </dependency>
  143.  
  144. <!-- 辅助 -->
  145. <dependency>
  146. <groupId>com.google.code.gson</groupId>
  147. <artifactId>gson</artifactId>
  148. <version>2.2.4</version>
  149. </dependency>
  150.  
  151. <dependency>
  152. <groupId>org.apache.commons</groupId>
  153. <artifactId>commons-lang3</artifactId>
  154. <version>3.3.2</version>
  155. </dependency>
  156.  
  157. <!-- end -->
  158.  
  159. </dependencies>
  160. <build>
  161.  
  162. <plugins>
  163. <plugin>
  164. <groupId>org.apache.maven.plugins</groupId>
  165. <artifactId>maven-compiler-plugin</artifactId>
  166. <version>2.0.2</version>
  167. <configuration>
  168. <source>1.8</source>
  169. <target>1.8</target>
  170. </configuration>
  171. </plugin>
  172.  
  173. </plugins>
  174. </build>
  175. </project>

二、建立实体类和相应的mapper以及xml

  1. package cn.entity;
  2.  
  3. public class User {
  4.  
  5. private Integer Id;
  6. private String userName;
  7. private String PassWord;
  8. public Integer getId() {
  9. return Id;
  10. }
  11. public void setId(Integer id) {
  12. Id = id;
  13. }
  14. public String getUserName() {
  15. return userName;
  16. }
  17. public void setUserName(String userName) {
  18. this.userName = userName;
  19. }
  20. public String getPassWord() {
  21. return PassWord;
  22. }
  23. public void setPassWord(String passWord) {
  24. PassWord = passWord;
  25. }
  26.  
  27. }
  1. package cn.mapper;
  2.  
  3. import cn.entity.User;
  4.  
  5. public interface UserMapper {
  6.  
  7. public User selectUserInfo(String userName);
  8. }
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="cn.mapper.UserMapper">
  4.  
  5. <select id="selectUserInfo" parameterType="String" resultType="User">
  6. select * from `user` where userName=#{userName}
  7.  
  8. </select>
  9.  
  10. </mapper>

三、建立service以及service的实现类

  1. package cn.service;
  2.  
  3. import cn.entity.User;
  4.  
  5. public interface UserService {
  6.  
  7. public User selectUserInfo(String userName);
  8. }
  1. package cn.service.impl;
  2.  
  3. import org.springframework.beans.factory.annotation.Autowired;
  4. import org.springframework.stereotype.Service;
  5.  
  6. import cn.entity.User;
  7. import cn.mapper.UserMapper;
  8. import cn.service.UserService;
  9.  
  10. @Service
  11. public class UserServiceImpl implements UserService {
  12.  
  13. @Autowired
  14. private UserMapper userMapper;
  15.  
  16. @Override
  17. public User selectUserInfo(String userName) {
  18. // TODO Auto-generated method stub
  19. return userMapper.selectUserInfo(userName);
  20. }
  21.  
  22. }

四、进行Junit测试,确保application-config.xml的配置和Mybatis配置正确

  1. package cn.test;
  2.  
  3. import org.junit.Test;
  4. import org.junit.runner.RunWith;
  5. import org.springframework.beans.factory.annotation.Autowired;
  6. import org.springframework.test.context.ContextConfiguration;
  7. import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
  8.  
  9. import cn.entity.User;
  10. import cn.mapper.UserMapper;
  11.  
  12. @RunWith(SpringJUnit4ClassRunner.class)
  13. @ContextConfiguration("classpath:application-config.xml")
  14. public class JunitTest {
  15.  
  16. @Autowired
  17. private UserMapper userMapper;
  18.  
  19. @Test
  20. public void testName() throws Exception {
  21.  
  22. User user = userMapper.selectUserInfo("youcong");
  23. System.out.println(user.getPassWord());
  24.  
  25. }
  26. }

五、ssm的基本配置xml文件

application-config.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" xmlns:p="http://www.springframework.org/schema/p"
  4. xmlns:c="http://www.springframework.org/schema/c" xmlns:util="http://www.springframework.org/schema/util"
  5. xmlns:aop="http://www.springframework.org/schema/aop" xmlns:mvc="http://www.springframework.org/schema/mvc"
  6. xmlns:tx="http://www.springframework.org/schema/tx" xmlns:context="http://www.springframework.org/schema/context"
  7. xmlns:ehcache="http://www.springmodules.org/schema/ehcache"
  8. xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
  9. http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.1.xsd
  10. http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd
  11. http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd
  12. http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd
  13. http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.1.xsd
  14. http://www.springmodules.org/schema/ehcache http://www.springmodules.org/schema/cache/springmodules-ehcache.xsd">
  15.  
  16. <!-- 自动扫描(自动注入) -->
  17. <context:component-scan base-package="cn.service" />
  18. <!-- 配置连接池 -->
  19. <bean id="dataSource" class="org.apache.commons.dbcp2.BasicDataSource">
  20. <property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
  21. <property name="url" value="jdbc:mysql://localhost:3306/test"></property>
  22. <property name="username" value="root"></property>
  23. <property name="password" value="1234"></property>
  24. </bean>
  25.  
  26. <!-- myBatis文件 -->
  27. <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
  28. <property name="dataSource" ref="dataSource" />
  29. <!-- 自动扫描entity目录, 省掉Configuration.xml里的手工配置 -->
  30. <property name="configLocation" value="classpath:mybatis-config.xml" />
  31. </bean>
  32.  
  33. <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
  34. <property name="basePackage" value="cn.mapper" />
  35. <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />
  36. </bean>
  37. <!-- 配置事务管理器 -->
  38. <bean id="transactionManager"
  39. class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
  40. <property name="dataSource" ref="dataSource" />
  41. </bean>
  42.  
  43. <!-- 配置事物的注解方式注入 -->
  44. <tx:annotation-driven transaction-manager="transactionManager" />
  45.  
  46. </beans>

application-mvc.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" xmlns:p="http://www.springframework.org/schema/p"
  4. xmlns:c="http://www.springframework.org/schema/c" xmlns:util="http://www.springframework.org/schema/util"
  5. xmlns:aop="http://www.springframework.org/schema/aop" xmlns:mvc="http://www.springframework.org/schema/mvc"
  6. xmlns:tx="http://www.springframework.org/schema/tx" xmlns:context="http://www.springframework.org/schema/context"
  7. xmlns:ehcache="http://www.springmodules.org/schema/ehcache"
  8. xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
  9. http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.1.xsd
  10. http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd
  11. http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd
  12. http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd
  13. http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.1.xsd
  14. http://www.springmodules.org/schema/ehcache http://www.springmodules.org/schema/cache/springmodules-ehcache.xsd">
  15.  
  16. <!-- 扫描Controller层 -->
  17. <context:component-scan base-package="cn.controller" />
  18. <!-- 存在問題 -->
  19. <!-- <mvc:annotation-driven> <mvc:message-converters> <bean class="org.springframework.http.converter.StringHttpMessageConverter">
  20. <property name="supportedMediaTypes"> <list> <value>application/json;charset=UTF-8</value>
  21. </list> </property> </bean> </mvc:message-converters> </mvc:annotation-driven> -->
  22.  
  23. <!-- 开启注解 -->
  24. <mvc:annotation-driven />
  25.  
  26. <!-- 对模型视图名称的解析,即在模型视图名称添加前后缀 -->
  27. <bean
  28. class="org.springframework.web.servlet.view.InternalResourceViewResolver">
  29. <property name="prefix" value="/WEB-INF/view/" />
  30. <property name="suffix" value=".jsp" /><!--可为空,方便实现自已的依据扩展名来选择视图解释类的逻辑 -->
  31. </bean>
  32.  
  33. </beans>

log4j配置文件

  1. #config root logger
  2. log4j.rootLogger = INFO,system.out
  3. log4j.appender.system.out=org.apache.log4j.ConsoleAppender
  4. log4j.appender.system.out.layout=org.apache.log4j.PatternLayout
  5. log4j.appender.system.out.layout.ConversionPattern=[Log] %5p[%F:%L]:%m%n
  6.  
  7. #config this Project.file logger
  8. log4j.logger.thisProject.file=INFO,thisProject.file.out
  9. log4j.appender.thisProject.file.out=org.apache.log4j.DailyRollingFileAppender
  10. log4j.appender.thisProject.file.out.File=logContentFile.log
  11. log4j.appender.thisProject.file.out.layout=org.apache.log4j.PatternLayout

mybatis-config.xml配置文件

  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
  3. <configuration>
  4. <typeAliases>
  5. <!-- 给cn.entity包下起别名 -->
  6. <package name="cn.entity" />
  7.  
  8. </typeAliases>
  9.  
  10. </configuration>

web.xml配置文件

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">
  3. <display-name>test001</display-name>
  4. <!-- Spring-mybatis的配置文件 -->
  5. <context-param>
  6. <param-name>contextConfigLocation</param-name>
  7. <param-value>classpath:application-config.xml</param-value>
  8. </context-param>
  9.  
  10. <listener>
  11. <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  12. </listener>
  13.  
  14. <!-- spring mvc servlet -->
  15. <servlet>
  16. <description>spring mvc servlet</description>
  17. <servlet-name>springMvc</servlet-name>
  18. <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  19. <init-param>
  20. <param-name>contextConfigLocation</param-name>
  21. <param-value>classpath:application-mvc.xml</param-value>
  22. </init-param>
  23. <load-on-startup>1</load-on-startup>
  24. </servlet>
  25. <servlet-mapping>
  26. <servlet-name>springMvc</servlet-name>
  27. <url-pattern>*.do</url-pattern>
  28. </servlet-mapping>
  29.  
  30. <filter>
  31. <filter-name>encodingFilter</filter-name>
  32. <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
  33. <init-param>
  34.  
  35. <param-name>encoding</param-name>
  36. <param-value>UTF-8</param-value>
  37. </init-param>
  38. </filter>
  39. <filter-mapping>
  40. <filter-name>encodingFilter</filter-name>
  41. <url-pattern>/*</url-pattern>
  42. </filter-mapping>
  43.  
  44. <!-- DEFAULT PAGE -->
  45. <welcome-file-list>
  46. <welcome-file>/WEB-INF/view/index.jsp</welcome-file>
  47. </welcome-file-list>
  48.  
  49. </web-app>

SSM框架之整合(Maven实例)的更多相关文章

  1. SSM 框架快速整合实例--学生查询

    一.快速准备 SSM 框架即 Spring 框架.SpringMVC 框架.MyBatis 框架,关于这几个框架的基础和入门程序,我前面已经写过几篇文章作为基础和入门介绍了.对于这 3 个框架还不熟悉 ...

  2. SSM框架快速整合实例——学生查询

    一.快速准备 SSM 框架即 Spring 框架.SpringMVC 框架.MyBatis 框架,关于这几个框架的基础和入门程序,我前面已经写过几篇文章作为基础和入门介绍了.这里再简单的介绍一下: 1 ...

  3. SSM框架——详细整合教程

    SSM框架——详细整合教程(Spring+SpringMVC+MyBatis) 1.基本概念   1.1.Spring Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Jav ...

  4. SSM框架的整合思路&功能实现

    这是我第一篇博客,关于SSM框架的整合思路以及简单功能实现. 首先,最近刚刚学习Spring+SpringMVC+Mybatis,在开发时遇到形形色色的问题,周遭人也为我提供了一些思路,我会一点点整理 ...

  5. SSM框架——详细整合教程(Spring+SpringMVC+MyBatis)【申明:来源于网络】

    SSM框架--详细整合教程(Spring+SpringMVC+MyBatis)[申明:来源于网络] 地址:http://blog.csdn.net/u014662268/article/details ...

  6. SSM 框架-04-使用maven创建web项目

    SSM 框架-04-使用maven创建web项目 本篇介绍使用MAVEN来管理jar包,就不用一个一个去添加和下载jar包了,直接在maven配置文件中配置就可以了,maven可以帮助我们自动下载.本 ...

  7. SSM 框架-03-MyEclipse+Tomcat+MAVEN+SVN项目完整环境搭建

    SSM 框架-03-MyEclipse+Tomcat+MAVEN+SVN项目完整环境搭建 如果你是使用 Eclipse 你需要先安装 MyEclipse,请参考:SSM 框架-02-MyEclipse ...

  8. SSM框架的整合与使用——实现简单的转账系统

    一.整合思路 SSM框架即SpringMVC + Spring + MyBati框架集,是一种轻量级的Web开源框架.它们各自在JAVA三层架构中负责的模块如下图所示: 其中,SpringMVC与Sp ...

  9. Maven整合SSM框架——详细整合教程(Spring+SpringMVC+MyBatis)

    使用SSM(Spring.SpringMVC和Mybatis)已经有三个多月了,项目在技术上已经没有什么难点了,基于现有的技术就可以实现想要的功能,当然肯定有很多可以改进的地方.之前没有记录SSM整合 ...

随机推荐

  1. ubuntu安装ftp server服务

    原文地址: https://jingyan.baidu.com/article/7908e85c988b23af481ad2ae.html 首先,更新软件源,保证源是最新的,这样有利于下面在线通过ap ...

  2. Oracle绑定变量在C#.NET中的应用及意义

    一. 什么是绑定变量 绑定变量(bind variable) : select * from emp where empno=:empno; 是用户放入查询中的占位符,它会告诉Oracle“我会随后为 ...

  3. Apex的对象共享

    Apex的对象共享 在Apex中,每个对象都有一个"共享"对象,其中存储了该对象的共享设定. 这种共享对象以"share"结尾.比如Account的共享对象是A ...

  4. 实践:配置keepalived实现主备热备份功能

    图: 配置文件: 主服务器的配置如下: global_defs { router_id NodeA}vrrp_instance VI_1 { state MASTER #设置为主服务器 interfa ...

  5. Loadrunner 脚本开发-利用Loadrunner生成Web service测试脚本

    脚本开发-利用Loadrunner生成Web service测试脚本 1.选择协议--Web Service,如下图 2.导入服务 入口1:点击Manage Services ->弹出窗中选择“ ...

  6. 一. Redis 常用命令

    键值相关命令 1. KETS 查询所有的key 127.0.0.1:6379> keys * 1) "tony"2) "hexu1"3) "he ...

  7. id、name、setter方法注入、构造方法注入、工厂方法注入、注解注入、方法注入、方法替换、Web作用域、普通bean引用Web作用域的bean

    spring IoC的id和name id的命名需要满足XML对id的命名规范,必须以字母开始,后面可以是字母.数字.连字符.下画线.句号.冒号等等号,但逗号和空格是非法的.如果用户确实希望用一些特殊 ...

  8. (网页)Http状态码大全(200、404、500等)(转CSDN)

    当我们从客户端向服务器发送请求时 服务器向我们返回状态码 状态码就是告诉我们服务器响应的状态 通过它,我们就可以知道当前请求是成功了还是出现了什么问题 状态码是由3位数字和原因短语组成的(比如最常见的 ...

  9. JavaScript大杂烩5 - JavaScript对象的若干问题

    1. 类型检查:instanceof与typeof 这是两个相似的操作符,instanceof用于检测函数的实例类型,主要是在面向对象编程中检查new出来的对象类型,需要注意instanceof是检查 ...

  10. matlab练习程序(FAST特征点检测)

    算法思想:如果一个像素与它邻域的像素差别较大(过亮或过暗) , 那它更可能是角点. 算法步骤: 1.上图所示,一个以像素p为中心,半径为3的圆上,有16个像素点(p1.p2.....p16). 2.定 ...