day07

day07

主要讲解点:
  1. 注册功能的实现(重点)
  2. 发短信和发邮件的技术(了解,会用)
  3. Redis及springDataRedis的使用(会用)
  4. ActiveMQ(重点)
    1. 客户注册手机号校验发送HTTP请求(能实现)

1、手机号校验

day07

day07

day07

2、发送http请求

day07

  1. 客户注册服务器发送短信验证码实现(能实现)

编写CustomerAction,获取手机号,发送短信

1、web.xml检查struts2 Filter是否配置

day07

2、pom.xml引入crm_domain支持

    day07

3、Action代码实现

day07

三、客户注册功能短信验证码校验(能实现)

1、校验短信验证码提交用户注册信息

day07

day07

day07

2、编写CustomerAction 提供regist方法

day07

3、bug修复将<button>改为<a>

day07

四、CRM系统提供WebService客户注册功能实现(重要)

编写CRM的WebService接口,实现客户信息保存操作

 

1、在CustomerService接口中

day07

2、实现

day07

访问路径:http://localhost:9002/crm_management/services/customerService/customer

修改bos_fore前端系统CustomerAction

day07

 

 

五、javamail发送邮件功能实现(能实现)

1、思路

1)用户注册时,输入邮件

2)Javamail技术,向用户邮箱发送一封激活邮件,含有激活码

3)用户在24小时内,可以点击激活邮件链接,绑定邮箱

4)邮箱的激活码为用户保存24小时,如何做到? Redis实现

 

2、具体实现

1)配置pom.xml添加javamail的坐标,添加common_parent

day07

2)在MainUtils工具类里配置发送邮件相关参数

day07

3)编辑邮件发送正文

day07

4)配置网易,客户端授权开启

day07

  1. redis下载安装使用(会用)

1、官网:https://redis.io/download

2、应用场景

发送绑定邮件后,用户会在24小时内,完成邮件绑定,这时需要保存邮件中激活码24小时,会使用Redis,Redis内存数据库(key-value存储结构)

3、安装包及解压目录

day07

day07

使用对应操作系统文件夹下命令启动redis

day07

redis-server.exe 服务启动程序

redis-cli.exe 客户端命令行工具

redis.conf 服务配置文件

通过redis-server.exe启动服务,默认端口6379

通过redis-cli.exe启动客户端工具

day07

  1. jedis操作redis和图形工具安装使用(会用)
  1. 网址:https://github.com/xetorthio/jedis
  2. pom依赖及用法

    day07

  3. 安装工具

day07

4、添加连接

day07

day07

5、查询key和value

day07

TTL是redis的key有效时间,显示-,没有设置key的有效期

6、设置key有效周期

day07

八、springDataRedis使用入门(会用)

1、官网:http://projects.spring.io/spring-data-redis/

2、pom引入

day07

3、配置applicationContext.xml配置redisTemplate

day07

day07

day07

4、测试代码

day07

九、客户注册发送绑定邮件激活码存入redis(能实现)

1、思路

在CustomerAction提供发送邮件代码,邮件中生成激活码,激活码保存在redis中

2、代码实现

    1)注入RedisTemplate

day07

2)先生成激活码,把激活码保存在redis中,用工具类MainUtils发送邮件,邮件内容里带着激活码

day07

十、客户注册邮箱绑定激活功能实现(能实现,会说)

1、思路

1)CustomerAction提供activeMail方法,接收客户手机号码和激活码

2)先判断激活码是否有效,如果激活码无效,提示用户

3)如果激活码有效,判断是否再重复绑定,T_CUSTOMER表type字段为1,绑定

4)如果用户没有绑定过邮箱,完成绑定

2、具体实现

1)激活邮件请求,请求方法为customer_activeMail,带了两个参数:telephone(手机号码)和activecode(激活码)

http://localhost:9003/bos_fore/customer_activeMail?telephone=15072868610&activecode=88335585084334946499244158126653

2)在CustomerAction提供activeMail方法

注意理解:如果从redis取出来的激活码为null或者与接收到激活码不同,则说明激活码无效;如果激活码有效,先判断邮箱是否有绑定过,绑定过则无需重新绑定,没绑定则绑定

day07

day07

3)编写CRM提供WebService方法

day07

4)实现

day07

5)DAO实现

day07

十一、ActiveMQ消息队列原理场景分析(理解,会说)        

        day07

  1. 为什么使用消息队列技术 JMS java message sever
    1. 解决服务之间耦合

2)使用消息队列,增加系统并发处理量

  1. ActiveMQ 应用场景分析

    1)用户注册,重点用户信息数据库保存,发短信、发邮件,增加业务处理复杂度,这时候用MQ,将发短信、发邮箱,通知MQ,由另外服务平台完成

2)搜索平台、缓存平台

查询数据,建立缓存、索引,不从数据库查询,从缓存或者索引库查询

当增加、修改,删除数据时,发送消息给MQ,缓存平台、索引平台从MQ获取到这个消息,更新缓存或者索引

十二、ActiveMQ消息队列安装使用(会用,会说)
  1. 官网:http://activemq.apache.org/ JMS(java message service)
  2. 安装成功访问地址:http://localhost:8161用户名和密码都是admin
  3. ActiveMQ使用的是标准生产者和消费者模型,有两种数据结构Queue、Topic

    1)Queue队列,生产者生产了一个消息,只能由一个消费者进行消费

    2)Topic话题,生产者生产了一个消息,可以由多个消费者进行消费

day07

bug:如果ActiveMQ安装后启不来,提示jdk版本问题可将path中的java_home提到最上面

day07

(RabbitMQ)流行的另一个消息服务器

Number Of Consumers 消费者 这个是消费者端的消费者数量

Number Of Pending Messages 等待消费的消息 这个是当前未出队列的数量。可以理解为总接收数-总出队列数

Messages Enqueued 进入队列的消息进入队列的总数量,包括出队列的。这个数量只增不减

Messages Dequeued 出了队列的消息可以理解为是消费这消费掉的数量

十三、ActiveMQ入门案例生产者代码实现(能实现)

1、导入activemq-all-5.14.0.jar

使用maven坐标导入

day07

2、编写MQ消息生产者

day07

1)默认tcp连接activeMQ端口61616

2)查看控制台

day07

十四、ActiveMQ入门案例消费者代码实现(能实现)

1、使用MessageConsumer完成消费

day07        

查看控制台,发现已经消费

day07

2、使用监听器,监听消息的内容,进行消费

day07

 

 

 

上一篇:Java复习Day07


下一篇:Python第二阶段学习 day07