精华内容
下载资源
问答
  • 主要介绍了Java简单实现session保存到redis的方法,结合实例形式分析了Javasession存入redis缓存服务器的相关设置、实现技巧与操作注意事项,需要的朋友可以参考下
  • java中使用session模拟用户登陆
  • java使用session登录的用户信息

    万次阅读 2019-05-22 17:40:27
    代表我们没有登录过,或是session已过期。   然后我们先调用登录接口 http://localhost:8080/login?userName=admin&password=123456 然后再调用 http://localhost:8080/getUser  结果如下: ...

    创建账户model:

    public class Account {
    
        private Integer id;
        /**
         * 联系人名称
         */
        private String userName;
        /**
         * 手机
         */
        private String phone;
        /**
         * 公司名称
         */
        private String company;
    
        public Account() {
        }
    
        public Account(Integer id, String userName, String phone, String company) {
            this.id = id;
            this.userName = userName;
            this.phone = phone;
            this.company = company;
        }
    
        public Integer getId() {
            return id;
        }
    
        public void setId(Integer id) {
            this.id = id;
        }
    
        public String getUserName() {
            return userName;
        }
    
        public void setUserName(String userName) {
            this.userName = userName;
        }
    
        public String getPhone() {
            return phone;
        }
    
        public void setPhone(String phone) {
            this.phone = phone;
        }
    
        public String getCompany() {
            return company;
        }
    
        public void setCompany(String company) {
            this.company = company;
        }
    }
    

    创建基础控制器,里面实现session存和取的方法:

    
    /**
     * 基础控制器
     *
     * @author tuc
     */
    public abstract class BaseController {
    
        /**
         * 当前账号常量
         */
        private static final String ACCOUNT = "account";
    
    
        private HttpServletRequest getRequest() {
            return ((ServletRequestAttributes) Objects.requireNonNull(RequestContextHolder.getRequestAttributes())).getRequest();
        }
    
        public Account getAccount() {
            HttpSession session = getRequest().getSession();
            return (Account) session.getAttribute(ACCOUNT);
        }
    
        public void setAccount(Account account) {
            HttpSession session = getRequest().getSession();
            if (account != null) {
                session.setAttribute(ACCOUNT, account);
                //session过期时间设置,以秒为单位,即在没有活动30分钟后,session将失效
                session.setMaxInactiveInterval(30 * 60);
            }
        }
    
    }
    

    创建测试控制器继承基础控制器来进行测试:

    /**
     * 测试Controller
     *
     * @author tuc
     */
    @RestController
    public class TestController extends BaseController {
    
        /***
         * 测试登录
         * 这里假设用户(userName=admin,password=123456)
         */
        @PostMapping("/login")
        public ResultModel login(String userName, String password) {
            try {
                Map<String, Object> map = new HashMap<>(1);
                if ("admin".equals(userName) && "123456".equals(password)) {
                    //登录成功,开始缓用户信息(当前我使用假数据,真实情况是查询数据库获取)
                    Account account = new Account();
                    account.setId(1);
                    account.setUserName("张三");
                    account.setPhone("15388888888");
                    account.setCompany("xx投资公司");
                    setAccount(account);
                } else {
                    return ResultTools.result(1003, "", map);
                }
                return ResultTools.result(0, "", map);
            } catch (Exception e) {
                return ResultTools.result(404, e.getMessage(), null);
            }
        }
    
    
        /***
         * 获取用户
         */
        @GetMapping("/getUser")
        public ResultModel getUser() {
            try {
                Map<String, Object> map = new HashMap<>(1);
                Account account = getAccount();
                if (account == null) {
                    return ResultTools.result(1002, "", map);
                }
                map.put("account", account);
                return ResultTools.result(0, "", map);
            } catch (Exception e) {
                return ResultTools.result(404, e.getMessage(), null);
            }
        }
    
    }
    

    直接调用http://localhost:8080/getUser 结果如下:

    代表我们没有登录过,或是session已过期。

     

    然后我们先调用登录接口http://localhost:8080/login?userName=admin&password=123456

    然后再调用http://localhost:8080/getUser 结果如下:

    使用测试完成,谢谢阅读。

    最后附上源码下载地址:https://download.csdn.net/download/qq_29370483/11193834

     

     

    展开全文
  • session做登录存储认证,电脑连接了手机wifi,PC端登录系统,localhost访问项目地址,登录成功,登录信息成功存入session里,可是在登录后页面跳转,做登录验证的时候获取session的时候就为空了。 进过调试,最后...

    今日份踩坑

    session做登录存储认证,电脑连接了手机wifi,PC端登录系统,localhost访问项目地址,登录成功,登录信息成功存入session里,可是在登录后页面跳转,做登录验证的时候获取session的时候就为空了。
    

      进过调试,最后解决,换成127.0.0.1即可

    展开全文
  • Java session储存

    千次阅读 2019-06-27 17:42:02
    Java session储存 开发工具与关键技术:java 作者:彭浩达 撰写时间:2019年 6月 14日 public void Selectzbruku(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOE...
                                      Java session储存
    
    开发工具与关键技术:java
    作者:彭浩达
    撰写时间:2019年 6月 14日
    

    public void Selectzbruku(HttpServletRequest request,HttpServletResponse response)
    throws ServletException,IOException{
    response.setCharacterEncoding(“utf-8”);
    HttpSession session = request.getSession();
    int totalRows = 0;
    //读取zbruku 存进session的数据
    List list = (List) session.getAttribute(“zbruku”);
    if(list != null){
    totalRows = list.size();
    }
    LayuiTableData layuiTableData=new LayuiTableData();
    layuiTableData.setCount(totalRows);
    layuiTableData.setData(list);

    JSONObject jsonObject = JSONObject.fromObject(layuiTableData);
    PrintWriter out=response.getWriter();
    out.write(jsonObject.toString());
    System.out.println(jsonObject.toString());
    out.flush();
    out.close();
    }
    //把数据存进 zbruku
    public void Chasession(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException, ParseException{
    int purchaseid = Integer.parseInt(request.getParameter(“purchaseid”));
    BigDecimal quantity = new BigDecimal(request.getParameter(“quantity”));
    String invoice = request.getParameter(“invoice”);
    String dealsite = request.getParameter(“dealsite”);
    String drugname = request.getParameter(“drugname”);
    String unit = request.getParameter(“unit”);
    BigDecimal costprice = new BigDecimal(request.getParameter(“costprice”));
    BigDecimal retailprice = new BigDecimal(request.getParameter(“retailprice”));
    String countryzi = request.getParameter(“countryzi”);
    String batchnumber = request.getParameter(“batchnumber”);
    String number = request.getParameter(“number”);
    BigDecimal lingshou = quantity.multiply(retailprice);
    BigDecimal chengbei = quantity.multiply(costprice);

    PurDrugMed drugMed = new PurDrugMed();
    drugMed.setLingshouz(lingshou);
    drugMed.setChengbeiz(chengbei);
    drugMed.setNumber(number);
    drugMed.setDealsite(dealsite);
    drugMed.setCountryzi(countryzi);
    drugMed.setDrugname(drugname);
    drugMed.setUnit(unit);
    drugMed.setCostprice(costprice);
    drugMed.setRetailprice(retailprice);
    drugMed.setPurchaseid(Integer.valueOf(purchaseid));
    drugMed.setQuantity(quantity);
    drugMed.setBatchnumber(batchnumber);
    drugMed.setInvoice(invoice);
    List drugMeds= null;
    drugMeds = new ArrayList();
    drugMed.setJiaShijan(effectivedate);
    drugMeds.add(drugMed);

    HttpSession session = request.getSession();
    session.setAttribute(“zbruku”, drugMeds); //要返回List表数据显示记得先把数据转成List,再进行储存,否则用List list = (List) session.getAttribute(“zbruku”);读取不了的
    }

    在这里插入图片描述

    展开全文
  • 将token存入session

    2019-09-25 08:51:09
    在项目实践中遇到这种情况: 一个原本在公司内网中的项目,现独立出一个单独的模块做成单独的项目部署到客户端, 帮助客户实现数据对接,这...这时需要将token存放于session中: HttpServletRequest request; H...

    在项目实践中遇到这种情况:

    一个原本在公司内网中的项目,现独立出一个单独的模块做成单独的项目部署到客户端,

    帮助客户实现数据对接,这就要求在项目中不涉及到持久化及redis的使用,

    在使用redis存放token时,由于客户端环境无法访问公司内部的redis集群发生错误。

    这时需要将token存放于session中:

    HttpServletRequest request;
    HttpSession session = request.getSession();

    session.setAttribute("token",token);//设置token,参数token是要设置的具体值
    session.getAttribute("token");//在需要使获取token

    转载于:https://www.cnblogs.com/Steward-Sun/p/9588154.html

    展开全文
  • String imgsrc2= (String)cuthcode.getAttribute("checkcode_session"); System.out.println(imgsrc2); //比较两个验证码 if(imgsrc.equals(imgsrc2)) resp.sendRedirect("/demo/welcome.jsp"); else User....
  • 将ajax返回值存入session的方法

    千次阅读 2019-05-10 23:52:27
    在我们使用 sessionStorage.setItem('user',user); ...bbb = JSON.parse(sessionStorage.getItem('user...最后如果想移除此session可以使用 sessionStorage.removeItem("user");  Good Luck!!   
  • Java 后台设置session成功,获取为空 cookie secure 当服务器使用https时,容易出现漏洞SSL cookie without secure flag set,敏感cookie这时就需要打开cookie secure,服务器端设置cookie的时候,可以指定 secure ...
  • java后台用session存储对象jsp页面取值 如(session.setAttribute("user", user)) 如: 取 User 对象中的UserName jsp引入c标签<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 用el表达式...
  • java 将某一变量存到session并取出

    千次阅读 2018-11-08 11:16:53
    session HttpSession session = request.getSession(); session.setAttribute("phone", phone); 从session取值 HttpSession session = request.getSession(); String phone = session.getAttribute(&...
  • java中cookie,session,验证码的应用实例
  • java 多线程 session共享

    2015-09-22 09:00:35
    在struts2中,启动新的线程 调用ServletActionContext.getRequest() 报空指针错误
  • Session

    千次阅读 多人点赞 2019-08-20 21:04:49
    Session 的概念2. Session 的快速入门3. Session 的原理4. Session 的细节4.1 浏览器关闭后,服务器不关闭,两次获取的 Session 对象是同一个吗?4.2 浏览器不关闭,服务器关闭后,两次获取的 Session 对象是同一个...
  • session 存入数据库

    2010-06-13 12:28:29
    session 存入数据库session 存入数据库session 存入数据库session 存入数据库
  • 1、首先要在web.xml增加如下代码: <listener> <listener-class>...2、在需要存的类中获取request以及session对象,并存入值或者对象(DataTransit为我自己创建的类,用来存数据) DataTransi
  • <p style="text-align:center"><img alt="" height="526" src="https://img-ask.csdnimg.cn/upload/1605345534022.png" width="746" /></p> <p>  <p style="text-align:center"><img alt="" ... <p>  ...</p>
  • 一、写入 sessionStorage.setItem(‘user’,user); 二、移除 sessionStorage.removeItem(“user”);
  • // 设置session的有效时长,以s为单位,30*60即在没有活动的30分钟后就销毁 session.setMaxInactiveInterval(30 * 60); spring.resources.chain.strategy.content.enabled: true #\u5E94\u7528\u4E8E\u7248\u672C\u7...
  • Java后端获取sessionId不一致的问题

    千次阅读 2020-03-26 20:58:36
    存在的问题 但是这样还是有个小的问题,那就是登录时用的post方式,然后前端其他地方用post方式获取地方就不行,必须前端和后端一起改为get方式才可以获取数据,我还没有找到问题所在,如果找到了会更新文章。...
  • //这个是Spring Mvc的方法类写法 @RequestMapping("/... public ModelAndView siteinformation(HttpSession session,String username,String pwd,MyNews mynews){//传入几个参数 ModelAndView mv=new Mode...
  • java写的一个模拟登录程序,转到userInfo 页面时却得不到用户信息,怀疑是得不到session。 贴上代码,像这样先取得cookie 再发回去的方法好像不可行? public static void login() throws HttpException, ...
  • 描述:当用户关闭页面之后 达到指定得秒数,移除用户Session 思路:用户进入页面后一个ajax每间隔多少秒请求服务端发送心跳包,保存当前得时间戳,一旦用户关闭了页面,...charset=UTF-8" language="java" %> <h
  • javasession的用法

    万次阅读 2014-11-27 11:26:17
    //把值存入session ServletActionContext.getRequest().getSession().setAttribute("userId", users.get(0).getId());//把值存入session 前台jsp页面获取的方法如下: String path = request....
  • 怎么把ServletActionContext.getRequest().getSession().setAttribute("loginName", loginUser);这个session存入session 10秒,
  • javasession能存什么不能存什么

    千次阅读 2019-06-10 09:37:24
    项目中在做一个表单文件上传时 ,为了方便 ,将文件上传 做成 单独上传 ,将文件存在session 中 ,表单提交的时候再去session 中取到刚刚上传的文件 , 将file 存在session 中再去取文件的时候 , 出现了一个 file ...
  • 访问带有验证码的登录页面login.jsp 2. 用户输入用户名,密码以及验证码。 * 如果用户名和密码输入有误,跳转登录页面,提示:用户名或密码错误 * 如果验证码输入有误,跳转登录页面,提示:验证码错误 * ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 35,563
精华内容 14,225
关键字:

java登录存入session

java 订阅