创建maven SSM项目包名、目录POM文件?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instance xsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd modelVersion4.0.0/modelVersion groupIdcom.qiuhen.m.ssm/groupId artifactIdmake/artifactId version1.0-SNAPSHOT/version packagingwar/packaging namemake Maven Webapp/name properties project.build.sourceEncodingUTF-8/project.build.sourceEncoding maven.compiler.source1.8/maven.compiler.source maven.compiler.target1.8/maven.compiler.target spring.version4.3.13.RELEASE/spring.version /properties dependencies !--Spring-- dependency groupIdorg.springframework/groupId artifactIdspring-core/artifactId version4.3.5.RELEASE/version /dependency dependency groupIdorg.springframework/groupId artifactIdspring-aop/artifactId version4.3.5.RELEASE/version /dependency dependency groupIdorg.springframework/groupId artifactIdspring-orm/artifactId version4.3.5.RELEASE/version /dependency dependency groupIdorg.springframework/groupId artifactIdspring-web/artifactId version4.3.5.RELEASE/version /dependency dependency groupIdorg.springframework/groupId artifactIdspring-webmvc/artifactId version4.3.5.RELEASE/version /dependency dependency groupIdorg.springframework/groupId artifactIdspring-tx/artifactId version4.3.5.RELEASE/version /dependency dependency groupIdorg.springframework/groupId artifactIdspring-test/artifactId version4.3.5.RELEASE/version /dependency dependency groupIdorg.springframework/groupId artifactIdspring-jdbc/artifactId version4.3.5.RELEASE/version /dependency dependency groupIdorg.springframework/groupId artifactIdspring-mock/artifactId version2.0.8/version /dependency dependency groupIdorg.springframework/groupId artifactIdspring-context/artifactId version4.3.5.RELEASE/version /dependency dependency groupIdorg.springframework/groupId artifactIdspring-expression/artifactId version4.3.5.RELEASE/version /dependency dependency groupIdorg.springframework/groupId artifactIdspring-context-support/artifactId version4.3.5.RELEASE/version /dependency !-- mybatis-spring -- dependency groupIdorg.mybatis/groupId artifactIdmybatis-spring/artifactId version1.3.1/version /dependency !-- mybatis 出现分页使用异常,极有可能是版本问题-- dependency groupIdorg.mybatis/groupId artifactIdmybatis/artifactId version3.2.8/version /dependency !-- mybatis pagehelper -- dependency groupIdcom.github.pagehelper/groupId artifactIdpagehelper/artifactId version3.7.3/version /dependency dependency groupIdcom.github.jsqlparser/groupId artifactIdjsqlparser/artifactId version0.9.1/version /dependency !--servlet、基本包-- dependency groupIdjavax.servlet/groupId artifactIdservlet-api/artifactId version3.0-alpha-1/version /dependency dependency groupIdjavax.servlet/groupId artifactIdjstl/artifactId version1.2/version /dependency dependency groupIdtaglibs/groupId artifactIdstandard/artifactId version1.1.2/version /dependency dependency groupIdorg.aspectj/groupId artifactIdaspectjrt/artifactId version1.8.10/version /dependency dependency groupIdorg.aspectj/groupId artifactIdaspectjweaver/artifactId version1.8.10/version /dependency dependency groupIdcommons-lang/groupId artifactIdcommons-lang/artifactId version2.6/version /dependency dependency groupIddom4j/groupId artifactIddom4j/artifactId version1.6.1/version /dependency !--mysql驱动包-- dependency groupIdmysql/groupId artifactIdmysql-connector-java/artifactId version5.1.40/version /dependency !--dbcp连接池-- dependency groupIdcommons-dbcp/groupId artifactIdcommons-dbcp/artifactId version1.4/version /dependency !--json、基本包-- dependency groupIdcom.alibaba/groupId artifactIdfastjson/artifactId version1.2.23/version /dependency dependency groupIdxml-apis/groupId artifactIdxml-apis/artifactId version2.0.2/version /dependency dependency groupIdcommons-net/groupId artifactIdcommons-net/artifactId version3.5/version /dependency !-- 日志文件管理包 -- dependency groupIdorg.slf4j/groupId artifactIdslf4j-api/artifactId version1.7.22/version /dependency dependency groupIdorg.slf4j/groupId artifactIdslf4j-log4j12/artifactId version1.7.22/version /dependency dependency groupIdlog4j/groupId artifactIdlog4j/artifactId version1.2.17/version /dependency !-- junit4 -- dependency groupIdjunit/groupId artifactIdjunit/artifactId version4.12/version scopetest/scope /dependency !-- https://mvnrepository.com/artifact/commons-fileupload/commons-fileupload -- dependency groupIdcommons-fileupload/groupId artifactIdcommons-fileupload/artifactId version1.4/version /dependency /dependencies build finalNamemake/finalName pluginManagement!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -- plugins plugin artifactIdmaven-clean-plugin/artifactId version3.1.0/version /plugin !-- see http://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_war_packaging -- plugin artifactIdmaven-resources-plugin/artifactId version3.0.2/version /plugin plugin artifactIdmaven-compiler-plugin/artifactId version3.8.0/version /plugin plugin artifactIdmaven-surefire-plugin/artifactId version2.22.1/version /plugin plugin artifactIdmaven-war-plugin/artifactId version3.2.2/version /plugin plugin artifactIdmaven-install-plugin/artifactId version2.5.2/version /plugin plugin artifactIdmaven-deploy-plugin/artifactId version2.8.2/version /plugin /plugins /pluginManagement /build /project引入spring、mybatis、mysql等相关jar包Web.xml的相关配置?xml version1.0 encodingUTF-8? web-app xmlns:xsihttp://www.w3.org/2001/XMLSchema-instance xmlnshttp://java.sun.com/xml/ns/javaee xsi:schemaLocationhttp://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd idWebApp_ID version3.0 display-nameSpringMVC/display-name welcome-file-list welcome-file/WEB-INF/index.jsp/welcome-file /welcome-file-list !-- 加载log4j -- context-param param-namelog4jConfigLocation/param-name param-valueclasspath:config/log4j.properties/param-value /context-param listener listener-classorg.springframework.web.util.Log4jConfigListener/listener-class /listener !-- 配置请求转发、拦截器 -- servlet servlet-namespringmvc/servlet-name servlet-classorg.springframework.web.servlet.DispatcherServlet/servlet-class !-- 初始化springmvc的配置文件 -- init-param param-namecontextConfigLocation/param-name param-valueclasspath:spring/springmvc.xml/param-value /init-param /servlet servlet-mapping servlet-namespringmvc/servlet-name !-- 配置拦截规则 -- url-pattern*.action/url-pattern !--后缀名自起常用.do\.action-- /servlet-mapping !-- 配置spring监听器项目启动加载spring的配置 -- context-param param-namecontextConfigLocation/param-name param-valueclasspath:spring/applicationContext.xml/param-value /context-param listener listener-classorg.springframework.web.context.ContextLoaderListener/listener-class /listener filter filter-nameencoding/filter-name filter-classorg.springframework.web.filter.CharacterEncodingFilter/filter-class init-param param-nameencoding/param-name param-valueUTF-8/param-value /init-param /filter filter-mapping filter-nameencoding/filter-name url-pattern*.action/url-pattern /filter-mapping /web-appapplicationContext配置文件springs的核心配置?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beans xmlns:xsihttp://www.w3.org/2001/XMLSchema-instance xmlns:contexthttp://www.springframework.org/schema/context xmlns:aophttp://www.springframework.org/schema/aop xmlns:txhttp://www.springframework.org/schema/tx xsi:schemaLocationhttp://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 !-- 加载数据库配置文件的信息 -- context:property-placeholder locationclasspath:config/db.properties/ !-- 配置DBCP连接池 -- bean iddataSource classorg.apache.commons.dbcp.BasicDataSource destroy-methodclose property namedriverClassName value${jdbc.driver} / property nameurl value${jdbc.url} / property nameusername value${jdbc.username} / property namepassword value${jdbc.password} / property namemaxActive value10 / property namemaxIdle value5 / /bean !-- Mybatis工厂配置配置SqlSessionFactory -- bean idsqlSessionFactory classorg.mybatis.spring.SqlSessionFactoryBean !-- 加载mybatis的核心配置文件 -- property nameconfigLocation valueclasspath:spring/mybatis.xml/property !-- 配置数据源 -- property namedataSource refdataSource/property /bean !-- Mapper动态代理开发扫描包的形式 -- bean classorg.mybatis.spring.mapper.MapperScannerConfigurer !-- 指定扫描的包 -- property namebasePackage valuecn.qiuhen.dao/property /bean /beansSpring MVC的核心配置springmvc.xml?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beans xmlns:xsihttp://www.w3.org/2001/XMLSchema-instance xmlns:contexthttp://www.springframework.org/schema/context xmlns:aophttp://www.springframework.org/schema/aop xmlns:txhttp://www.springframework.org/schema/tx xmlns:mvchttp://www.springframework.org/schema/mvc xsi:schemaLocationhttp://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 http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd !-- 配置Controller扫描包相当于Struts2中的Action,将哪些类交给spring管理 -- context:component-scan base-packagecn.qiuhen.controller/context:component-scan !-- 启动注解驱动自动装配controller、service、dao -- mvc:annotation-driven/mvc:annotation-driven !-- 扫描controller,servicecontroller,service层注入 -- context:component-scan base-packagecn.qiuhen.controller/ context:component-scan base-packagecn.qiuhen.service/ !-- 配置视图处理器 -- bean classorg.springframework.web.servlet.view.InternalResourceViewResolver !-- 配置逻辑试图的前缀 -- property nameprefix value/WEB-INF/jsp//property !-- 配置逻辑试图的后缀 -- property namesuffix value.jsp/property /bean !-- 启用注解驱动自动装配controller、service、dao -- mvc:annotation-driven conversion-servicecustomConverter/ !-- 自定义参数类型转换 -- bean idcustomConverter classorg.springframework.format.support.FormattingConversionServiceFactoryBean !-- 定义转换器可以有很多转换器 -- property nameconverters list !-- 可以加载很多自定义的类型转换器 -- bean classcn.qiuhen.conversion.String2DateConverter/bean /list /property /bean !--文件上传-- bean idmultipartResolver classorg.springframework.web.multipart.commons.CommonsMultipartResolver !-- 设定文件上传的最大值为5MB5*1024*1024 -- property namemaxUploadSize value5242880/property !-- 设定文件上传时写入内存的最大值如果小于这个参数不会生成临时文件默认为10240 -- property namemaxInMemorySize value40960/property !-- 上传文件的临时路径 -- property nameuploadTempDir valuefileUpload/temp/property !-- 延迟文件解析 -- property nameresolveLazily valuetrue/ /bean /beansMybatis配置Mybatis.xml?xml version1.0 encodingUTF-8? !DOCTYPE configuration PUBLIC -//mybatis.org//DTD Config 3.0//EN http://mybatis.org/dtd/mybatis-3-config.dtd configuration !-- 类型别名 typeAliases必须配置文件的开始部分 -- typeAliases !-- 可以指定一个包名mybatis会在包名下面搜索需要的javaBean -- package namecn.qiuhen.domain/ /typeAliases !-- 加载映射文件 -- mappers !-- package namecn.qiuhen.dao/-- mapper resourcemybatis/BookMapper.xml/mapper /mappers /configuration数据库db.properties配置#MySQL jdbc.drivercom.mysql.jdbc.Driver jdbc.urljdbc:mysql://localhost:3306/nutzwk?useUnicodetruecharacterEncodingUTF-8 jdbc.usernameroot jdbc.passwordroot #SQLServer #drivercom.microsoft.sqlserver.jdbc.SQLServerDriver #urljdbc\:sqlserver\://localhost\:1433;DatabaseName\test #usernameautek #passwordflyvideoLog4j配置注意必须要配置不然无法打印日志信息和错误信息Log4j.properties(只是简单配置根据自己需求修改)# Global logging configuration log4j.rootLoggerDEBUG, stdout # Console output... log4j.appender.stdoutorg.apache.log4j.ConsoleAppender log4j.appender.stdout.layoutorg.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern%5p [%t] - %m%nPojo(示例)Controller(示例)Service层示例为求简洁没创建接口只是一个类dao层示例dao配置文件Jsp页面仅供参考% page contentTypetext/html;charsetUTF-8 languagejava % % taglib urihttp://java.sun.com/jsp/jstl/core prefixc % !--输出,条件,迭代标签库-- %--% page isELIgnoredfalse% !--支持EL表达式不设的话EL表达式不会解析-- --% % String path request.getContextPath(); String basePath request.getScheme() :// request.getServerName() : request.getServerPort() path /; % html head title第一页/title link relstylesheet href${pageContext.request.contextPath}/static/bootstrap/css/bootstrap.min.css link relstylesheet href${pageContext.request.contextPath}/static/datepicker/bootstrap-datetimepicker.min.css /head script src${pageContext.request.contextPath}/static/js/jquery-3.3.1.min.js/script script src${pageContext.request.contextPath}/static/bootstrap/js/bootstrap.js/script script src${pageContext.request.contextPath}/static/datepicker/bootstrap-datetimepicker.min.js/script script src${pageContext.request.contextPath}/static/js/bootstrap-datetimepicker.zh-CN.js/script script src${pageContext.request.contextPath}/static/kindeditor/kindeditor-all.js/script script src${pageContext.request.contextPath}/static/kindeditor/lang/zh_CN.js/script script src${pageContext.request.contextPath}/static/kindeditor/plugins/code/prettify.js /script script KindEditor.ready(function (K) { var editor1 K.create(textarea[namearticle.content1], { cssPath: ${pageContext.request.contextPath}/static/kindeditor/plugins/code/prettify.css, uploadJson: ${pageContext.request.contextPath}/static/kindeditor/jsp/upload_json.jsp, fileManagerJson: ${pageContext.request.contextPath}/static/kindeditor/jsp/file_manager_json.jsp, allowFileManager: true, afterCreate: function () { var self this; K.ctrl(document, 13, function () { self.sync(); document.forms[example].submit(); }); K.ctrl(self.edit.doc, 13, function () { self.sync(); document.forms[example].submit(); }); } }); prettyPrint(); }); /script body %--页面跳转与请求--% div stylewidth:300px;height:150px;border: 1px solid black; %--点击按照发送ajax请求--% button idbtn按钮/button %--点击跳转页面--% a classbtn btn-primary href%basePath%home/index.actiondsa/a /div div stylewidth:800px;height:150px;border: 1px solid black; p日期插件/p div classform-group label forat classcol-sm-2 control-label发布时间/label div classcol-sm-8 input-group date form_datetime stylepadding-left: 16px;padding-right: 16px; >