当前位置: 首页 > news >正文

傻瓜式网页制作网站苏州城乡建设网站查询

傻瓜式网页制作网站,苏州城乡建设网站查询,医疗网站前置审批,wordpress 编辑器隔行背景#xff1a; 之前一直只考虑用JavaSe进行游戏服务器开发#xff0c;目前项目使用了Spring#xff0c;发现还是非常好的#xff0c;好处如下: 好处1:依赖注入非常方便#xff0c;我们只使用Spring最基本的功能即可#xff0c;这样子就算是有一些模块不使用Spring管理…背景 之前一直只考虑用JavaSe进行游戏服务器开发目前项目使用了Spring发现还是非常好的好处如下: 好处1:依赖注入非常方便我们只使用Spring最基本的功能即可这样子就算是有一些模块不使用Spring管理也是非常方便的因为我现在已经能轻松控制住Spring容器的声明周期。 好处2: 模块之间就像搭建积木即可又相互配合。 我想支持web也是非常轻松。 好处3: 这样子再去整合Mybatis、或者其它的一些MQ、ES之类的中间件就太简单了。 pom.xml   // 项目中使用了lettuce这里作为演示 dependencygroupIdio.lettuce/groupIdartifactIdlettuce-core/artifactIdversion5.1.8.RELEASE/version/dependencydependencygroupIdcom.alibaba/groupIdartifactIdfastjson/artifactId!--起码1.2.48以上因为这个版本一下存在漏洞--version1.2.48/version/dependency 1.Application.java package com.example.springbootgame.application;import org.springframework.context.ApplicationContext;public class Application {private static ApplicationContext applicationContext;public static ApplicationContext getApplicationContext() {return applicationContext;}public static void setApplicationContext(ApplicationContext applicationContext) {Application.applicationContext applicationContext;}public static T T getBean(ClassT requiredType) {if (applicationContext null) {return null;}return applicationContext.getBean(requiredType);}}2.RedisConfig.java // 使用Configuration引入一些自定义的Bean package com.example.springbootgame.config;import io.lettuce.core.RedisClient; import io.lettuce.core.RedisURI; import io.lettuce.core.api.sync.RedisCommands; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration;import java.time.Duration; import java.time.temporal.ChronoUnit;Configuration public class RedisConfig {Beanpublic GameRedis getGameRedis() {RedisURI redisURI RedisURI.builder().withHost(localhost).withPort(6379).withTimeout(Duration.of(10, ChronoUnit.SECONDS)).build();RedisClient redisClient RedisClient.create(redisURI);return new GameRedis(redisClient.connect().sync());} }3.GameRedis.java // 包装器模式。包装出自己的访问接口 package com.example.springbootgame.config;import io.lettuce.core.api.sync.RedisCommands;public class GameRedis {private RedisCommands redisCommands;public GameRedis(RedisCommands redisCommands) {this.redisCommands redisCommands;}public K, V V get(K k) {return (V) redisCommands.get(k);}public K, V void set(K k, V v) {redisCommands.set(k, v);} }4.LoginHandler.java package com.example.springbootgame.handler;import com.alibaba.fastjson.JSON; import com.example.springbootgame.config.GameRedis; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller;import java.util.HashMap; import java.util.Map;Controller public class LoginHandler {AutowiredGameRedis gameRedis;/*** 玩家登录*/public void onCSLogin() {// 简单类型gameRedis.set(123, abc);String v gameRedis.get(123);System.out.println(v);// 复杂类型Data data new Data();data.map.put(k, 6666);gameRedis.set(obj, JSON.toJSONString(data));Data obj JSON.parseObject(gameRedis.get(obj), Data.class);System.out.println(obj);}private static class Data {public int num 1;public MapString, Integer map new HashMap();Overridepublic String toString() {return Data{ num num , map map };}} }5.GameServer.java package com.example.springbootgame;import com.example.springbootgame.application.Application; import com.example.springbootgame.handler.LoginHandler; import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.ApplicationContext; import org.springframework.context.ConfigurableApplicationContext;import java.io.IOException;SpringBootApplication Slf4j public class GameServer {public static void registerShutdownHook() {Runtime.getRuntime().addShutdownHook(new Thread(() - {log.info(gs shutdown in {}, Thread.currentThread().getName());// 测试bean的获取LoginHandler loginHandler Application.getBean(LoginHandler.class);loginHandler.onCSLogin();// 关闭Spring容器ApplicationContext applicationContext Application.getApplicationContext();if (applicationContext ! null) {ConfigurableApplicationContext cac (ConfigurableApplicationContext) applicationContext;cac.close();}}, ShutdownHook-GameServer-Thread));}public static void main(String[] args) {registerShutdownHook();// 启动Spring容器ApplicationContext applicationContext SpringApplication.run(GameServer.class, args);Application.setApplicationContext(applicationContext);// 初始化各个模块,如:进行handler的扫描// 阻塞关服try {System.in.read();} catch (IOException e) {log.error(exception, e);}}}. ____ _ __ _ _/\\ / ____ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | _ | _| | _ \/ _ | \ \ \ \\\/ ___)| |_)| | | | | || (_| | ) ) ) ) |____| .__|_| |_|_| |_\__, | / / / /|_||___//_/_/_/:: Spring Boot :: (v2.7.17)2023-11-18 20:56:48.393 INFO 7056 --- [ main] com.example.springbootgame.GameServer : Starting GameServer using Java 11.0.11 on DESKTOP-JTMBOEI with PID 7056 (D:\2_test_java\SpringBootGame\target\classes started by Administrator in D:\2_test_java\SpringBootGame) 2023-11-18 20:56:48.397 INFO 7056 --- [ main] com.example.springbootgame.GameServer : No active profile set, falling back to 1 default profile: default 2023-11-18 20:56:48.960 INFO 7056 --- [ main] io.lettuce.core.EpollProvider : Starting without optional epoll library 2023-11-18 20:56:48.961 INFO 7056 --- [ main] io.lettuce.core.KqueueProvider : Starting without optional kqueue library 2023-11-18 20:56:49.492 INFO 7056 --- [ main] com.example.springbootgame.GameServer : Started GameServer in 1.512 seconds (JVM running for 2.701) 1 2023-11-18 20:56:50.723 INFO 7056 --- [meServer-Thread] com.example.springbootgame.GameServer : gs shutdown in ShutdownHook-GameServer-Thread abc Data{num1, map{k6666}}
http://www.hkea.cn/news/14570346/

相关文章:

  • 智慧团建入口登录网站阿里服务器怎么做网站服务器
  • 大学生做网上英语翻译兼职网站商城类的网站怎么做
  • 定制网站制作系统长沙房地产管理局
  • 时光慢网站建设方案论文企业网站html模板
  • 英语网站案例做网站免费服务器哪家好
  • 如何使用ps做网站建设银行怎么从网站上改手机号码
  • 鞍山建立公司网站的步骤wordpress免登录发布接口
  • 如何建设cpa影视网站下城区做网站
  • 云南网站建设c3saleswordpress points
  • 网站模板源码免费下载注册公司每年需要缴纳什么费用
  • 减肥产品网站模板wordpress 获取文章id
  • 网站代理游戏淘宝做推广网站
  • 假山网站如何做网络营销零基础培训
  • 阿里云网站建设怎么样网站基础代码html
  • asp网站上传后台在哪国内做外贸如何访问外国网站
  • 产品设计排版学seo优化
  • 广州建网站公司排名云南云岭建设集团官方网站
  • 精品网站建设费用 v磐石网络简单静态网页制作代码
  • 备案 几个网站中国空间站最新消息新闻
  • 凡科网站建设怎么去掉极速建站wordpress媒体文件
  • 哪些网站做家政推广多仓库版仓库管理网站建设源码
  • 西安网站公司建设深圳龙华区新石社区
  • 摄影师网站推荐推广赚钱app
  • 汉阳做网站多少钱淘宝客推广怎样做网站
  • 阿里云服务器做盗版视频网站微信开发公众平台
  • 原墨网站建设建设一个网站首先需要
  • 免费站长工具做喷绘的图在哪个网站找
  • 网站系统名称网站 域名解析出错
  • 门户网站建设意见专业团队张伟原图
  • 旅游网站ppt应做的内容优秀的设计网站有哪些