这一个什么项目

使用技术
  • Spring MVC

  • Spring Security

  • Spring webflux

  • Spring stomp

  • Jetty 嵌入式运行

  • H2 嵌入式数据库

  • Spring Security OAuth2 Client

  • ActiveMQ

实现功能

  • 用户使用Stomp 协议发送,接收信息

  • 用户账号注册,账号密码登陆认证

  • 单用户登陆控制

  • github,google 授权登陆

  • 实时接收,发送信息,用户实时在线列表

  • API 接口访问权限控制

  • 订阅频道信息权限控制

  • 既可以使用模板技术页面,可以使用前端分离的方式,可以自由选择

因为这个项目使用Jetty作为嵌入式Servlet 容器,可以像Spring Boot 使用main方法直接运行项目,一句话概括 一个使用Spring MVC项目就像Spring Boot一样运行,一样部署。如果你只想单纯使用Spring MVC构建项目,但是像和Spring Boot直接编译成一个jar运行,又可以忍受没有修改自动编译重启,可以了解这个Demo。

在逐步开发过程中,发现自己需求,用户使用,页面样式,做得都不是很好。希望很和牛逼的人合作,一齐完善这个项目,能让它变成可以使用的产品。自己也可以在此不断学习,不断累计新的知识,慢慢变强起来。如果有人想加入我,这个项目里的三个邮箱都是我的账户,随时可以给我email

github

为什么选用Spring MVC

其实这种Spring Stomp+Spring Security 项目网上有很多,大多数都是用Spring Boot构建,很少有用MVC的。其实这几年很多新出技术demo大多数都是用Spring Boot构建,Spring Boot借助简洁的配置,大量自动化注入深得开发者喜爱,抢夺Spirng MVC市场。但是,再学习前提下,我特别喜欢用Spring MVC,可以深入了解每一个技术细节,每引入一个新东西,都需要了解怎么合并到Spring框架中。我一开始做的时候就直接选择Spring MVC,当我想去网上搜索一些参照例子,发现少得可惜,也踩了不少坑。如果你看下这个项目代码,你会发现,将pom的依赖换成 Spring Boot,不用改任何代码就可以直接运行了。因为你会发现,这个项目也基本上没有任何xml配置,非常简洁,引入Spring Security等框架也只是加一个注解OK。公司构建一个普通Java Web项目都喜欢用Spring Boot,因为构建非常快,配置少,部署方便,但是使用Spring MVC构建也不差什么,Spring Boot有很多特性都是专门为Spring Cloud使用,单纯用来做Web有点浪费了。很多人还停留在,使用Spring MVC 这些框架就是要引入一大堆xml配置文件,但是我跟你说,自从Spring 3.2 推出后,就可以使用Java Config方式了,现在都更新到了Spring 5了,还在用xml方式构建项目。

项目路径

shenyifeng.tk/static/html…

登录页面 可以输入自己账户,或者使用github,gmail 授权登录,账户部分信息会保存到h2数据库中,或者去注册账户 ting6405@gmail.com,aojianshop@gmail.com,shenyifeng0xw@gmail.com 密码:123456 聊天页面

移动端样式

其他的功能我就不展示了,有兴趣可以直接到 shenyifeng.tk/static/html… 查看

代码就在 https://github.com/xiaowu6666/spring-stomp-security-webflux-embedded-jetty

转载于:https://juejin.im/post/5c6fc25ef265da2ddb2965fc

Spring MVC+Stomp+Security+H2 Jetty 1相关推荐

  1. Spring MVC+Stomp+Security+H2 Jetty

    #### 这一个什么项目 ##### 使用技术 Spring MVC Spring Security Spring webflux Spring stomp Jetty 嵌入式运行 H2 嵌入式数据库 ...

  2. Spring MVC页面重定向

    以下示例显示如何编写一个简单的基于Web的重定向应用程序,这个应用程序使用重定向将http请求传输到另一个页面.首先使用Eclipse IDE,并按照以下步骤使用Spring Web Framewor ...

  3. Spring MVC实现Spring Security,Spring Stomp websocket Jetty嵌入式运行

    使用Spring框架各个组件实现一个在线聊天网页,当有用户连接WebSocket,服务器监听到用户连接会使用Stomp推送最新用户列表,有用户断开刷新在线列表,实时推送用户聊天信息.引入Jetty服务 ...

  4. rome rss_RSS阅读器使用:ROME,Spring MVC,嵌入式Jetty

    rome rss 在这篇文章中,我将展示一些创建Spring Web应用程序的指南,这些应用程序使用Jetty并使用名为ROME的外部库运行RSS来运行它. 一般 我最近创建了一个示例Web应用程序, ...

  5. 使用Spring MVC应用程序配置嵌入式H2控制台

    在上一篇文章中,我们使用嵌入式H2数据库将Spring MVC应用程序部署到Tomcat. 在嵌入式数据库中浏览数据非常困难,因为我们无法连接外部客户端来查看数据. H2提供了一个Web控制台,我们可 ...

  6. RSS阅读器使用:ROME,Spring MVC,嵌入式Jetty

    在这篇文章中,我将展示一些创建Spring Web应用程序的准则,使用Jetty以及使用名为ROME的外部库运行RSS来运行它. 一般 我最近创建了一个示例Web应用程序,充当RSS阅读器. 我想检查 ...

  7. Spring MVC,Thymeleaf,Spring Security应用程序中的CSRF保护

    跨站点请求伪造(CSRF)是一种攻击,它迫使最终用户在当前已通过身份验证的Web应用程序上执行不需要的操作. 如果您使用Spring Security 3.2及更高版本,在Spring MVC / T ...

  8. Spring Security(三十六):12. Spring MVC Test Integration

    Spring Security provides comprehensive integration with Spring MVC Test Spring Security提供与Spring MVC ...

  9. web框架的前生今世--从servlet到spring mvc到spring boot

    背景 上世纪90年代,随着Internet和浏览器的飞速发展,基于浏览器的B/S模式随之火爆发展起来.最初,用户使用浏览器向WEB服务器发送的请求都是请求静态的资源,比如html.css等.  但是可 ...

  10. Build RESTful APIs with Spring MVC

    为什么80%的码农都做不了架构师?>>>    #Building REST API As stated in before posts, we are going to build ...

最新文章

  1. 一文掌握明年物联网传感器市场!2022中国AIoT产业全景图谱报告新鲜出炉
  2. MATLAB读取JSON数据(使用JSONlab工具箱)
  3. dedecms index_testenv.php,一招方面解决DedeCms后台反应慢
  4. 【机器学习基础】说模型过拟合的时候,说的是什么?
  5. 转-聚合查询变慢-详解Elasticsearch的Global Ordinals与High Cardinality
  6. [渝粤教育] 西南科技大学 机械专业外语 在线考试复习资料2021版
  7. python3模块: requests
  8. 漫步最优化三十——非精确线搜索
  9. android init.rc 到底在哪里?
  10. 机器学习与计算机视觉(slam技术)
  11. HTML DOM 对象简单介绍
  12. Android省电妙招
  13. C# 计算程序运行耗时的方法
  14. 考研数学一【高数】 第18讲多元函数积分学
  15. DX基础 | DXGI(DirectX Graphics Infrastructure)
  16. AirServer投屏轻松地将iPhone、iPad投屏到Mac上面教程
  17. 2022年强网杯rcefile wp
  18. 数学原理-高等数学复习笔记 ——1.2 泰勒公式 罗尔中值定理与拉格朗日中值定理(附加多个实战题目)
  19. JavaBean为什么需要序列化?
  20. Typora使用技巧 | 各种跳转 【必备】

热门文章

  1. 【基础教程】基于matlab图像处理(读写+显示+运算+转换+变换+增强+滤波+分析+统计)【含Matlab源码 144期】
  2. ai 实用新型专利_专利制度协调AI创造的创新
  3. 负熵主义者_未来主义者
  4. 算法偏见是什么_人工智能中的偏见有什么作用?
  5. linux ab 命令参数,linux环境中ab命令简介及结果分析
  6. 会做饭的机器人曰记_会做饭的机器人作文二百字
  7. 无土栽培中的物联网技术应用
  8. 《LabVIEW 虚拟仪器程序设计从入门到精通(第二版)》一导读
  9. Nginx负载均衡 后端服务器怎么共享Session 问题
  10. 脏读,幻读,不可重复读的区别