在普通的java类里面怎么获取到当前application的session

在普通的java类里面怎么获取到当前application的session,第1张

如果是和>

import javaxservlet>

import javaxservlet>

import comopensymphonyxwork2ActionSupport;

import orgapachestruts2ServletActionContext;

import javautilMap;

public class UserAction extends ActionSupport {

private >

private >

public String addUser() throws Exception {

/

采用ActionContext则为

<Map> request =(Map)ActionContext()getContext()get(“request”);

/

request = ServletActionContext()getRequest();

String name = requestgetParameter("name");

}

}

在webxml里面可以定义两种参数

一种是全局范围的参数,

一种是servlet内的参数。

webxml里定义参数的应用举例:在做分页功能时,可以在代码中直给定pageSize的值,这样,写死在代码中,灵活性差。改进方法:将pageSize配置在webxml中,然后再在代码中获取。

1 全局范围的参数,存放在ServletContext对象中,在webxml中的配置如下:

1 <context-param>2 <param-name>page-size</param-name>3 <param-value>2</param-value>4 </context-param>

在servlet中的获取:

1 ServletContext sc = thisgetServletContext();2 String strPageSize = scgetInitParameter("page-size");3 int pageSize=IntegerparseInt(strPageSize);

1 int pageSize=IntegerparseInt(thisgetServletContext()getInitParameter("page-size"));

2 Servlet范围内的参数,只能在servlet的inti()方法中取得,在webxml中的配置如下:

1 <servlet> 2 <servlet-name>SearchItemServlet</servlet-name> 3 <servlet-class> 4 combjpowernodedrpbasedatawebSearchItemServlet 5 </servlet-class> 6 <init-param> 7 <param-name>page-size</param-name> 8 <param-value>3</param-value> 9 </init-param>10 </servlet>

在servlet中的获取:

1 int pageSize=IntegerparseInt(thisgetServletConfig()getInitParameter("page-size"));

getServletContext()获得的是 <context-param> </context-param>配置的参数信息

getServletConfig()获得的是 <init-param> </init-param>配置的参数信息

不知道你说的“普通的java类”是什么。在spring里要注入的话,相应的类都要纳入spring的管理,对象由spring创建,对象从spring获取。就像你上面的BaseDaoImpl和BaseServiceImpl。

如果UserCarManager也是由spring管理的话,那同样适用@autowired就可以注入。

看你的提问,应该是指没有纳入spring管理的类如何注入spring管理的对象,这种情况可以用srping相关的静态方法达到目的。

比如:

WebApplicationContext webAppContext = WebApplicationContextUtilsgetWebApplicationContext(getServletContext());

BaseDaoImpl baseDao = (BaseDaoImpl) BeanFactoryUtilsbeanOfTypeIncludingAncestors(webAppContext, BaseDaoImplclass);

首先,向你确认你所谓的普通类就是POJO吗,如果是是无法获取Request对象的。

不过,可以使用参数传递的方式。

Request对象,即ServletRequest,隶属于javax包下的,需要实现其>

以上就是关于在普通的java类里面怎么获取到当前application的session全部的内容,包括:在普通的java类里面怎么获取到当前application的session、如何在一个类中获取HttpServletRequest 对象、servlet 从java中获取参数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/9792831.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-02
下一篇2023-05-02

发表评论

登录后才能评论

评论列表(0条)

    保存