1.昨天为了将两个项目推送到远程仓库,了解了一下分支,将一个小工程作为一个分支,这是发生在git add .,git commit -m "描述"以及git reomte add origin HTTP之后的
  1. 获取当前仓库的分支
git branch
  1. 检查分支
git checkout branch
  1. 推送项目文件到分支
git push origin "分支名"
 
2.首先创建了一个test的数据库,然后创建了:sys_user、sys_role、sys_user_role三张表,并插入张表的数据;
 
3.编写了sso-common模块的payload(载荷)和result(结果)实体类;再编写了JsonUtil,JWTUtil以及RsaUtil等工具类
  1. 载荷
@data//get,set
public class Payload<T> implements Serializable{
private int id;
private T userInfo;//用户信息
private Date exppiration;//过期时间
}
  1. result
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Result implements Serializable{
private Inteher code;
private String msg;
private Object data;
}
  1. JsonUtil
public class JsonUtil{
private static final Logger logger = LoggerFactory.getLogger(JsonUtil.class);
private static final ObjectMapper mapper = new ObjectMapper();
//将指定对象序列化为一个Json字符串
public static String toString(Object obj){
if(obj == null){
return null;
}
if(obj.getClass() == String.class){
return (String)obj;
}
try{
return mapper.writeValueAsString(obj);//将obj序列化为JSON字符串
}catch(JsonProcessingException e){
logger.error("JSON序列化出错:"+obj, e);
return null;
} //将指定JSON字符串、输入流解析为指定数据类型
public static <T> T toBean(String json, Class<T>tClass){
try{
return mapper.readValue(json, tClass);
}catch(IOException e){
logger("json解析出错:"+json, e);
return null;
}
} //将指定JSON字符串解析为指定数据集合、键值对集合、复杂类型对象
public static <E> List<E> toList(String json, Class<E> eClass){
try{
return mapper.readValue(json, mapper.getTypeFactory()
.constructCollectionType(List.class, eClass));
}catch(IOException e){
logger.error("json解析出错:"+json, e);
return null;
}
}
}
}
  1. JwtUtil:生成和校验token
//1.生成一个字符串类型的base64的JTI(JWT的位移身份标识)密码

//2.私钥加密token(分钟)

//3.私钥加密token(秒钟)

//4.公钥解密token

//5.根据token获取用户信息

//6.根据token获取载荷信息
  1. RsaUtil
//1.从文件中读取密钥

//2.从字节数组中获取公钥

//3.读取路径文件返回字节数组类型
 
4.反思:自己每天代码花崽总结上面很久,为什么不用每个方法的文字俩表达这个具体函数呢,这样不是更加透彻,而且时间更快;到一周总结的时候,把这些代码实现一遍;这样可以更好地节约时间,也可以更好地理解
 
5.复盘:根据现在有的代码回忆起以前的一些知识,将对象序列化为一个JSON字符串,解析字符串为指定类型;再就是一些工具类的编写其实都是固定的一些条件和步骤,这些只要熟练了就知道,就算忘记,看一下也清楚;

3.载荷和结果实体类以及Jwt的更多相关文章

  1. .NET平台开源项目速览(18)C#平台JSON实体类生成器JSON C# Class Generator

    去年,我在一篇文章用原始方法解析复杂字符串,json一定要用JsonMapper么?中介绍了简单的JSON解析的问题,那种方法在当时的环境是非常方便的,因为不需要生成实体类,结构很容易解析.但随着业务 ...

  2. 实体类和DataTable的转换

    引子 最近在项目中在数据库查询的时间,总是要用到数据表到实体类对象列表的转化,自己封装了一个转换的方法,用起来还比较方便,记下来,以后可以重复使用,原理就主要是利用反射,当然有更好的ORM框架可以实现 ...

  3. [转]C#反射,根据反射将数据库查询数据和实体类绑定,并未实体类赋值

    本文来自:http://www.cnblogs.com/mrchenzh/archive/2010/05/31/1747937.html /****************************** ...

  4. 关于entityframework 自动生成实体类中加验证的属性重新生成后属性被覆盖解决办法

    1.手动创建一个部分类 (你可以手动创建 partial class, 内容为空) [MetadataType(typeof(AppleMetadata))] public partial class ...

  5. MVC Code First 当实体类发生变化时,如何自动更新数据库表

    下面做一个例子,Category是用户新建的一个实体类,然后添加一个字段,然后让数据库中的Category表也添加一个字段 1.Category.cs

  6. MVC -- 后台RedirectToAction传递实体类与字符串

    1.MVC -- 后台RedirectToAction传递实体类 RedirectToAction(控制器,控制器方法,实体类) 2.MVC -- 后台RedirectToAction传递字符串 Re ...

  7. XML带多属性解析为一个实体类(利用反射)

    最近在对接一个银行的项目,大概就是类似一个钱包的功能,在请求返回的数据时,发现返回的数据标准的XML格式的支付串,格式如下 <kColl id="inputOrig" app ...

  8. 【Java EE 学习 69 下】【数据采集系统第一天】【实体类分析和Base类书写】

    之前SSH框架已经搭建完毕,现在进行实体类的分析和Base类的书写.Base类是抽象类,专门用于继承. 一.实体类关系分析 既然是数据采集系统,首先调查实体(Survey)是一定要有的,一个调查有多个 ...

  9. Hibernate jpa 在实体类中对于时间的注解

    在时间类型DATE 属性上添加一个 @Temporal(TemporalType.DATE)(精确到年月日)@Temporal(TemporalType.TIME)(精确到时分秒)@Temporal( ...

  10. ABP理论学习之实体类

    返回总目录 本篇目录 实体类 惯例接口 审计 软删除 激活/未激活 IEntity接口 实体是DDD(领域驱动设计)的核心概念之一.Eirc Evans是这样描述的实体的:"它根本上不是通过 ...

随机推荐

  1. React中的CSS模块

    CSS模块       使用步骤:         1.新建一个XXX.moudle.css文件         2.在组件中引入css           impor classes(变量) fro ...

  2. python3GUI--打造一款音乐播放器By:PyQt5(附下载地址)

    @ 目录 一.准备工作 1.PyQt5 2.qtawesome 二.预览 1.启动 2.歌曲搜索 3.歌曲播放 4.评论查看 5.自定义背景 6.设置-基本设置 7.设置-高级设置 8.定时任务 三. ...

  3. EF OwnsOne 主键不自增

    menu public class Menu { /// <summary> /// id /// </summary> [Key, DatabaseGeneratedAttr ...

  4. percona mongo热备

    https://www.percona.com/doc/percona-server-for-mongodb/LATEST/hot-backup.html#hot-backup Hot Backup ...

  5. Vue+SSM+Element-Ui实现前后端分离(1)

    前言:最近学习vue,就突发奇想,小菜鸟的我是时候锻炼锻炼自己.闲话不说,整起 <-_-> 整体规划:先搭建前端,接下来后端,最后整合. 一.创建vue项目 1.安装nodejs( 傻瓜式 ...

  6. sqlserver数据备份

    sqlserver数据库 导入方法 第一种方法 1.打开SQL Server,写好登录名和密码点击连接. 2.打开数据库,右键某一个数据库,选择"新建查询(Q)". 3.再代码界面 ...

  7. 第七章 狄克斯特拉算法 (Dijkstra's algorithm)

    步骤 找出最便宜的节点,即可在最短时间内前往的节点 对于该节点的的邻居,检查是否有前往他们的更短路径,如果有,就更新其开销 重复这个过程,知道对图中的每个节点都这样做了 计算最终路径 条件 只适用于有 ...

  8. 10.10 2020 实验 6:OpenDaylight 实验——OpenDaylight 及 Postman 实现流表下发

    一.实验目的 熟悉 Postman 的使用:熟悉如何使用 OpenDaylight 通过 Postman 下发流表.   二.实验任务 推荐阅读:SDNLAB 文章:OpenFlow 协议超时机制简介 ...

  9. 6.Vue路由

    一.路由的基本概念与原理 路由是一个广义与抽象的概念,路由的本质就是对应关系 在开发中,路由分为: (1) 后端路由 (2) 前端路由 1.1 路由 1. 后端路由(根据不同的URL地址分发不同的资源 ...

  10. Servlet的学习之路

    一.什么是什么Servlet? Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程 ...