Spring Security之旅————————————基本介绍安装(1)

首先建立一个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);
	}
}

这样基本的操作就搞完了,下面可以搞点事情了

猜你喜欢

转载自blog.csdn.net/jiulanhao/article/details/83860537