Java项目场景面试题

1.单点登录这块怎么实现的?

1)解释下单点登录,Single Sign On(SSO),只需要登录一次,就可以访问所有信任的应用系统。

2)常见解决方案:JWT

  • 用户访问其他系统,会在网关层判断token是否有效
  • 如果token无效则会返回401表示认证失败,这时前端跳转到登录页面
  • 用户发送登录请求,后端校验用户成功后返回给浏览器一个token,浏览器把token保存到cookie中
  • 再去访问其他服务的时候,都需要携带token,由网关统一验证后路由到目标服务。

2、权限认证是如何实现的?

1)后台管理系统的开发经验

2)介绍RBAC权限模型5张表的关系(用户、角色、权限)

3)权限框架:Apache shiro、Spring security(推荐)

3、上传数据的 安全性你们怎么控制?

使用非对称加密或者对称加密:

1)对称加密:加密和解密使用相同的秘钥,即加密秘钥也可以作为解密秘钥。

  • 优点:加密速度快,效率高
  • 缺点:相对不太安全,容易破解,建议不要保存敏感信息

2)非对称加密:公开秘钥和私有秘钥两种,公开秘钥加密,私有秘钥解密

  • 优点:与对称加密相比,安全性更高
  • 缺点:加密和解密速度慢,建议少量数据加密 

4、你负责项目的时候遇到了哪些比较棘手的问题?怎么解决的?

 6、项目中使用过日志吗?怎么排查问题?

查看日志的命令:

  • 实时监控日志的变化:tail -f xx.log
  • 按照行号查找:tail -n 100 xx.log
  • 查询某一个日志的区间:cat -n xx.log | tail -n +100 | head -n 100 (查询100行至200行的日志)
  • 按照关键字找日志的信息:cat -n xx.log |grep "debug"
  • 分页查询日志信息:cat -n xx.log | grep "debug" |more
  • 筛选过滤之后,输出到一个文件:cat -n xx.log |grep "debug" > debug.txts

  • 4
    点赞
  • 56
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Java商城项目面试问题: 1. 请简要介绍一下Java商城项目的架构设计。 Java商城项目的架构设计一般包括前端、后端和数据库三个部分。前端通常使用HTML、CSS和JavaScript等技术进行页面的设计和开发,后端使用Java语言,基于某个框架(如Spring)进行业务逻辑的处理和数据库的操作,数据库一般使用关系型数据库(如MySQL)进行数据的存储和管理。 2. 请谈谈你在Java商城项目中的角色和职责。 在Java商城项目中,我可以担任开发人员的角色,负责前端或后端的开发工作。前端开发主要包括页面设计和交互逻辑的实现,后端开发主要负责业务逻辑的编写和数据库操作的实现。我还负责与团队成员进行沟通和协作,与产品经理、设计师等共同推进项目开发进展。 3. 请谈谈你在Java商城项目中遇到的挑战和解决方法。 在Java商城项目中,可能会遇到性能优化、安全性保障、并发控制等挑战。针对性能优化,可以通过缓存、异步处理和数据库优化等方法进行优化;在保障安全性时,可以使用安全认证和权限控制机制等;对于并发控制,可以使用锁或分布式锁等方式保证数据的一致性。 4. 请谈谈你在Java商城项目中使用的技术和工具。 在Java商城项目中,我使用过Spring框架进行后端业务逻辑开发,使用MySQL进行数据的存储和管理。同时,我还使用过HTML、CSS和JavaScript等前端开发技术,以及Eclipse、IntelliJ IDEA等开发工具进行项目开发和调试。 5. 请谈谈你在Java商城项目中的合作经验。 在Java商城项目中,我与产品经理、设计师以及其他开发人员等团队成员紧密合作。我们进行需求分析、讨论功能实现、解决bug等工作时,我都能积极参与并提供自己的意见和建议。我善于沟通和协作,能够有效地与团队合作,共同推动项目的进展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

开心懒羊羊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值