IntelliJ IDEA 搭建一个比较完整的网站实例 13

登录成功之后,前台页面需要获取到用户的账户信息,这里设置的数据库中的用户账户过于简单,因此只将用户名作为参数传递到前台。

1.修改action层的代码,在返回SUCCESS前,将用户名放进session中。LoginAction的代码:

package com.kay.struts2.Action;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
import com.yiibai.output.OutputHelper;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import java.util.Map;

public class LoginAction extends ActionSupport {
    private String uname;
    private String username;
    private String password;
    public String getUsername() {
        return username;
    }
    public void setUsername(String username) {
        this.username = username;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
    public String getUname() {
        return uname;
    }

    public void setUname(String uname) {
        this.uname = uname;
    }

    @Override
    public String execute() throws Exception{
        ApplicationContext context = new ClassPathXmlApplicationContext(new String[]{"spring-config.xml"});
        OutputHelper output = (OutputHelper)context.getBean("OutputHelper");
        String str = output.generateOutput(this.getUname());
        if(str=="SUCCESS")
            return SUCCESS;
        else
            return LOGIN;
    }
    public String login(){
        String username = this.getUsername();
        String password = this.getPassword();
        System.out.println(username);
        ApplicationContext context = new ClassPathXmlApplicationContext(new String[]{"spring-config.xml"});
        OutputHelper output = (OutputHelper)context.getBean("OutputHelper");
        if(output.login(username,password)){
            ActionContext actionContext = ActionContext.getContext();
            Map session = actionContext.getSession();
            session.put("userName",username);
            return SUCCESS;
        }else {
            return ERROR;
        }
    }
}

接下来,在loginSuccess.jsp页面中获取到session中的用户名,并添加主页的超链接:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title


hello <%=request.getSession().getAttribute("userName")%> !

主页

主页也同样获取session:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>

  
    $Title$
  
  
  <% if(request.getSession().getAttribute("userName")==(null)){%>
  <%
  }else {%>
  <%=request.getSession().getAttribute("userName")%>
  <%}%>
  


注册 登录

运行tomcat:

IntelliJ IDEA 搭建一个比较完整的网站实例 13_第1张图片

登录后:

IntelliJ IDEA 搭建一个比较完整的网站实例 13_第2张图片

主页:

IntelliJ IDEA 搭建一个比较完整的网站实例 13_第3张图片

你可能感兴趣的:(java)