首先建立一个maven项目 并建立一个子模块
然后父模块pom
<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>SolaSecurity</groupId>
<artifactId>security</artifactId>
<version>1.0.0</version>
<packaging>pom</packaging>
<parent>
<groupId>io.spring.platform</groupId>
<artifactId>platform-bom</artifactId>
<version>Cairo-SR5</version>
<relativePath/>
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<spring-cloud.version>Finchley.SR2</spring-cloud.version>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<!--指定使用maven打包 -->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<classifier>exec</classifier> <!-- 打包fat jar -->
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skipTests>true</skipTests> <!--默认关掉单元测试 -->
</configuration>
</plugin>
</plugins>
</build>
<modules>
<module>security-core</module>
</modules>
</project>
子模块Pom
<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>SolaSecurity</groupId>
<artifactId>security</artifactId>
<version>1.0.0</version>
</parent>
<groupId>SolaSecurity</groupId>
<artifactId>security-core</artifactId>
<version>1.0.0</version>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<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.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc14</artifactId>
<version>10.2.0.4.0</version>
</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>
spring-cloud-starter-oauth2可以把Security相关的jar包全引用进来
Lang 操作字符串的工具 collections操作集合的工具 beanutils反射操作的工具 social第三方登陆用到的包
然后再建立一个子模块app来引用上面core模块(core模块就当成一个整合jar包)
<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>SolaSecurity</groupId>
<artifactId>security</artifactId>
<version>1.0.0</version>
</parent>
<artifactId>security-app</artifactId>
<dependencies>
<dependency>
<groupId>SolaSecurity</groupId>
<artifactId>security-core</artifactId>
<version>1.0.0</version>
</dependency>
</dependencies>
</project>
再建立一个browser引入core的jar 同时加入新的依赖
<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>SolaSecurity</groupId>
<artifactId>security</artifactId>
<version>1.0.0</version>
</parent>
<artifactId>security-browser</artifactId>
<dependencies>
<dependency>
<groupId>SolaSecurity</groupId>
<artifactId>security-core</artifactId>
<version>1.0.0</version>
</dependency>
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session</artifactId>
<version>1.3.3.RELEASE</version>
</dependency>
</dependencies>
</project>
因为browser是浏览器模块 所以 这里加入了一个springsession 如果集群服务环境的话来控制session一致
最后我们来建一个demo子模块
案例从browser开始,所以在demo模块引入browser,模块的jar包
<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>SolaSecurity</groupId>
<artifactId>security</artifactId>
<version>1.0.0</version>
</parent>
<artifactId>security-demo</artifactId>
<dependencies>
<dependency>
<groupId>SolaSecurity</groupId>
<artifactId>security-browser</artifactId>
<version>1.0.0</version>
</dependency>
</dependencies>
</project>
之后无聊启动一下demo项目 报错是正常的 因为(之前还有个错,没有配置数据库地址也会报错不过我比较机智)
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session</artifactId>
<version>1.3.3.RELEASE</version>
</dependency>
session的存储没有配置,暂时可以把他关掉
spring:
session:
store-type: none
然后我们在页面测测我们写的helloworld接口(就是返回个字符串)
然后弹出来个这玩意
这个默认的账号是user,默认的密码会在控制台打出
也可以自己设置
security:
user:
name: sola
password: sola
暂时也可以关闭它,在启动类里加入注解
@SpringBootApplication
@EnableAutoConfiguration(exclude = {
org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration.class
})
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
这样基本的操作就搞完了,下面可以搞点事情了