#### 这一个什么项目
##### 使用技术
- 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,
为什么选用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方式构建项目。
项目路径
登录页面 初始化了三个账户
ting6405@gmail.com,aojianshop@gmail.com,shenyifeng0xw@gmail.com
,密码:123456
其他的功能我就不展示了,有兴趣可以直接到 查看
代码就在
https://github.com/xiaowu6666/spring-stomp-security-webflux-embedded-jetty