A beleza da simplicidade, Springmvc, Mybatis é uma boa solução de integração simples que pode atender às necessidades gerais do projeto. Compartilhe os arquivos de configuração do projeto em seu tempo livre para sua referência:
1. Primeiro, vamos dar uma olhada no POM de dependência:
<!- primavera -> <Depencency> <voundId> org.springframework </foupidId> <TRATIFACTID> Spring-core </ArtifactId> <Version> $ {spring.version} </sipers> </dependency> <Depencency> <PuerpId> org.springframework </frugiD> <TROTIFACTID> Spring-Beans </ArtifactId> <versão> $ {spring.version} </version> </dependency> <de PENDENCIDA> <PRUPHID> org.springframework </foupidId> <TRAFACTID> Spring-Context </stutifactId> <versão> $ {spring.version} </versão> </dependency> <dep Endência> <PuerpId> org.springframework </frupid> <stifactId> spring-tx </stifactId> <versão> $ {spring.version} </versão> </dependency> <dependente cy> <voundid> org.springframework </frugiD> <stifactId> spring-web </artifactId> <versão> $ {spring.version} </versão> </dependency> <pendence> < groupId> org.springframework </frugiD> <TRAFACTID> spring-webmvc </artifactId> <versão> $ {spring.version} </sipers> </dependency> <pendence> <gr OUPID> org.springframework </foupiD> <TRAFACTID> spring-jdbc </artifactId> <versão> $ {spring.version} </version> </dependency> <pendence> <groupi d> org.springframework </frugiD> <TROTIFACTID> Spring-test </sTifactId> <versão> $ {spring.version} </sipers> <cope> test </cope> </pendecence> <!- pacote mybatis-> <pendence> <purbrouid> org.mybatis </groupiD> <TRARFACTID> mybatis </stutifactId> <versão> 3.2.8 </versão </dependency> <!-mybatis spring plug-in-> <Ependency> <voundId> org.mybatis </groupId> <TRATIFACTID> mybatis-spring </artifactId> <versão> 1.2.2 </versão </dependency> <!-conexão MySQL -> <Depencency> <voundId> mysql </groupiD> <stifactId> mysql-conector-java </artifactId> <versão> 5.1.34 </version> </pendence> <!-Data Fonte-> <Depency> <PuerpId> com.alibaba </groupiD> <TROTIFACTID> druid </artifactId> <versão> 1.0.12 </versão> </dependency> <Ependency> <//Groupid> <siquetJ versão j -> <Depencency> <voupId> log4j </groupId> <stifactId> log4j </artifactId> <versão> 1.2.17 </version> </dependency> <!-servlet -> <Depencency> <puperid> javax.servlet </rouprouid> <TRAFACTID> servlet-api </stifactId> <sipers> 3.0-alpha-1 </sipers> </dependency> <pendency> </groupId> javax.sertlet </groupid> <stifactid> jstl </gruptid> -> <Depencency> <voundId> org.codehaus.jackson </foupidId> <ArtifactId> Jackson-Mapper-asl </ArtifactId> <Versão> 1.9.13 </versão </dependency> <pendencency> <vroupid> com.alibaba </grou PID> <TRARFACTID> fastjson </storkactid> <versão> 1.2.3 </version> </dependency> <pendence> <puperid> com.fasterxml.jackson.core </groupiD> <TRAFACTID> Jackson-Annotações </ArtifactId > <Versão> $ {Jackson.version} </siers> </dependency> <pendency> <puperid> com.fasterxml.jackson.core </groupid> <stifactId> jackson-core </storkactid> <versão> $ {Jackson.version} < /version></dependency><dependency><GroupID>com.fasterxml.jackson.core</groupid><artifactId>jackson-databind</artifactId><version>$ {jackson.version <</version></dependy>< << << <<- FILO Upload-> <Depencency> <puperId> Commons-Io </GroupId> <ArtifactId> Commons-Io </stutifactId> <Version> 2.4 </siers> </dependency> <pendency> <puperid> Commons-FileUpload </GroupId> <stifactId> com comuns </sierfactid>A Spring usa a versão 4.1.4 e podemos escolher a versão que nos combina de acordo com as necessidades do sistema.
2. Arquivos de configuração relacionados:
a) spring.xml
<? xml versão = "1.0" coding = "utf-8"?> <Beans xmlns = "http://www.springframework.org/schema/beans" xmlns: xsi = "http:/wwww.w3 xmlns: context = "http://www.springframework.org/schema/context" xsi: schemalocation = "http://www.springframework.org/schema/beanshttp://wwww.s pringframework.org/schema/beans/spring-beans-4.1.xsdhttp://www.springframework.org/schema/Context/spring-context-4.1.xsd"><! Arquivo de Propriedades da Configuração-> <Contexto: Property-PlaceLitder Location = "ClassPath: config.properties" /> <!-varredura automática contendo @service injeta-o em bean-> <Contexto: componente-Scan-package = "com.demo.report.web.service" />
b) Spring-mvc.xml
<? xml versão = "1.0" coding = "utf-8"?> <Beans xmlns = "http://www.springframework.org/schema/beans" xmlns: mvc = "http://www.springframew.org/schema/fschemer/fschema/http://www.springframway.org/Schema/SCHEMA/" 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-beans-4.1.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.1.xsd">! Se @Controller injetado como Bean-> <Contexto: Componente-Scan Base-Package = "com.demo.report.web.controller" /> <!-Evite o arquivo de download quando o ie executar ajax, retornar ao json-> <Bean id = "MappingjacksonHttpMessAgeconverter" class = "org.springframework.http.converter.json.mappingjackson2httpmessageConverter"> <names name = "suportedmediaTypes"> <list> <talue> text/html; charset = utf-tf = utf-8-8 <suport-8) Função de anotação do MVC da primavera para concluir o mapeamento de solicitações e anotações pojos-> <beansclass = "org.springframework.web.servlet.mvc.annotation.annotationMethodHandlerAdapter"> Nome da propriedade = "MessageconVerters"> <list> <! bean = "mappingjacksonhttpmessageConverter"/> </list> </propriedade> </bean> <!-Resolva o nome da exibição do modelo, ou seja, adicione prefixo ao nome do modelo de exibição-> <beansclass = "org.springframework.web.servlet.view.innallResourCuviewRolRolRolResres" name = "viewclass" value = "org.springframework.web.servlet.view.jstlview" /> <propriedade name = "prefix" value = "" /> <names name = "sufixo" value = "" /> </siean> <!-Configurar upload multi-arquivo <bean <bean = " id = "multipartresolver" class = "org.springframework.web.multipart.commons.commonsmultipartResolver"> <names name = "defaultEncoding"> <value> utf-8 </value> </propriedade> <nome da propriedade name = "maxinMemorySize"> <Value> 4096 </value> </propriedade> </bean>-> </ Beans>
c) spring-mybatis.xml
<? xml versão = "1.0" coding = "utf-8"?> <Beans xmlns = "http://www.springframework.org/schema/beans" xmlns: xsi = "http:/wwww.w3 xmlns:tx="http://www.springframework.org/schema/tx"xmlns:aop="http://www.springframework.org/schema/aop"xsi:schemaLocation="http://www.springframework.org/schema/beans 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"><!-- The data source is configured using the Druid data source--><bean 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 Tamanho-> <Propriedade name = "InitialSize" value = "0" /> <!-Número máximo de conexões usadas no pool de conexões-> <nome da propriedade = "maxactive" value = "20" /> <!-Conexões gratuitas mínimas-> <Nome da propriedade = "Minidle" Minidle "=" 0 " /> <!-Obtenha o tempo máximo de espera para a conexão-> <Nome = <Nome =" Minidle "Minidle" "0" /! name = "poolPreparedStatements" value = "true" /> <propriedade name = "maxpoolPreparedStatementPerConnectionize" value = "33" /> <!-usado para detectar sql válido-> <nome do nome = "validationQuery" value = "$ {ValidationQuery}" /> <nome do nome = "TESTOURROURCH" " value = "false" /> <propriedade name = "testhileIdle" value = "true" /> <!-configure quanto tempo leva para realizar um teste para detectar a conexão ociosa que precisa ser fechada, em milissegundos-> <name da propriedade = "TimeBetweenEvictionRUNSMILIS" Value = "60000" /> <!-Config name = "minevictableIdLetimemillis" value = "25200000" /> <!-Ligue a função removeabandon-> <names name = "removeabandon" value = "true" /> <!-1800 segundos, ou seja, 40 minutos-> <rort) e "RemoveaNeonedTonedOning) e") e "), que é o nome da troca" /"), que é o nome da troca" /"), que é o nome da seção", "), que é o nome" /","), que é o nome " /", "), que é o nome" /! value = "true" /> <!-Monitorando o banco de dados-> <propriedades name = "filters" value = "mergestat" /> </i bean> <!-mybatis file-> <bean id = "sqlsessionFactory"> da propriedade <nome da entrada "DataSource" ref = "DataSource" /> <!-Scã automaticamente name = "mapperlocations" value = "classpath: com/demonstração/relatórios/web/mapper/*. xml"/> </i bean> <ipean> <ean> <propriedade name = "bashepackage" value = "comslSessFactoryBean.report.web.mapper"/> <nome do nome "sqlSessFactoryBeanBeanBeanName" Configurar Gerenciador de transações-> <bean id = "transactionManager" class = "org.springframework.jdbc.dataSource.dataSourceTransactionManager"> <nome da propriedade = "DataSource" ref = "DataSource" /> < /bean>d) web.xml
<lame-name> springmvc_mybatis_demo </sisplay-name> <xectemClem-param> <amam-name> contextConfigLocation </param-name> <amam-value> classPath: spring.xml, classe: spring-mybatis.xml </param-val ue> </context-param> <filter> <filter-name> codingfilter </filter-name> <filter-class> org.springframework.web.filter.characterencodingfilter </ftrids-class> <ot-param> <amam-name> codificando </p. ARAM-NAME> <MARAM-VALUE> UTF-8 </param-value> </irit--param> <itir--param> <amam-name> forcencoding </amam-name> <amam-value> true </amam-value> </irit---nu> </filter> <filter-Mapping> <filtro-Name > EncodingFilter </filter-name> <url-tattern>/*</url-tattern> </filter-mapping> <lister> <lister-class> org.springframework.web.context.contextloaderListener </listeria-class> </Ilduter> <!-! Impedir que a memória da mola transborde o ouvinte-> <Ilanter> <Ilvier-class> org.springframework.web.util.introspectorcleanUplistener servlet </cription> <sutlet-name> REST </Servlet-Name> <Servlet-Class> org.springframework.web.servlet.dispatcherServlet </servlet-class> <iit-param> <amam-name> CONTE XtConfigLocation </amon-name> <amam-value> ClassPath: spring-mvc.xml </param-value> </irit-param> <adarot-on-startup> 1 </olload-on-startup> </servlet> <Servlet-Mapping> <servle t-name> Rest </vlet-name> <url-pantathern>/</url-tattern> </servlet-mapping> <ervlet> <Verlet-name> druidstatview </servlet-name> <Servlet-class> com.alibaba.druid.support .http.statviewServlet </servlet-class> </servlet> <Servlet-mapping> <Verlet-name> druidstatview </servlet-name> <url-Pattern>/druid/*</url-tattern> </ervlet-mapping> <!- Configurar tempo de tempo limite da sessão, minutos unitários-> <session-config> <session-timeout> 30 </session-timeout> </session-config> <lmed-File-list> <lmed-fil-bile> index.jsp </conform-file> </-Welcome-File-List>
Utilizou a fonte de dados Druid, consulte o código para uma configuração detalhada na web.
O exposto acima é uma explicação detalhada do exemplo de configuração integrado de Springmvc e Mybatis apresentado a você pelo editor. Espero que seja útil para você. Se você tiver alguma dúvida, deixe -me uma mensagem. O editor responderá a tempo. Muito obrigado pelo seu apoio ao site da Wulin Network!