O Spring Boot cria aplicativo da Web e integra o modelo TymEleaf para obter login. A seguir, a configuração do POM.xml
<? xml versão = "1.0" coding = "utf-8"?> <Projeto xmlns = "http://maven.apache.org/pom/4.0.0" xmlns: xsi = "http://www.ww3.org/2001/xmlschaMance xsi: schemalocation = "http://maven.apache.org/pom/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion> 4.0.0 </modelVersion> <vtrem> Exame </Grupoid> <batinging> jar </acheging> <versão> 1.0-SNAPSHOT </SSERSO> <!-Configuração básica da bota da mola-> <airment> <puperid> org.springframework.boot </groupid> <TRAFACTID> Spring-Boot-Starter-Parent </Artifactid> <Bextid>! Version-> <Properts> <Project.build.sourceEncoding> utf-8 </project.build.sourcencoding> <sictar-class> com.study.app </start-class> <nava.hversion> 1.7 </java.version> <shiro.version> </shir> <lugins> <puperid> org.springframework.boot </groupid> <TRATIFACTID> Spring-boot-maven-plugin </stutifactId> <pendências> </dependências> </plugin> </plugins> </fruct> <pendencies> <Pundences> <Punerid> org.springframework.BOOT </Build> <Pependencies> <Pundins> <Puerpid> org.springframework.BOOT </Build> <Pependencies> <puadens> <puadeid> org.springframework.BringFrames> </ArtifactId> Spring-Boot-Starter-Web </storkactid> </dependency> <!-O pacote JPA da JPA, que opera o banco de dados, é semelhante ao Hibernate-> <DependEncy> <ProceRID> org.springframework.boot </groupid> <Artifactid> Spring-Boot Starter-DATA-JOOT-J <!-Jar de modelo tymEleaf-> <Depency> <PuerpId> org.springframework.boot </groupiD> <TRAFACTID> primavera-boot-starter-tymeleaf </artifactId> </dependence> <!-mySql driver-> <pendência> <purbuld> mysql </grupoidid> <! </dependency> <!-Adicione suporte RESTFULL-> <Ependency> <Puperid> javax.ws.rs </groupiD> <TRAFACTID> javax.ws.rs-api </artifactId> <Versão> 2.0.1 </version> </dependency> <Pusency> <puperid> net.bull.javamelody </grupo> </dependency> <pusency> <voupid> net.bull.javamelody <artifactId>javamelody-core</artifactId> <version>1.53.0</version> </dependency> <!-- Add druid data source connection pool --> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.0.25</version> </dependency> <!-- Add permission authentication--> <dependency> <PuProuDID> org.apache.shiro </groupiD> <stifactId> shiro-core </sutifactId> <versão> $ {shiro.version} </versão> </dependency> <pendency> shiro-shirsring {serstring {sversatrstrid> {depencion> shirsring {sersatrstrid>) </dependency> <pendency> <voundid> org.apache.shiro </groupiD> <TROTIFACTID> shiro-web </artifactId> <versão> $ {shiro.version} </version> </dependency> <pendency> <purbrid> org.apache.shiro </grupo> Artif> <Version> $ {shiro.version} </sistER> </dependency> <!-integração de shiro e shiro-> <pendency> <puperid> com.github.theborakompanioni </proupid> <trarifactId> tymeleaf-ex-shiro </stifactid> <versão> 1.2.12 </siperifactId> </dependente> </siperifactId> </dependente> </siperifactId> tymeleaf-shiro </stifactid> <versão> 1.2.12 </siperifactId> </dependente> </siperfactId> </dependente> </siperifactId> </dependente> </siperifactId> </dependente> </siperifactId> tymeleaf-shiro </stifactid> <versão> 1.2.1Método de entrada principal
importar org.springframework.boot.springApplication; importar org.springframework.boot.autoconfigure.enableAutoconfiguration; importar org.springframework.boot.autoconfigure.springbootApplication; org.springframework.boot.context.web.springbootSertletInitializer; importar org.springframework.context.annotation.Componentscan; importar org.springframework.context.annotation.configuration; */@Configuration@componentsCan@EnableAutoconfigurationPublic Class App estende SpringBootSertLeTIlitializer {public static void main (string [] args) {springapplication.run (app.class, args); }}Enviar código do formulário na página de login,
<form role = "form" th: action = "@{/user/login}" th: method = "post"> <input type = "text" placeholder = "nome de usuário" exigido = "requerir" name = "nome de usuário"/> <butter type = "senha" sroundholder = "senha" "" "" "name" "/> <butter"/> <butter "" Type "" Typn "Typn" Typn = "Typen" Typne = "Typen" Typn "Typ (Typn") TIPE = "Caixa de seleção" Value = "Remember-me"/> Lembre-me de mim </crettle> </morm>Código do controlador
package com.study.system.contrller;import com.study.model.contrller.BaseContrller;import com.study.model.po.User;import com.study.system.services.UserServices;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.controller; importar org.springframework.web.bind.annotation.requestmapping; importar org.springframework.web.bind.annotation.requestmethod; import org.sonSonSon; java.util.list;/**** Gerenciamento de usuários* Criado em 2016/12/12. */@Controlador@requestmapping (value = "/user") classe public userContrller estende Basecontrller {@ReQuestMapping (value = "/login", método = requestMethod.Post) public String Login (usuário do usuário) {Try {if (ususervices.hasuser (user)) {return "; } else {return "redirect:/"; }} catch (Exceção e) {Logger.error ("Login falhou:"+e, e); } retornar "redirecionar:/"; } @ReQuestMapping (value = "/index", método = requestMethod.get) public string index () {try {} catch (Exceção e) {Logger.error ("Login falhou:"+e, e); } retornar "página/index/index"; } @AUTOWIRED PRIVADO Uservices UserServices;}Onde UserServices é uma interface de negócios. O BaseContrller encapsula a classe base do controlador para si.
O exposto acima é todo o conteúdo deste artigo. Espero que seja útil para o aprendizado de todos e espero que todos apoiem mais o wulin.com.