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

网站网址查询ip营销策略有哪些理论

网站网址查询ip,营销策略有哪些理论,东莞开发方案公司,电影网站要怎样做才有出路在Spring Boot项目中新建WebSocket服务&#xff0c;可以按照以下详细步骤进行操作&#xff1a; 1.创建Spring Boot项目 可以通过Spring Initializr&#xff08;<>&#xff09;快速创建一个新的Spring Boot项目&#xff0c;添加Spring Web和Spring Boot DevTools依赖&…

在Spring Boot项目中新建WebSocket服务,可以按照以下详细步骤进行操作:


1.创建Spring Boot项目
可以通过Spring Initializr(<>)快速创建一个新的Spring Boot项目,添加`Spring Web`和`Spring Boot DevTools`依赖,也可以添加`Lombok`依赖来简化代码。


2.添加WebSocket依赖
在`pom.xml`文件中添加Spring Boot WebSocket相关依赖:

```xml
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-websocket</artifactId>
</dependency>
```

3.配置WebSocket
创建一个配置类来启用WebSocket支持,并定义处理器和拦截器:

```java
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.socket.config.annotation.EnableWebSocket;
import org.springframework.web.socket.config.annotation.WebSocketConfigurer;
import org.springframework.web.socket.config.annotation.WebSocketHandlerRegistry;
import org.springframework.web.socket.server.standard.ServletServerContainerFactoryBean;

@Configuration
@EnableWebSocket
public class WebSocketConfig implements WebSocketConfigurer {

    @Override
    public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) {
        registry.addHandler(myHandler(), "/ws").setAllowedOrigins("*");
    }

    @Bean
    public MyWebSocketHandler myHandler() {
        return new MyWebSocketHandler();
    }

    @Bean
    public ServletServerContainerFactoryBean createWebSocketContainer() {
        ServletServerContainerFactoryBean container = new ServletServerContainerFactoryBean();
        container.setMaxTextMessageBufferSize(8192);
        container.setMaxBinaryMessageBufferSize(8192);
        return container;
    }
}
```

在上述代码中:

• `registerWebSocketHandlers`方法用于注册WebSocket处理器`MyWebSocketHandler`,并指定WebSocket连接的路径为`/ws`,同时允许所有来源的连接(`setAllowedOrigins("*")`)。

• `myHandler`方法返回一个`MyWebSocketHandler`实例,该实例是自定义的WebSocket处理器,用于处理WebSocket连接中的各种事件。

• `createWebSocketContainer`方法用于配置WebSocket容器的一些参数,如最大文本消息缓冲区大小和最大二进制消息缓冲区大小。


4.创建WebSocket处理器
创建`MyWebSocketHandler`类,继承`TextWebSocketHandler`或`WebSocketHandler`,并重写相应方法来处理WebSocket事件:

```java
import org.springframework.web.socket.TextMessage;
import org.springframework.web.socket.WebSocketSession;
import org.springframework.web.socket.handler.TextWebSocketHandler;

public class MyWebSocketHandler extends TextWebSocketHandler {

    @Override
    public void afterConnectionEstablished(WebSocketSession session) throws Exception {
        super.afterConnectionEstablished(session);
        System.out.println("连接建立:" + session.getId());
    }

    @Override
    protected void handleTextMessage(WebSocketSession session, TextMessage message) throws Exception {
        super.handleTextMessage(session, message);
        System.out.println("收到消息:" + message.getPayload());
        session.sendMessage(new TextMessage("服务器已收到消息:" + message.getPayload()));
    }

    @Override
    public void afterConnectionClosed(WebSocketSession session, CloseStatus status) throws Exception {
        super.afterConnectionClosed(session, status);
        System.out.println("连接关闭:" + session.getId());
    }
}
```

在上述代码中:

• `afterConnectionEstablished`方法在WebSocket连接建立后被调用,可以在这里进行一些初始化操作,如打印连接ID。

• `handleTextMessage`方法用于处理客户端发送的文本消息,可以在这里对消息进行处理,并向客户端发送响应。

• `afterConnectionClosed`方法在WebSocket连接关闭后被调用,可以在这里进行一些清理操作,如打印连接关闭信息。


5.创建控制器(可选)
如果需要通过HTTP接口触发WebSocket消息发送,可以创建一个控制器:

```java
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.messaging.simp.SimpMessagingTemplate;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class WebSocketController {

    @Autowired
    private SimpMessagingTemplate template;

    @GetMapping("/send")
    public String send(@RequestParam String message) {
        template.convertAndSend("/topic/messages", message);
        return "消息已发送";
    }
}
```

在上述代码中:

• `SimpMessagingTemplate`用于向指定的WebSocket订阅路径发送消息。

• `send`方法通过`@GetMapping`注解定义了一个HTTP GET接口`/send`,当访问该接口时,会将请求参数`message`作为消息发送到WebSocket订阅路径`/topic/messages`。


6.前端页面测试
创建一个简单的HTML页面来测试WebSocket连接和消息发送:

```html
<!DOCTYPE html>
<html>
<head>
    <title>WebSocket Test</title>
    <script>
        var ws = new WebSocket("ws://localhost:8080/ws");
        ws.onopen = function () {
            console.log("连接已建立");
        };
        ws.onmessage = function (event) {
            console.log("收到消息:" + event.data);
        };
        ws.onclose = function () {
            console.log("连接已关闭");
        };
        function sendMessage() {
            var message = document.getElementById("message").value;
            ws.send(message);
        }
    </script>
</head>
<body>
    <h1>WebSocket Test</h1>
    <input type="text" id="message" placeholder="输入消息">
    <button οnclick="sendMessage()">发送消息</button>
</body>
</html>

 

定时器

(定时器)主要使用 @Scheduled 注解

启用定时任务支持  在Spring Boot的主类或配置类上添加 @EnableScheduling 注解,以启用定时任务支持:java复制import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
@EnableScheduling
public class ScheduledTaskApplication {
    public static void run(String[] args) {
        SpringApplication.run(ScheduledTaskApplication.class, args);
    }
}
2. 定义定时任务  创建一个类,使用 @Scheduled 注解标记需要定时执行的方法。可以指定任务的执行周期(如固定延迟、固定频率或Cron表达式):java复制import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

@Component
public class MyScheduledTasks {

    // 每5秒执行一次
    @Scheduled(fixedRate = 5000)
    public void fixedRateTask() {
        System.out.println("Fixed Rate Task executed at: " + new java.util.Date());
    }

 

http://www.dtcms.com/wzjs/70182.html

相关文章:

  • 代购网站系统建网站不花钱免费建站
  • 资兴网站设计百度推广怎么赚钱
  • 自己做坑人网站的软件惊艳的网站设计
  • 创建学校网站2345网址大全设主页
  • 网站注册账号怎么做哈尔滨新闻头条今日新闻
  • 个人做电影网站违法吗怎么做品牌推广和宣传
  • 网站怎么做图片动态图片不显示了网站快速上排名方法
  • 用html做网站代码怎样制作网站教程
  • wordpress 知言北京seo排名厂家
  • semantic scholar专业搜索引擎seo合作
  • 做婚纱影楼网站的价格疫情防控数据
  • wordpress文章id排序百度seo优化系统
  • 制作公司网站用什么软件公众号推广接单平台
  • 江苏越润建设有限公司网站广州发布紧急通知
  • 武汉网站制作027东莞seo关键词排名优化排名
  • 云主机可以做多少网站空间常见的网络直接营销有哪些
  • 网站建设的基本流程包括什么品牌推广策略与方式
  • 手机网站制作推广定制如何做好平台推广
  • 网站服务器用什么系统西安网页设计
  • wordpress 禁止删除分类seo关键词推广优化
  • 做姓氏图的网站nba排名最新排名
  • 自建网站怎么做后台管理系统长沙seo优化公司
  • 商城网站制作 价格搜狗站长平台打不开
  • 做导购网站要多少钱seo优化一般优化哪些方面
  • 关于网页设计搜索引擎优化实训心得
  • 遵义网站制作小程序代运营套餐价格表
  • 上海大型网站建设公司排名黑帽seo技术有哪些
  • 怎么做电玩网站潍坊seo关键词排名
  • 网站组成部分关键词代发排名首页
  • 怎样用eclipse做网站潍坊关键词优化平台