gpt4 book ai didi

java - 我可以在 spring mvc 的模型类中获取 session 对象吗

转载 作者:行者123 更新时间:2023-12-01 09:21:45 26 4
gpt4 key购买 nike

我的要求之一是在我的 setter 方法之一中获取 session 属性,以便在设置数据时我可以按照我的要求播放数据并按预期返回新数据。

是否可以在我的模型类中获取 HTTP session 对象,如果没有,是否有任何其他方法可以通过任何其他替代方案来实现此目的。

这是我的模型类。

发现产品

package com.hcl.ne.model;

import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpSession;

public class DiscoveredProduct {

private String _id;
private String _rev;
private String name;
private String productCatalogName;
private String normalizedProductName;
private String domain;
private String desc;
private String product;
private String company;
private String dataset;
private String classType;
private Map<String,Object> attributes[];
private List<Map<String,Object>> attributes2;
private String hostName;
private String serialNumber;
private String createdOn;
private String qulRuleId;
private String classId;
private String companyId;
private String selectedDiscoveredPdt;
private int pageSize;
private String isNormalized;
private String ne_status;
private Map<String,Object> normalizedAttributes[];
private String normalizedOn;



public String getNe_status() {
return ne_status;
}
public void setNe_status(String ne_status) {
this.ne_status = ne_status;
}


public String get_id() {
return _id;
}
public void set_id(String _id) {
this._id = _id;
}
public String get_rev() {
return _rev;
}
public void set_rev(String _rev) {
this._rev = _rev;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getDomain() {
return domain;
}
public void setDomain(String domain) {
this.domain = domain;
}
public String getDesc() {
return desc;
}
public void setDesc(String desc) {
this.desc = desc;
}
public String getProduct() {
return product;
}
public void setProduct(String product) {
this.product = product;
}
public String getCompany() {
return company;
}
public void setCompany(String company) {
this.company = company;
}
public String getDataset() {
return dataset;
}
public void setDataset(String dataset) {
this.dataset = dataset;
}
public String getClassType() {
return classType;
}
public void setClassType(String classType) {
this.classType = classType;
}
public String getProductCatalogName() {
return productCatalogName;
}
public void setProductCatalogName(String productCatalogName) {
this.productCatalogName = productCatalogName;
}
public Map<String, Object>[] getAttributes() {
return attributes;
}
public void setAttributes(Map<String, Object>[] attributes) {
this.attributes = attributes;
}
public String getHostName() {
return hostName;
}
public void setHostName(String hostName) {
this.hostName = hostName;
}
public String getSerialNumber() {
return serialNumber;
}
public void setSerialNumber(String serialNumber) {
this.serialNumber = serialNumber;
}
public String getCreatedOn() {
return createdOn;
}
public void setCreatedOn(String createdOn) {
HttpSession session = new
this.createdOn = createdOn;
}
public List<Map<String, Object>> getAttributes2() {
return attributes2;
}
public void setAttributes2(List<Map<String, Object>> attributes2) {
this.attributes2 = attributes2;
}

public String getClassId() {
return classId;
}
public void setClassId(String classId) {
this.classId = classId;
}
public String getCompanyId() {
return companyId;
}
public void setCompanyId(String companyId) {
this.companyId = companyId;
}
public String getSelectedDiscoveredPdt() {
return selectedDiscoveredPdt;
}
public void setSelectedDiscoveredPdt(String selectedDiscoveredPdt) {
this.selectedDiscoveredPdt = selectedDiscoveredPdt;
}
public String getQulRuleId() {
return qulRuleId;
}
public void setQulRuleId(String qulRuleId) {
this.qulRuleId = qulRuleId;
}
public int getPageSize() {
return pageSize;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public String getIsNormalized() {
return isNormalized;
}
public void setIsNormalized(String isNormalized) {
this.isNormalized = isNormalized;

}
public String getNormalizedProductName() {
return normalizedProductName;
}
public void setNormalizedProductName(String normalizedProductName) {
this.normalizedProductName = normalizedProductName;
}
public Map<String, Object>[] getNormalizedAttributes() {
return normalizedAttributes;
}
public void setNormalizedAttributes(Map<String, Object>[] normalizedAttributes) {
this.normalizedAttributes = normalizedAttributes;
}
public String getNormalizedOn() {
return normalizedOn;
}
public void setNormalizedOn(String normalizedOn) {
this.normalizedOn = normalizedOn;
}


}

编辑后的代码

package com.hcl.ne.model;

import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpSession;

import org.springframework.beans.factory.annotation.Autowired;

import com.hcl.ne.service.util.CommonUtility;

public class DiscoveredProduct {

private String _id;
private String _rev;
private String name;
private String productCatalogName;
private String normalizedProductName;
private String domain;
private String desc;
private String product;
private String company;
private String dataset;
private String classType;
private Map<String,Object> attributes[];
private List<Map<String,Object>> attributes2;
private String hostName;
private String serialNumber;
private String createdOn;
private String qulRuleId;
private String classId;
private String companyId;
private String selectedDiscoveredPdt;
private int pageSize;
private String isNormalized;
private String ne_status;
private Map<String,Object> normalizedAttributes[];
private String normalizedOn;

@Autowired
private HttpSession httpSession;



public String getNe_status() {
return ne_status;
}
public void setNe_status(String ne_status) {
this.ne_status = ne_status;
}


public String get_id() {
return _id;
}
public void set_id(String _id) {
this._id = _id;
}
public String get_rev() {
return _rev;
}
public void set_rev(String _rev) {
this._rev = _rev;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getDomain() {
return domain;
}
public void setDomain(String domain) {
this.domain = domain;
}
public String getDesc() {
return desc;
}
public void setDesc(String desc) {
this.desc = desc;
}
public String getProduct() {
return product;
}
public void setProduct(String product) {
this.product = product;
}
public String getCompany() {
return company;
}
public void setCompany(String company) {
this.company = company;
}
public String getDataset() {
return dataset;
}
public void setDataset(String dataset) {
this.dataset = dataset;
}
public String getClassType() {
return classType;
}
public void setClassType(String classType) {
this.classType = classType;
}
public String getProductCatalogName() {
return productCatalogName;
}
public void setProductCatalogName(String productCatalogName) {
this.productCatalogName = productCatalogName;
}
public Map<String, Object>[] getAttributes() {
return attributes;
}
public void setAttributes(Map<String, Object>[] attributes) {
this.attributes = attributes;
}
public String getHostName() {
return hostName;
}
public void setHostName(String hostName) {
this.hostName = hostName;
}
public String getSerialNumber() {
return serialNumber;
}
public void setSerialNumber(String serialNumber) {
this.serialNumber = serialNumber;
}
public String getCreatedOn() {

long epochDate = Long.parseLong(createdOn);
System.out.println(epochDate);
HttpSession session = getHttpSession();
String timeZone = (String) session.getAttribute("timeZone");
String dateFormat = (String) session.getAttribute("dateFormat");
String offSet = (String) session.getAttribute("offSetValue");
String resultDate = CommonUtility.getDateInGMT(epochDate, timeZone, dateFormat, offSet);
return resultDate;


}
public void setCreatedOn(String createdOn) {
this.createdOn = createdOn;
}
public List<Map<String, Object>> getAttributes2() {
return attributes2;
}
public void setAttributes2(List<Map<String, Object>> attributes2) {
this.attributes2 = attributes2;
}

public String getClassId() {
return classId;
}
public void setClassId(String classId) {
this.classId = classId;
}
public String getCompanyId() {
return companyId;
}
public void setCompanyId(String companyId) {
this.companyId = companyId;
}
public String getSelectedDiscoveredPdt() {
return selectedDiscoveredPdt;
}
public void setSelectedDiscoveredPdt(String selectedDiscoveredPdt) {
this.selectedDiscoveredPdt = selectedDiscoveredPdt;
}
public String getQulRuleId() {
return qulRuleId;
}
public void setQulRuleId(String qulRuleId) {
this.qulRuleId = qulRuleId;
}
public int getPageSize() {
return pageSize;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public String getIsNormalized() {
return isNormalized;
}
public void setIsNormalized(String isNormalized) {
this.isNormalized = isNormalized;

}
public String getNormalizedProductName() {
return normalizedProductName;
}
public void setNormalizedProductName(String normalizedProductName) {
this.normalizedProductName = normalizedProductName;
}
public Map<String, Object>[] getNormalizedAttributes() {
return normalizedAttributes;
}
public void setNormalizedAttributes(Map<String, Object>[] normalizedAttributes) {
this.normalizedAttributes = normalizedAttributes;
}
public String getNormalizedOn() {
return normalizedOn;
}
public void setNormalizedOn(String normalizedOn) {
this.normalizedOn = normalizedOn;
}
public HttpSession getHttpSession() {
return httpSession;
}
public void setHttpSession(HttpSession httpSession) {
this.httpSession = httpSession;
}




}

最佳答案

Yes it is possible.

  1. Using RequestContextHolder
  2. By Autowiring session.

1.RequestContextHolder

ServletRequestAttributes attr = (ServletRequestAttributes) RequestContextHolder.currentRequestAttributes();
HttpSession session = attr.getRequest().getSession();

2.自动连线

@Autowired
私有(private) HttpSession httpSession;

更新:不需要 getter 和 setter, Autowiring 并用作 httpSession.getAttribute()

关于java - 我可以在 spring mvc 的模型类中获取 session 对象吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40129082/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com