La belleza de la simplicidad, SpringMVC, MyBatis es una buena solución de integración simple que puede satisfacer las necesidades generales del proyecto. Comparta los archivos de configuración del proyecto en su tiempo libre para su referencia:
1. Primero, echemos un vistazo a la dependencia de POM:
<!- Primavera -> <pendency> <MoupRoD> org.springframework </groupid> <artifactid> spring-core </arfactid> <versever> $ {spring.version} </ververy> </pepersency> <Spendency> <MoupRoMID> org.springframework </groupid> <artifactId> spring-beans </artifactid> <version> $ {spring.version} </versever> </pendency> <de Pendency> <GroupID> org.springframework </groupid> <artifactID> spring-Context </artifactid> <versever> $ {spring.version} </versión> </pendency> <DEP Endency> <MoupRid> org.springframework </groupid> <artifactid> spring-tx </artifactid> <versever> $ {spring.version} </versión> </pendency> <dependiente cy> <proupid> org.springframework </groupid> <artifactid> spring-web </artifactid> <versión> $ {spring.version} </versión> </pendency> <pendency> < Groupid> org.springframework </proupid> <artifactid> spring-webmvc </artifactid> <versión> $ {spring.version} </versión> </pendency> <pendency> <GR OUPID> org.springframework </groupid> <artifactid> spring-jdbc </artifactid> <versever> $ {spring.version} </versión> </pendency> <epardency> <groupi D> org.springframework </proupid> <artifactId> test de primavera </artifactid> <versión> $ {spring.version} </versewer> <cope> test </scope> </pendency> <!- Paquete MyBatis-> <Spendency> <MoupRid> org.mybatis </proupid> <artifactID> mybatis </arfactid> <versión> 3.2.8 </ververy> </dependency> <!-MyBatis Spring complemento-> <pendency> <uproupid> org.mybatis </groupid> <artifactid> mybatis-spring </arfactid> <versión> 1.2.2 </versión> </pendency> <!-MySQL Connection -> <pendency> <grupid> mysql </groupid> <artifactid> mysql-confonector-java </arfactid> <versión> 5.1.34 </versión> </pendency> <!-data data Fuente-> <Spendency> <MoupRid> com.alibaba </proupid> <artifactid> druid </arfactid> <versión> 1.0.12 </versión> </pendency> <ependency> <moupid> org.spectj </groupid> <artifactid> spightjweaver </arfactid> <versever> 1.8.4 </versión> </</artifactid> spightjweaver </artifactid> <versers -> <pendency> <MoupRoD> log4j </groupid> <artifactid> log4j </arfactid> <versión> 1.2.17 </versión> </pendency> <!-Servlet -> <Spendency> <MoupRid> javax.servlet </groupid> <artifactid> servlet-api </artifactid> <versión> 3.0-alpha-1 </verversion> </pendency> <epardency> <proupId> javax.servlet </groupid> <artifactid> jstl </arfactid> <versers -> <Spendency> <MoupRid> org.codehaus.jackson </groupid> <artifactid> jackson-mapper-asl </arfactid> <versión> 1.9.13 </versión> </pendency> <pendency> <grupo> com.alibaba </gru PID> <ArFactId> FastJson </arfactid> <versión> 1.2.3 </versión> </pendency> <pendency> <MoupRoD> com.fasterxml.jackson.core </proupId> <AriFactId> Jackson-annotations </arifiFiCID > <versión> $ {jackson.version} </versión> </pendency> <epardency> <proupid> com.fasterxml.jackson.core </groupid> <artifactid> jackson-core </arfactid> <versión> $ {jackson.version} < /version></Dependency><Dependency><Groupid>com.fasterxml.jackson.core</groupid><artifactid>jackson-databind</artifactid><version>$>jackson.versionhingh. Carga de archivos-> <pendency> <grupid> commons-io </groupid> <artifactid> commons-io </artifactid> <versión> 2.4 </versión> </pendency> <pendency> <grupoD> commons-fileUpload </groupId> <artifactid> commons-fileUpload </artifactid> <verserse-1s.Spring usa la versión 4.1.4, y podemos elegir la versión que nos adapta de acuerdo con las necesidades del sistema.
2. Archivos de configuración relacionados:
a) spring.xml
<? xml versión = "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" xsi: schemalocation = "http://www.springframework.org/schema/beansshtp://www.ss pringframework.org/schema/beans/spring-beans-4.1.xsdhttp://www.springframework.org/schema/context/spring-context-4.1.xsd"><!--intrroducir Archivo de propiedades de configuración-> <context: Property-placeholder ubicación = "classpath: config.properties" /> <!-escaneo automático que contiene @service lo inyecta en bean-> <context: component-scan base-pankage = "com.demo.report.web.service" />>>
b) Spring-MVC.XML
<? xml versión = "1.0" encoding = "utf-8"?> <beans xmlns = "http://www.springframework.org/schema/beans" xmlns: mvc = "http://www.springframework.org/schema/mvc" "" "" "" "" "" "" "" xmlns: xsi = "http://www.w3.org/2001/xmlschema-instance" xmlns: p = "http://www.springframework.org/schema/p" xmlns: context = "http://www.springframework.org/schema/context" xsi: schemalocation = "http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-be-4. http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.1.xsd"><!-- Escanear automáticamente todas las clases bajo el paquete controlador. Si @Controller se inyectó como Bean-> <context: Component-scan base-Package = "com.demo.report.web.controller" /> <!-Evite el archivo de descarga cuando IE ejecute AJAX, regrese a JSON-> <Bean id = "mappingjacksonhttpMessageConverter" class = "org.springframework.http.converter.json.mappingjackson2httpmessageConverter"> <sperseMeMeN = "admitedMediatyPes"> <List> <valor> text/html; charset = utf-8 </value> </list> </apropiadas " Función de anotación de MVC de primavera para completar la asignación de solicitudes y anotaciones POJOS-> <beanclass = "org.springframework.web.servlet.mvc.annotation.annotationMethodHandHandlerAdapter"> <Property name = "MessageConverters"> <In List> <!-JSON Converter /></list></property></bean><!-- Resolve the model view name, that is, add prefix to the model view name --><beanclass="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="viewClass"value="org.springframework.web.servlet.view.JstlView" /> <Property name = "Prefix" value = "" /> <Property Name = "Suffix" Value = "" /> < /bean> <!-Configurar la carga multi-archivo <bean id = "multiparTresolver" class = "org.springframework.web.multipart.commons.commonsmultipartresolver"> <Propiedad name = "DefaultEncoding"> <value> UTF-8 </value> </property> <Property name = "maxUploadsize"> <alon> 32505856 </value> </propine> <Property name = "MaxInMemorySize"> <valor> 4096 </value> </spers> </beach>-> </ Beans>
c) Spring-Mybatis.xml
<? xml versión = "1.0" encoding = "utf-8"?> <beans xmlns = "http://www.springframework.org/schema/beans" xmlns: xsi = "http://www.w3.org/2001/xmlschema-instance" "" "" xmlns: tx = "http://www.springframework.org/schema/tx" xmlns: aop = "http://www.springframework.org/schema/aop" xsi: schemalocation http://www.springframework.org/schema/Beans/spring-Beans-4.1.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.1.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.1.xsd"><!-- La fuente de datos está configurada con el uso de los datos de los datos. name="dataSource"init-method="init" destroy-method="close"><property name="url" value="${jdbc.url}" /><property name="username" value="${jdbc.username}" /><property name="password" value="${jdbc.password}" /><!-- Initialize the connection size--><property name = "InitialSize" Value = "0" /> <!-Número máximo de conexiones utilizadas en el grupo de conexión-> <propiedad name = "maxactive" value = "20" /> <!-Conexiones mínimas gratuitas-> <propiedad name = "minidle" valor = "0" /> <!-Obtenga el tiempo de espera máximo para la conexión-> <name de propiedad de la propiedad "Valor =" 60000 " /> <<> <> <<producción de propiedad value = "true" /> <Property name = "maxPoolProparedStatEmentPonConnectionSize" value = "33" /> <!-Se usa para detectar sql válido-> <propiedad name = "ValidationQuery" value = "$ {validationQuery}" /> <name de propiedad = "testonborrow" value = "falso" /> <name de propiedad = "testonretretruy" value = "<" propiedad " /" FALSE " /" FALSE " /" FALSE " /" FALSO " /" FALSO " /" FALSO " /" FALSO " name = "Test WhipleIdle" Value = "True" /> <!-Configure cuánto tiempo lleva realizar una prueba para detectar la conexión inactiva que debe cerrarse, en Millisegunds-> <Property name = "TimeBetweeVictionRunsmillis" Value = "60000" /> <!-Configure el tiempo mínimo para una conexión a sobrevivir en la piscina, en MillisEds-> <Nombre de propiedad = "" Nombre de propiedad ". value = "25200000" /> <!-activar la función de removeAbandoned-> <propiedad name = "removeAbaBaBaBaLEd" value = "true" /> <!-1800 segundos, es decir, 30 minutos-> <Property name = "removeAbaBaBaBaBaBaUnedTimeOut" valor = "1800" /> <!-Error de salida Log cuando cierre la conexión abandonada-<Nombre de propiedad = "Logabandoned Value" Value "verdadero", verdadero ". Base de datos-> <Property name = "Filters" Value = "Mergestat" /> < /bean> <!-MyBatis File-> <Bean ID = "SqlSessionFactory"> <Property Name = "DataSource" ref = "DataSource" /> <!-Escanear automáticamente el directorio de la entidad, eliminar la configuración manual en configuración en configuración.xml-> <name de propiedad = "mApperlOcations" mApperlOcations "mApperlOcations" " value = "classpath: com/demo/report/web/mappper/*. xml"/> </bean> <Bean> <Bean> <Property Name = "BasePackage" value = "com.feidai.report.web.mapper"/> <Property name = "SqlSessionFactoryBeanName" Value = "Sqlsession"/> <////<! id = "TransActionManager" class = "org.springframework.jdbc.datasource.datasourcetransactionManager"> <propiedad name = "dataSource" ref = "dataSource" /> < /bean>d) web.xml
<Spant-Name> SpringMVC_MYBATIS_DEMO </splay-name> <context-param> <amamname> contextconfiglocation </amamname> <amam-value> classpath: spring.xml, classpath: spring-mybatis.xml </param-val UE> </textect-param> <filter> <filter-name> EncodingFilter </filter-name> <filter-class> org.springframework.web.filter.characterEcterEncodingFilter </filter-class> <itel-param> <amamname> codificando </p aram-name> <amam-value> utf-8 </amam-value> </ init-param> <init-param> <amamname> forceEncoding </amamname> <amam-value> true </amam-value> </it-param> </filter> <filter-mapping> <filter-name-name-name> > EncodingFilter </filtre-name> <url-pattern>/*</sl-pattern> </filter-mapping> <searcher> <eficiater-class> org.springframework.web.context.contextleaderlistener </ oyeer-class> </chearer> <! Evite la memoria de primavera del oyente de Overflow-> <Oyerer> <Oyerer-class> org.springframework.web.util.introspectorCleanupplistener </ oyeyer-class> </oyeyer> <ervlet> <Scuidion> spring mvc servlet </cription> <servlet-name> REST </servlet-name> <ervlet-class> org.springframework.web.servlet.dispatcherservlet </servlet-class> <init-param> <amamname> contente Xtconfiglocation </amamname> <amam-value> classpath: spring-mvc.xml </amam-value> </it-param> <load-on-shartup> 1 </load-on-startup> </servlet> <servlet-mapping> <ervle T-Name> REST </servlet-Name> <Url-Pattern>/</url-Pattern> </servlet-mapping> <ervlet> <servlet-name> DruidStatView </servlet-name> <ervlet-class> com.alibaba.druid.support .http.StatViewServlet </servlet-class> </servlet> <ervlet-mapping> <ervlet-name> druidStatView </servlet-name> <url-pattern>/druid/*</ url-pattern> </servlet-mapping> <! Configure el tiempo de tiempo de espera de la sesión, minutos de la unidad-> <session-config> <sission timeOut> 30 </session timeOut> </sessicion-config> <beating-file-list> <beating-file> index.jsp </ beedic --file> </welle Welcome-File-list>
Utilizado la fuente de datos DRUID, consulte el código para obtener una configuración detallada en la web.
Lo anterior es una explicación detallada del ejemplo de configuración integrada de SpringMVC y MyBatis presentada por el editor. Espero que te sea útil. Si tiene alguna pregunta, déjame un mensaje. El editor le responderá a tiempo. ¡Muchas gracias por su apoyo al sitio web de Wulin Network!