获取用户信息并更新页面显示

本代码示例展示了如何使用 Spring Boot 中的 @RequestMapping 注解定义一个 RESTful 接口 /info2,用于获取用户信息,并使用 JavaScript 代码将用户信息更新到页面元素中。

Spring Boot 代码

@RequestMapping('/info2')
public String getUserInfo(UserModel userModel, HttpSession session) throws Exception
{
    userModel.setInstitution(RequestUtil.getSessionInfo(session,'institution'));
    userModel.setUsername(RequestUtil.getSessionInfo(session,'username'));

    return userModel.toString();
}

JavaScript 代码

<a href='javascript:information();'> <i class='layui-icon layui-icon-username layui-nav-img'></i> <span id='username'>用户名:</span> <span id='institution'>机构号:</span> </a>

function information() {
    $.post('../user/info2', {}, null, 'json')
        .done(function(re) {
            if(re.result=='success'){
                var userInfo = re.data;
                var userObj = JSON.parse(userInfo);
                console.log(userObj.username);
                console.log(userObj.institution);
                $('#username').text('用户名:' + userObj.username);
                $('#institution').text('机构号:' + userObj.institution);
            } else {
                popAlert('提示', re.msg);
            }
        })
        .fail(function(e) {
            popAlert('提示','请重新登录');
        });
}

代码说明

  1. Spring Boot 代码:

    • 使用 @RequestMapping 注解将 getUserInfo 方法映射到 /info2 接口。
    • HttpSession 中获取用户机构号和用户名,并设置到 userModel 对象中。
    • 返回 userModel 对象的字符串表示。
  2. JavaScript 代码:

    • 使用 $.post 方法向 /info2 接口发送 AJAX 请求。
    • 成功获取数据后,解析 JSON 数据,并将用户机构号和用户名更新到页面元素中。
    • 失败时,弹出错误提示框。

代码优化建议

  • 可以使用更规范的 JSON 格式返回数据,例如使用 { 'status': 'success', 'data': { 'username': '用户名', 'institution': '机构号' } } 的格式,而不是直接返回 userModel 的字符串表示。
  • 可以使用 Promise 或 async/await 替代 $.post 方法,使代码更简洁易懂。
  • 可以使用更加用户友好的方式提示用户重新登录,例如跳转到登录页面。

本示例代码展示了如何使用 Spring Boot 和 JavaScript 实现简单的用户登录功能。你可以根据实际需求进行修改和扩展。

获取用户信息并更新页面显示 - 用户信息获取接口 - Java Spring Boot

原文地址: https://www.cveoy.top/t/topic/plmv 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录