不属于网站建设方式的是,河南省建设厅注册中心网站首页,wordpress升级文章编辑,产品网站设计理念一.在linux中确保启动起来redis和nacos
依赖记得别放dependencyManagement/dependencyManagement这个标签去了
1.首先查看已经启动的服务 docker ps 查看有没有安装redis和nacos 2.启动redis和nacos
发现没有启动redis和nacos,我们先来启动它。#xff0c;…一.在linux中确保启动起来redis和nacos
依赖记得别放dependencyManagement/dependencyManagement这个标签去了
1.首先查看已经启动的服务 docker ps 查看有没有安装redis和nacos 2.启动redis和nacos
发现没有启动redis和nacos,我们先来启动它。你们的指令后面的名字得是你们的哈。
docker start nacosdocker start redis-6379二.新建idea的maven项目 2.导入依赖
parentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion2.0.7.RELEASE/version/parentpropertiesjava.version1.8/java.versionproject.build.sourceEncodingUTF-8/project.build.sourceEncodingproject.reporting.outputEncodingUTF-8/project.reporting.outputEncodingspring-boot.version2.6.13/spring-boot.versionjwt.version0.7.0/jwt.versionfastjson.version1.2.60/fastjson.versionspring-cloud-alibaba.version2.0.3.RELEASE/spring-cloud-alibaba.versionspring-cloud.versionFinchley.SR2/spring-cloud.version/propertiesdependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactIdscopecompile/scope/dependencydependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactId/dependency!--json--dependencygroupIdcom.alibaba/groupIdartifactIdfastjson/artifactIdversion${fastjson.version}/versionscopecompile/scope/dependency/dependenciesdependencyManagementdependenciesdependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-dependencies/artifactIdversion${spring-cloud.version}/versiontypepom/typescopeimport/scope/dependencydependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-alibaba-dependencies/artifactIdversion${spring-cloud-alibaba.version}/versiontypepom/typescopeimport/scope/dependency/dependencies/dependencyManagementbuildpluginsplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactIdconfigurationclassifierexec/classifier/configuration/plugin/plugins/build
3.创建控制类 package com.jr.controller;import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import javax.servlet.http.HttpSession;RestController
RequestMapping(/demo)
public class DemoController {GetMappingpublic String show(HttpSession session){return session.getId();}
}4.创建启动类
package com.jr;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;SpringBootApplication
public class SpringBootMain {public static void main(String[] args) {SpringApplication.run(SpringBootMain.class,args);}
}5.创建application.yml
在resources下创建application.yml文件 server:port: 100
6.再来一个一模一样的项目 此时有两个不同的项目
7.idea中打开第二个项目
然后要改它的application.yml和pom.xml的有些地方。 7.1第二个项目SpringSessiondemo1的application.yml
server:port: 200 7.2 第二个项目SpringSessiondemo1的pom.xml
把artifactId这里改成你第二个项目的名字 groupIdcom.jr/groupIdartifactIdSpringSessiondemo1/artifactIdversion1.0-SNAPSHOT/version 8.同时启动两个项目 在自己的浏览器上的地址栏访问自己的项目。
第一个项目 第二个项目; 两个项目的sessionID不一致。
二.两个项目与nacos建立联系
1.两个项目都在pom.xml文件里添加下面的依赖
dependencygroupIdorg.springframework.session/groupIdartifactIdspring-session-data-redis/artifactId
/dependency
dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-data-redis/artifactId
/dependency
dependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-starter-alibaba-nacos-discovery/artifactId
/dependency
dependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-starter-alibaba-nacos-config/artifactId
/dependency
2.两个项目都在application.yml里添加下面的代码
spring:session:store-type: redis 第一个项目 第二个项目: 3.两个项目都创建application.properties文件
在resources下创建application.properties文件 两个项目的application.properties都添加以下代码
spring.application.namesessiondemo 4.登录nacos网站
这里可以参考我的另一个博客因为这有点复杂
在idea使用nacos微服务-CSDN博客 5.配置中心 host是你自己的虚拟机ip
spring:
redis:
host: 192.168.146.39
port: 6379
password: 123456 6.两个项目都创建bootstrap.yml文件
两个项目的bootstrap.yml文件都添加以下代码。
spring:cloud:nacos:discovery:server-addr: 192.168.146.39:8848config:server-addr: 192.168.146.39:8848file-extension: yamlnamespace: 8920c585-274d-477f-b55f-9324be8da9bdshared-configs:- data-id: dz14redisssesiton.yamlgroup: DEFAULT_GROUPinetutils:preferred-networks: 192.168.116 7.两个项目启动类都添加注解EnableRedisHttpSession 8.新建SessionConfig配置类
需要创建一个config目录新建SessionConfig配置类修改domain作用域。 package com.jr.config;import org.springframework.context.annotation.Bean;
import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer;
import org.springframework.data.redis.serializer.RedisSerializer;
import org.springframework.session.web.http.CookieSerializer;
import org.springframework.session.web.http.DefaultCookieSerializer;public class SessionConfig {Beanpublic CookieSerializer cookieSerializer() {DefaultCookieSerializer serializer new DefaultCookieSerializer();serializer.setCookieName(JSESSIONID);serializer.setCookiePath(/);serializer.setDomainNamePattern(^.?\\.(\\w\\.[a-z])$);return serializer;}Beanpublic RedisSerializerObject redisSerializer() {return new GenericJackson2JsonRedisSerializer();}
}9.再到nacos网站 、 10.再次启动我们的idea项目
两个变成一样的了。 三.我的idea项目结构
今天内容到此结束下面是我idea项目的结构希望能帮到大家。
第一个项目; 第二个项目