1-1 请说一下你项目中是如何进行项目管理和发布的
在我们的项目中,使用的是将Gogs也就是Git的私服.员工将代码提交到Gogs上进行协作开发.然后Jenkins作为项目的自动运维发布.当Gogs获取到代码后,触发jenkins自动pull代码,通过maven编译、打包,然后通过执行shell脚本使docker构建镜像并push到私服仓库,此操作完成后jenkins服务器上再执行SSH命令登录到部署服务器,docker从仓库(私服)拉取镜像,启动容器。整个操作流程完成。
1-2 现在浏览器点击按钮出现了一个报错,如何定位发生问题的代码
首先先分析发生错误的业务,然后进入到业务模块.进入服务模块后,根据请求的路径,查找一层一层查找到发生错误抛出异常的具体是哪个方法,然后进入方法,找到刨除异常或者是抛出问题的具体代码附近,打上断点.通过断点,审查是具体的哪一步出现问题从而导致进入到错误异常分支.
1-3 你得项目中进行用户的登录和检验的详细流程是怎样的
用户登录的详细流程是这样的,首先,用户输入账号,和密码,点击登录按钮,发送登录请求..请求中携带着账号信息和密码信息,将信息封装转递给后端,在后端中,首先先去查询数据库是否存在账号,如果不存在,则抛出业务类异常,如果存在则继续从表中查询出密码.将输入的密码使用MD5格式加密,加密成功后,将加密后的密码和从数据库中查询出的密码进行比对.如果比对失败,则抛出密码错误的业务异常.如果比对成功,则登陆成功,则生成token返回给前端
1-4 说一下文章发布的流程
文章的发布流程是这样的.首先用户将编辑好的文章信息,通过发布按钮进行提交,当点击提交按钮的时候,前端会将数据全部传输后端,后端会用一个DTO接受这个数据并封装.然后会对DTO中的信息进行判断,如果DTO携带这id则判断为修改.然后删除中间表的信息,并根据新的数据重新生成中间表的信息并存入中间表.
如果DTO没有携带id则为新建文章.,新建文章需要判断是否存为草稿,如果存为草稿,则将状态改为草稿.不把信息存入到中间表.,如果不存为草稿,则根据用户的信息添加中间表
接下来判断是封面是否为自动,不是的话,则将封面添加到数据库中,并展示封面.如果是自动,则再进行判断,判断文章图片数量,从而选择封面图片数量..到此信息全部保存完成,文章发布流程结束.