`
folie2006
  • 浏览: 34378 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

struts学习笔记二

阅读更多

首先做一个练习,步骤总结(实例以JBuilder 2006开发)

题目是[Struts用户注册]

1.      创建一个工程;之后在这个工程下建立一个WEB模型,在建立的过程时选择Struts为框架。

2.      建立一个新的JSP页面,选择该页面用Struts

表单中的

<html:form action="/regAction.do" method="post"> 

 

 

 

 

意思为提交给regAction.do,提交方式为post,注意的是此用的提交给谁要与struts-config.xml文件的

<action name="regActionForm" path="/regAction" >

 path

写的一致,后缀省略,也可以先建立ActionForm Action .此处按个人喜欢吧,但建议先建立视图层的再建立业务的,最后是数据库层。(以MVC

写的一致,后缀省略,也可以先建立ActionForm Action .此处按个人喜欢吧,但建议先建立视图层的再建立业务的,最后是数据库层。(以MVC

 

 

3.建立一个Action 这个是子控制器,根据业务所需要建立。(默认下Struts已经建立了一个主控制器也就是Servlet,所有请求都将通过它处理,默认在Web.xml中配置名为action,将处理所有带*.do的请求)

   在建立这个Action 时注意要配置的一些参数

<action

path="/regAction"       //请求来源

name="regForm"    //存储表单数据的actionform

validate="true"   //是否进行表单验证

input="/reg.jsp"  //表单验证失败的去向

scope="request"   //将通过验证的actionform存储在哪个范围

type="strutsprj_t2.RegAction"  //处理表单数据的业务类

4. 写一个实体Bean,针对某张表,以此例将有五个属性,新建中选择JavaBean 之后就配置好一些get/set方法

   先在plus库中建立users

-------------------------------------------------------------------------------------

   create table users

(

    uid int identity(1,1) not null,

    username varchar(20) not null,

    password varchar(20) not null,

    email varchar(50) null,

    nickname varchar(20) null

    constraint pk_uid primary key (uid)

) ------------------------------------------------------------------------------------

 -

 

 

 

5. 建立一个ActionForm ,这个建立的时候可以从上面的index.jsp页面中自动生成一个相应的ActionFormjava类,它有表单中的属性值的获取方法,相当于临时的一个Bean,它的一些方法一般无需改动。

6. Action建立的时候系统并创建了一具类 xxxAction.java 此类一般用于处理请求表单时所经过的类,其实它是由主控制器分配过来的。一般的业务逻辑都在这里完成。主要在execute方法里完善代码并返回一个ActionForward对象。转发至某某页面

  1)先从表单读取文本框中的数据并封装到实体Bean对象中

   

   

 

 

  2)再把user对象交给数据库方法去进行操作(DAO),再建立一个类,该类为底层数据库操作的类

该类有两个方法:

方法一为接收对象查询数据库是否已经存在相同的用户并返回真假。

方法二为接收对象直接往数据库添加该对象并写入数据库。

7. 根据逻辑进行配置好成功页面与失败页面。并配好struts-config.xml的转发页面,页面当然事先建立好

 

注意: 以上步骤完成之后还有一些细节问题没解决,那就是中文接收。

  首先思考一个问题,在二期时咱们都是通过请求到Servlt,在请求对象request 中设置接收的编码格式,而在Struts中这个Servlet已经自己生成,所以我们无法再去改写里面的代码。此时struts中提出了RequestProcessor概念,它意思是指每当用户请求.do的时候,struts主控制器都会把处理转交给RequestProcessor,所以我们只要重写RequestProcessor类里的processPreprocess()方法即可解决中文问题

1) 创建一个类继承与RequestProcessor类,并找到它的方法processPreprocess(HttpServletRequest request, HttpServletResponse response)重写它,在里面加入

request.setCharacterEncoding("gb2312");

   说明:processPreprocess()方法 告诉请求处理器调用此方法后,是否继续处理请求

         意思请求的时候都要先经过它才判断是否继续往后的请求处理,所以它是返回boolean值的

2) <controller processorClass="mystruts7.MyRequestProcessor"/>

   此步为告诉配置文件,我要做的请求都将通过以上指定的类处理。它一般配置在<action-mappings>之后

 

 

 

再改进一下上面的例子,我们使用[数据源],这个知识点只是要了解,不用深究,因为它应用不广。

它的创建步骤如下

 

1.    首先配置好struts-config.xml文件的DataSource,一般双击它会出现提示向导

配置之前要注意的是它需要两个JAR包,需要导入工程中去

commons-dbcp-1.2.1.jar

commons-pool-1.2.jar

 

 

 

2.    通过Action类中获得DataSource对象;因为上面的配置中它获得的对象是存在application范围中

Action类的execute方法中获得

ServletContext context = this.servlet.getServletConfig().getServletContext();

DataSource ds = (DataSource)context.getAttribute("dataSource");//为配置文件中的key

Javax.sql.DataSource  获得DataSource对象后通过它的一个方法返回联接对象        ds.getConnection();

 

 

 

 

分享到:
评论

相关推荐

    struts2 学习重点笔记

    ### Struts2 学习重点知识点总结 #### 一、Struts2 概念与架构 **1.1 Struts2 简介** - **定义**:Struts2 是 Apache 组织提供的一个基于 MVC 架构模式的开源 Web 应用框架。 - **核心**:Struts2 的核心其实是 ...

    struts2学习笔记(完美总结)——转自OPEN经验库

    Struts2是一个强大的Java web应用程序开发框架,它遵循Model-View-Controller (MVC)设计模式,用于构建可维护性和可扩展性高的企业级应用。本文将深入探讨Struts2的核心概念,包括Action、Result、配置文件、OGNL与...

    Struts2学习笔记

    根据给定的文件信息,以下是对Struts2学习笔记中涉及的关键知识点的详细解析: ### Struts2框架概览 #### MVC模式的理解与演进 Struts2是基于MVC(Model-View-Controller)模式设计的一种Java Web开发框架。在MVC...

    struts学习笔记

    Struts2 学习笔记-part2: 实现用户登录功能 在上一部分中,我们了解了构建一个基于Struts2的Java Web项目所需的基本库和配置文件。现在,我们将逐步实现一个简单的用户登录功能。 一、创建Action类 在Struts2框架...

    struts2学习笔记总结

    本笔记将全面总结Struts2的核心概念、主要功能以及实际开发中的应用。 一、Struts2概述 Struts2是Apache软件基金会下的一个开源项目,它继承了Struts1的优点并解决了其存在的问题,如性能和灵活性。Struts2的核心是...

    struts2学习笔记黑马程序员

    ### Struts2学习笔记之文件上传与Ajax开发 #### Struts2文件上传 **文件上传简介** 文件上传是Web应用中常见的功能之一,Struts2框架内置了对文件上传的支持,使得开发者能够轻松地实现这一功能。为了确保文件...

    struts2四天的学习笔记

    13. ** strut2四天笔记**:这份学习笔记可能涵盖了以上所有知识点,包括如何创建Action,配置struts.xml,使用OGNL表达式,处理异常,以及实践中的各种技巧和最佳实践。 在四天的学习过程中,你应该通过实践和理解...

    张龙圣思园struts2学习笔记word

    张龙圣思园的Struts2学习笔记,无疑为Java开发者提供了一份宝贵的参考资料,它可能涵盖了Struts2的基础概念、核心组件、配置方式以及实战技巧。 首先,让我们深入了解Struts2的核心特性。Struts2是MVC(Model-View-...

    struts2学习笔记

    struts2学习笔记struts2学习笔记struts2学习笔记

    struts2学习笔记.doc

    ### Struts2学习笔记知识点概览 #### 一、环境搭建 **1.1 Struts2简介** - **Struts2概述**:Struts2是一个开源的MVC框架,它结合了Struts 1.x、WebWork和其他一些框架的优点。Struts2的主要目标是简化Web应用程序...

    struts2学习笔记(1)

    ### Struts2学习笔记知识点详解 #### 一、Struts2框架的基本引入步骤 ##### 1. 导入Struts2相关Jar包 在引入Struts2框架时,首先需要将Struts2的相关Jar包导入到项目的类路径中。这些Jar包通常包括核心库以及其他...

    struts2学习笔记3数据类型转换

    struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换

    struts 学习笔记(全)

    入门级的struts,适合新手入门

    struts学习笔记(四)

    在本“Struts学习笔记(四)”中,我们将会深入探讨Struts框架的核心概念、工作原理以及如何实际运用到项目开发中。 首先,Struts框架的核心目标是提供一个结构化的开发环境,将业务逻辑、数据处理和用户界面有效地...

    struts2 学习笔记 实战

    Struts2是一个强大的MVC(Model-View-Controller)框架,它在Java Web开发中扮演着重要的角色。本文将深入探讨Struts2的核心概念,包括Namespace、标签、Action以及它们在实际开发中的应用。 一、Namespace ...

    黑马程序员Struts2笔记

    通过学习这些笔记,开发者将能够理解Struts2的工作原理,并具备使用Struts2开发Web应用的基础能力。同时,对于进一步学习Spring MVC或其他MVC框架也会有所帮助,因为很多设计思想和技术原理都是相通的。

    struts2学习笔记(详细文字)

    structs2很详细的学习笔记,structs2的建造,工作原理,例子,逐步讲解,纯文字的

Global site tag (gtag.js) - Google Analytics