java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > SpringBoot SpringSecurity 环境搭建

SpringBoot + SpringSecurity 环境搭建的步骤

作者:zekeTao

这篇文章主要介绍了SpringBoot + SpringSecurity 环境搭建的步骤,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

一、使用SpringBoot+Maven搭建一个多模块项目(可以参考这篇文章 --> 这里)

二、删除父工程的src文件,删除app、browser、core下的.java文件

依赖关系:

  1. demo 依赖 browser
  2. browser、app依赖core

三、父工程pom.xml文件

<?xml version="1.0" encoding="UTF-8"?> 
<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"> 
  <modelVersion>4.0.0</modelVersion> 
 
  <groupId>com.zeke</groupId> 
  <artifactId>zeke-security</artifactId> 
  <version>0.0.1-SNAPSHOT</version> 
  <packaging>pom</packaging> 
  <name>zeke-security</name> 
 
  <properties> 
    <zeke-security-version>1.0-SNAPSHOT</zeke-security-version> 
  </properties> 
 
  <modules> 
    <module>zeke-security-app</module> 
    <module>zeke-security-browser</module> 
    <module>zeke-security-core</module> 
    <module>zeke-security-demo</module> 
  </modules> 
 
  <dependencies> 
    <dependency> 
      <groupId>junit</groupId> 
      <artifactId>junit</artifactId> 
      <scope>test</scope> 
    </dependency> 
    <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-test</artifactId> 
      <version>1.5.8.RELEASE</version> 
      <scope>test</scope> 
    </dependency> 
  </dependencies> 
 
  <dependencyManagement> 
    <dependencies> 
      <dependency> 
        <groupId>io.spring.platform</groupId> 
        <artifactId>platform-bom</artifactId> 
        <version>Brussels-SR6</version> 
        <type>pom</type> 
        <scope>import</scope> 
      </dependency> 
      <dependency> 
        <groupId>org.springframework.cloud</groupId> 
        <artifactId>spring-cloud-dependencies</artifactId> 
        <version>Dalston.SR5</version> 
        <type>pom</type> 
        <scope>import</scope> 
      </dependency> 
      <dependency> 
        <groupId>org.springframework.boot</groupId> 
        <artifactId>spring-boot-configuration-processor</artifactId> 
        <optional>true</optional> 
      </dependency> 
    </dependencies> 
  </dependencyManagement> 
 
  <build> 
    <plugins> 
      <plugin> 
        <groupId>org.apache.maven.plugins</groupId> 
        <artifactId>maven-compiler-plugin</artifactId> 
        <version>2.3.2</version> 
        <configuration> 
          <source>1.8</source> 
          <target>1.8</target> 
          <encoding>UTF-8</encoding> 
        </configuration> 
      </plugin> 
    </plugins> 
  </build> 
 
</project> 

四、zeke-security-demo项目下的pom.xml文件 

<?xml version="1.0" encoding="UTF-8"?> 
<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"> 
  <modelVersion>4.0.0</modelVersion> 
 
  <parent> 
    <groupId>com.zeke</groupId> 
    <artifactId>zeke-security</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
  </parent> 
 
  <artifactId>zeke-security-demo</artifactId>> 
 
  <dependencies> 
    <dependency> 
      <groupId>com.zeke</groupId> 
      <artifactId>zeke-security-browser</artifactId> 
      <version>${zeke-security-version}</version> 
    </dependency> 
    <dependency> 
      <groupId>junit</groupId> 
      <artifactId>junit</artifactId> 
      <version>4.12-beta-3</version> 
      <scope>test</scope> 
    </dependency> 
    <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-aop</artifactId> 
    </dependency> 
    <dependency> 
      <groupId>commons-io</groupId> 
      <artifactId>commons-io</artifactId> 
    </dependency> 
 
    <!-- swagger --> 
    <dependency> 
      <groupId>io.springfox</groupId> 
      <artifactId>springfox-swagger2</artifactId> 
      <version>2.7.0</version> 
    </dependency> 
    <dependency> 
      <groupId>io.springfox</groupId> 
      <artifactId>springfox-swagger-ui</artifactId> 
      <version>2.7.0</version> 
    </dependency> 
 
    <!-- WireMock --> 
    <dependency> 
      <groupId>com.github.tomakehurst</groupId> 
      <artifactId>wiremock</artifactId> 
      <version>2.14.0</version> 
    </dependency> 
    <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-test</artifactId> 
      <version>4.3.12.RELEASE</version> 
      <scope>test</scope> 
    </dependency> 
    <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-test</artifactId> 
      <version>4.3.12.RELEASE</version> 
      <scope>test</scope> 
    </dependency> 
    <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-test</artifactId> 
      <version>4.3.12.RELEASE</version> 
      <scope>test</scope> 
    </dependency> 
  </dependencies> 
 
  <build> 
    <plugins> 
      <plugin> 
        <groupId>org.springframework.boot</groupId> 
        <artifactId>spring-boot-maven-plugin</artifactId> 
        <version>1.5.6.RELEASE</version> 
        <executions> 
          <execution> 
            <goals> 
              <goal>repackage</goal> 
            </goals> 
          </execution> 
        </executions> 
      </plugin> 
    </plugins> 
    <finalName>demo</finalName> 
  </build> 
</project> 

五、zeke-security-core项目下的pom.xml文件 

<?xml version="1.0" encoding="UTF-8"?> 
<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"> 
  <modelVersion>4.0.0</modelVersion> 
 
  <parent> 
    <artifactId>zeke-security</artifactId> 
    <groupId>com.zeke</groupId> 
    <version>0.0.1-SNAPSHOT</version> 
  </parent> 
 
  <artifactId>zeke-security-core</artifactId> 
 
  <dependencies> 
    <dependency> 
      <groupId>org.springframework.cloud</groupId> 
      <artifactId>spring-cloud-starter-oauth2</artifactId> 
    </dependency> 
    <!--<dependency>--> 
    <!--<groupId>org.springframework.boot</groupId>--> 
    <!--<artifactId>spring-boot-starter-data-redis</artifactId>--> 
    <!--</dependency>--> 
    <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-jdbc</artifactId> 
    </dependency> 
    <dependency> 
      <groupId>mysql</groupId> 
      <artifactId>mysql-connector-java</artifactId> 
    </dependency> 
    <dependency> 
      <groupId>org.springframework.social</groupId> 
      <artifactId>spring-social-config</artifactId> 
    </dependency> 
    <dependency> 
      <groupId>org.springframework.social</groupId> 
      <artifactId>spring-social-core</artifactId> 
    </dependency> 
    <dependency> 
      <groupId>org.springframework.social</groupId> 
      <artifactId>spring-social-security</artifactId> 
    </dependency> 
    <dependency> 
      <groupId>org.springframework.social</groupId> 
      <artifactId>spring-social-web</artifactId> 
    </dependency> 
    <dependency> 
      <groupId>commons-lang</groupId> 
      <artifactId>commons-lang</artifactId> 
    </dependency> 
    <dependency> 
      <groupId>commons-collections</groupId> 
      <artifactId>commons-collections</artifactId> 
    </dependency> 
    <dependency> 
      <groupId>commons-beanutils</groupId> 
      <artifactId>commons-beanutils</artifactId> 
    </dependency> 
  </dependencies> 
</project> 

六、zeke-security-browser项目下的pom.xml文件 

<?xml version="1.0" encoding="UTF-8"?> 
<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"> 
  <modelVersion>4.0.0</modelVersion> 
 
  <parent> 
    <groupId>com.zeke</groupId> 
    <artifactId>zeke-security</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
  </parent> 
 
  <artifactId>zeke-security-browser</artifactId> 
 
  <dependencies> 
    <dependency> 
      <groupId>com.zeke</groupId> 
      <artifactId>zeke-security-core</artifactId> 
      <version>${zeke-security-version}</version> 
    </dependency> 
    <dependency> 
      <groupId>org.springframework.session</groupId> 
      <artifactId>spring-session</artifactId> 
    </dependency> 
  </dependencies> 
</project> 

七、zeke-security-app项目下的pom.xml文件 

<?xml version="1.0" encoding="UTF-8"?> 
<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"> 
  <modelVersion>4.0.0</modelVersion> 
 
  <parent> 
    <artifactId>zeke-security</artifactId> 
    <groupId>com.zeke</groupId> 
    <version>0.0.1-SNAPSHOT</version> 
  </parent> 
 
  <artifactId>zeke-security-app</artifactId> 
 
  <dependencies> 
    <dependency> 
      <groupId>com.zeke</groupId> 
      <artifactId>zeke-security-core</artifactId> 
      <version>${zeke-security-version}</version> 
    </dependency> 
  </dependencies> 
</project> 

八、zeke-security-demo项目下的application.properties

 spring.datasource.driver-class-name=com.mysql.jdbc.Driver 
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/imooc-demo 
spring.datasource.username=root 
spring.datasource.password= 
 
spring.session.store-type=none 
security.basic.enabled=false 

九、在zeke-security-demo启动类上添加测试接口

@RestController 
@SpringBootApplication 
public class ZekeSecurityDemoApplication { 
 
  public static void main(String[] args) { 
    SpringApplication.run(ZekeSecurityDemoApplication.class, args); 
  } 
 
  @GetMapping("/hello") 
  public String hello(){ 
    return "success"; 
  } 
} 

十、输入地址localhost/hello

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文