学习struts的第二天
来源:互联网 发布:佳能相机软件下载 编辑:程序博客网 时间:2024/04/29 14:40
学习struts的第二天,现在做下总结。首先是:动态配置ActionForm
- <form-beans>
- <!-- 静态配置ActionForm
- <form-bean name="loginform" type="myclass.from.LoginActionForm"></form-bean>
- -->
- <!-- 动态配置ActionForm -->
- <form-bean name="loginform" type="org.apache.struts.action.DynaActionForm">
- <form-property name="username" type="java.lang.String"></form-property>
- <form-property name="userpassword" type="java.lang.String"></form-property>
- </form-bean>
动态配置以后就可以不用写FromBean了,把参数全都写在了Struts-config的配置文件了,如上代码。这样写在一定程度比较方便,本人建议采用这种方法。
其次是:同时处理从ActionServlet转发过来的多个请求
开始时我们先在JSP页面写二个超链接请求,如下:
- <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
- <html>
- <head></head>
- <body>
- <a href="news.do?option=globe">国际新闻</a><br>
- <a href="news.do?option=inner">国内新闻</a><br>
- </body>
- </html>
写完JSP页面,我们接着要写ACTION了,如下:
- package myclass.action;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import myclass.from.LoginActionForm;
- import org.apache.struts.action.ActionForm;
- import org.apache.struts.action.ActionForward;
- import org.apache.struts.action.ActionMapping;
- import org.apache.struts.actions.DispatchAction;
- /*
- * 用于接收 ActionServlet转发过来的请求
- */
- public class NewAction extends DispatchAction{
- public ActionForward globe(
- ActionMapping mapping,
- ActionForm form,
- HttpServletRequest request,
- HttpServletResponse response)
- throws Exception {
- System.out.println("国际新闻");
- return null;
- }
- public ActionForward inner(
- ActionMapping mapping,
- ActionForm form,
- HttpServletRequest request,
- HttpServletResponse response)
- throws Exception {
- System.out.println("国内新闻");
- return null;
- }
- }
写完了,ACTION后,最后就是配置文件了:
- <action-mappings>
- <action path="/news" type="myclass.action.NewAction" parameter="option">
- </action-mappings>
这样就可以在一个ACTION里面处理两个不同的请求了,值得注意的是,这里的ACTION方法继承的父类应要变为DISPATCHACTION。
最后是:Struts的国际标准化中资源文件的使用与<html><bean>标签的使用
在使用资源文件进行显示中文时,需要将中文转换成二进制码:
username=/u5f90/u674e/u576a/u4e8b/u8ff9
button1=/u63d0/u4ea4
button2=/u53d6/u6d88
然后通过下面的JSP来显示:
- <%@ page language="java" pageEncoding="UTF-8"%>
- <!--标签信息 一定要写-->
- <%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
- <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
- <%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
- <%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles" %>
- <html:html>
- <head>
- <title>bean.jsp</title>
- </head>
- <body>
- <bean:message key="username"/>
- <bean:message key="introduce"/><br>
- <input type="button" value="<bean:message key="button1"/>">
- <input type="button" value="<bean:message key="button2"/>">
- </body>
- </html:html>
通过读取资源文件的方法,我们可以实现网页的国际化,就是网页可以显示不同的文字,可以有中文,英文等。
最后是<html><bean><login>标签的使用,先声明这里的标记是struts里面带的,它的写法将会变成<html:html>等
先来使用<html>来写一个简单的登录页面;
- <%@ page language="java" pageEncoding="UTF-8"%>
- <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
- <html:html>
- <head>
- <tilte>登录页面<tilte>
- <head>
- <div>
- <html:form action="login">
- <table>
- <tr>用户名:<html:text property="username"></html:text></tr>
- <tr>密码:<html:password property="userpassword"></html:password></tr>
- <tr><html:submit>登录</html:submit><html:reset>重置</html:reset></tr>
- <table>
- </html:form>
- <div>
- </html:html>
再来使用<bean>来写一个简单的测试页面;
- <%@ page language="java" pageEncoding="UTF-8"%>
- <%@ page import="myclass.from.LoginActionForm,java.util.*"%>
- <%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
- <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
- <%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
- <%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles" %>
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <html:html>
- <head>
- <title>bean.jsp</title>
- </head>
- <body>
- <bean:message key="username"/>
- <bean:message key="introduce"/><br>
- <input type="button" value="<bean:message key="button1"/>">
- <input type="button" value="<bean:message key="button2"/>">
- <bean:define id="loginname" value="liping" ></bean:define><br>
- el:${loginname}<br>
- <bean:write name="loginname" /><br>
- <%
- LoginActionForm laf=new LoginActionForm();
- laf.setUsername("dsfjdls");
- laf.setUserpassword("fdsfds");
- session.setAttribute("laf",laf);
- List list=new ArrayList();
- list.add("fdsfdjs");
- list.add("fdsfdjs");
- list.add("fdsfdjs");
- list.add("fdsfdjs");
- list.add("fdsfdjs");
- list.add("fdsfdjs");
- list.add("fdsfdjs");
- session.setAttribute("list",list);
- %>
- el:${laf.username}---${laf.userpassword}<br>
- bean:<bean:write name="laf" property="username"/><bean:write name="laf" property="userpassword"/><br>
- <bean:size id="length" name="list" scope="session"/>
- el:${length }<br>
- bean:<bean:write name="length"/>
- </body>
- </html:html>
最后使用<logic>来写几个简单的测试页面;
- <%@ page language="java" pageEncoding="UTF-8"%>
- <%@ page import="myclass.from.LoginActionForm,java.util.*"%>
- <%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
- <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
- <%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
- <%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles" %>
- <html:html>
- <head>
- <title>bean.jsp</title>
- </head>
- <body>
- <%
- LoginActionForm laf=new LoginActionForm();
- laf.setUsername("我是一粒小黄豆");
- laf.setUserpassword("fdsfds");
- LoginActionForm laf1=new LoginActionForm();
- laf1.setUsername("我是一棵小草");
- laf1.setUserpassword("fdsfds");
- LoginActionForm laf2=new LoginActionForm();
- laf2.setUsername("我是一只小小鸟");
- laf2.setUserpassword("fdsfds");
- List list=new ArrayList();
- list.add(laf);
- list.add(laf1);
- list.add(laf2);
- session.setAttribute("list",list);
- %>
- <logic:iterate id="form" name="list" scope="session">
- <font size="10" color="green">${form.username }--${form.userpassword }</font><br>
- </logic:iterate>
- </body>
- </html:html>
- <%@ page language="java" pageEncoding="UTF-8"%>
- <%@ page import="myclass.from.LoginActionForm,java.util.*"%>
- <%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
- <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
- <%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
- <%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles" %>
- <html:html>
- <head>
- <title>bean.jsp</title>
- </head>
- <body>
- <%
- List list=new ArrayList();
- list.add("我是一粒小黄豆!");
- list.add("fdsfdjs");
- list.add("fdsfdjs");
- list.add("fdsfdjs");
- list.add("fdsfdjs");
- list.add("fdsfdjs");
- list.add("fdsfdjs");
- session.setAttribute("list",list);
- %>
- <logic:present name="list" scope="session">
- <logic:iterate id="str" name="list" scope="session">
- <font size="10" color="green">${str}</font><br>
- </logic:iterate>
- </logic:present>
- <logic:notPresent name="list1" scope="session">
- list1作用域不存在。
- </logic:notPresent>
- </body>
- </html:html>
今天的学习就到此结束了,晚上准备把struts的标签熟悉一下,明天继续学习该框架的其他内容。
- 学习struts的第二天
- Struts学习笔记第二天
- Struts第二天
- 第二天的学习
- 学习的第二天
- 学习的第二天
- 第二天的学习
- 第二天的学习
- 第二天的学习
- Struts第二天总结案例
- 第二天SL275的学习
- 学习Android的第二天
- 学习Linux的第二天
- 学习mysql的第二天
- 学习JAVA的第二天
- 学习javaee的第二天
- 学习python的第二天
- UGUI学习的第二天
- 解决应用程序池总是死的问题
- 有没有免费的DNF解封器啊
- 有没有免费的DNF解封器啊
- 第一次来
- 十个免费的Web压力测试工具
- 学习struts的第二天
- 马上要毕业了
- 推荐:.NET开发不可错过的25款必备工具
- faremeset,frame,iframe属性大全
- 书
- 终于有自己的队伍了
- 开发人员一定要加入收藏夹的网站
- 大数的阶乘
- 超方便的linux命令手册