美文网首页
无状态会话 Bean 与 Servlet

无状态会话 Bean 与 Servlet

作者: wang_yuw | 来源:发表于2017-07-07 04:52 被阅读0次

1. 所用环境:

- JDK 8

- EJB 3.x

- NetBeans IDE 8.2

- (GlassFish Server 4.1.1)

安装 JDK8.0 并配置环境变量,安装 NetBeans IDE

2. 项目描述:

我们要创建一个简单的 EJB3.0 无状态 Session Bean “ExempleStatelessBean”和一个 Servlet 客户端 “Exemple Servlet”,这个客户端用来调用创建的 Bean;

这个 “ExempleStatelessBean” 的例子将要解释如何在服务器上开发,部署和运行 EJB3 无状态 Session Bean;

我们将在 Servlet 中使用无状态会话 Bean 的依赖注入 (Dependency Injection);

这个会话 Bean 和这个 Servlet 被部署在同一个服务器上。

3. 创建一个新的EJB项目:

打开NetBeansIDE并创建一个项目:

File → New Project→ Java EE → Entreprise Application (Next)

→输入项目名称和路径 (Next)

→设置服务器和 JavaEE 版本并选择是否创建 EJB 模块和 WebApplication 模块

→Finish

File → New Project→ Java EE → Entreprise Application (Next)

这里我的项目名称叫 Ex1,路径为默认路径:

输入项目名称和路径 (Next)

服务器和 JavaEE 版本为默认,并把创建 EJB 模块和 WebApplication 模块勾上:

设置服务器和 JavaEE 版本并选择是否创建 EJB 模块和 WebApplication 模块

然后你就可以在 IDE 中看见一个 EJB 项目。Ex1-ejb 是 ejb 模块,我们在这里写 Bean;Ex1-war 是 WabApplication 模块,我们把 servlet 写在这里。

EJB 项目

3.1 创建Session Bean

在 ejb 模块即 Ex1-ejb 右击,New → Session Bean → 输入包名以及 EJB 名字,这里我叫他 ExempleBean → 选择 Stateless 表示无状态 → Finish

创建Session Bean

3.2 给Session Bean添加功能

打开 Bean,输入代码,这里我写了一个简单的问候函数 hello,注意此处无需构造函数,且尽量不要用全局变量 (这是个企业即“应用,若将来有很多人同时访问,全局变量会造成问题):

ExempleBean

4. 创建 Servlet Class

此时,我们转入 WabApplication 模块,也就是 Ex1-war。

在 WabApplication 模块即 Ex1-war 右击,New → Servlet → 输入包名以及 Servlet 名字,这里我叫他 ExempleServlet → 选择设置配置文件,Sevlet 的名称和URL → Finish

输入包名以及 Servlet 名字 自动配置文件

随后,写入 Servlet 代码:

首先,注意要导入刚才创建的 EJB,并且加上包名。还要导入包 javax.ejb.EJB (这样下面的注解才会生效)

import packages

通过 @EJB 注解来注入 EJB,这样就会自动创建出实例而不需要自己来 new 出实例。在 processRequest 方法中就可以直接调用 ExempleBean 实例 exemple 的方法,比如这里的 exemple.hello(username)。

ExempleServlet

这里是 Servlet 的HttpServlet 的方法,也就是当用 Get 和Post 时都调用 ProcessRequest 方法。

HttpServlet methods

5. 部署项目

先通过小锤子加小扫帚的那个图标来 build 项目,再在右侧项目名称上右击然后选择 Deploy 来部署上服务器,最后通过右三角的那个图标来运行。

工具栏

在浏览器地址栏里输入URL:localhost:8080/Ex1-war/ExempleServlet

然后就可以看到结果:

Result

恭喜你,完成啦!

下次预告:JDBC

相关文章

  • 无状态会话 Bean 与 Servlet

    1. 所用环境: - JDK 8 - EJB 3.x - NetBeans IDE 8.2 - (GlassFis...

  • 会话bean的分类

    会话bean共分为三类:无状态会话bean:有状态会话bean:单例会话bean:消息驱动bean:这是一个异步组...

  • Tutorial EJB - Stateless & State

    Stateless Bean 无状态的会话 Bean 是一种企业 Bean,他通常被用于执行独立操作。顾名思义,他...

  • Servlet 会话

    在网络的七层模型中,会话层位于传输层之上,它定义如何开始、控制和结束一个会话。七层模式目前仅仅处于理论阶段,但是W...

  • 会话与状态管理

    Web应用中的会话与会话状态 Web应用的会话状态是指Web服务器与浏览器在会话过程中产生的状态信息,借助会话状态...

  • 各种Bean

    EJB的bean,有: Stateless, Stateful的session bean, 也有MDB(消息会话B...

  • Servlet会话管理

    模拟会话 首先通过一个例子模拟一下会话,此时有一个问答网页,分为两页作答,然后提交给服务器。 在目前所学的知识中,...

  • 2021-09-26-Spring-xml

    servlet配置 bean 配置 aop config默认情况下当bean实现了接口时Spring AOP是基于...

  • session 持久化和Cookie创建 会话技术

    会话技术 存储客户端的状态 会话技术,记录会话客户端的状态与数据 Cookie:数据存储在客户端本地的。减少服务器...

  • 2019-06-20

    SpringMvc @Transactional 失效 项目中存在2个spring bean容器,Servlet ...

网友评论

      本文标题:无状态会话 Bean 与 Servlet

      本文链接:https://www.haomeiwen.com/subject/xutlhxtx.html