import org.apache.struts.action.actionmapping;import org.apache.struts.action.actionform;import javax.servlet.http.httpservletrequest;import javax.servlet.http.httpservletresponse;import org.apache.struts.action.actionforward;import com.bookshop.form.findrecordform;import org.apache.struts.action.action;import java.util.list;import java.util.arraylist;import com.bookshop.model.operator;import com.bookshop.util.pageinfo;import org.apache.struts.action.actionerrors;import org.apache.struts.action.actionerror; 【推荐阅读:java.net.DatagramSoc】
这个demo供大家一起探讨学习struts,因为工作太累,没精力给大家解释实现原理.如果看不懂,没关系.只是说明java/jsp/base/ target=_blank>jsp基础还没有到火候,不要心急,回去强化下jsp+servlet,基础扎实了,自然能够看懂我写的代码.这个demo借鉴了网上很多前人的经验,在此一并谢谢.web.xml文件:<?xml version="1.0" encoding="utf-8"?><!doctype web-app public "-//sun microsystems, inc.//dtd web application 2.3//en" "java.sun.com/dtd/web-app_2_3.dtd">http://java.sun.com/dtd/web-app_2_3.dtd"><web-app> <display-name>bookshopmod</display-name> <servlet> <servlet-name>action</servlet-name> <servlet-class>org.apache.struts.action.actionservlet</servlet-class> <init-param> <param-name>config</param-name> <param-value>/web-inf/struts-config.xml</param-value> </init-param> <init-param> <param-name>debug</param-name> <param-value>2</param-value> </init-param> <init-param> <param-name>application</param-name> <param-value>applicationresources</param-value> </init-param> <load-on-startup>2</load-on-startup> </servlet> <servlet-mapping> <servlet-name>action</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.jsp</welcome-file> <welcome-file>index.htm</welcome-file> </welcome-file-list> <taglib> <taglib-uri>/web-inf/struts-bean.tld</taglib-uri> <taglib-location>/web-inf/struts-bean.tld</taglib-location> </taglib> <taglib> <taglib-uri>/web-inf/struts-html.tld</taglib-uri> <taglib-location>/web-inf/struts-html.tld</taglib-location> </taglib> <taglib> <taglib-uri>/web-inf/struts-logic.tld</taglib-uri> <taglib-location>/web-inf/struts-logic.tld</taglib-location> </taglib> <taglib> <taglib-uri>/web-inf/struts-template.tld</taglib-uri> <taglib-location>/web-inf/struts-template.tld</taglib-location> </taglib> <taglib> <taglib-uri>/web-inf/struts-tiles.tld</taglib-uri> <taglib-location>/web-inf/struts-tiles.tld</taglib-location> </taglib> <taglib> <taglib-uri>/web-inf/struts-nested.tld</taglib-uri> <taglib-location>/web-inf/struts-nested.tld</taglib-location> </taglib> <taglib> <taglib-uri>/web-inf/camel-define.tld</taglib-uri> <taglib-location>/web-inf/camel-define.tld</taglib-location> </taglib></web-app>struts-config.xml文件:<?xml version="1.0" encoding="utf-8"?><!doctype struts-config public "-//apache software foundation//dtd struts configuration 1.1//en" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd"><struts-config> <form-beans> <form-bean name="bookform" type="com.bookshop.form.bookform"/> <form-bean name="operatorform" type="com.bookshop.form.operatorform"/> <form-bean name="findrecordform" type="com.bookshop.form.findrecordform"/> </form-beans> <global-forwards> <forward name="index" path="/index.jsp"/> <forward name="browser" path="/show.jsp"/> <forward name="global_error" path="/error.jsp"/> </global-forwards> <action-mappings> <action input="/show.jsp" name="bookform" parameter="operator" path="/operatoraction" scope="session" type="com.bookshop.action.operatoraction" validate="false"> <forward name="operatorok" path="/success.jsp" redirect="true"/> <forward name="showfirstpage" path="/operatoraction.do?operator=showfirstpage"/> <forward name="showpreviouspage" path="/operatoraction.do?operator=showpreviouspage"/> <forward name="shownextpage" path="/operatoraction.do?operator=shownextpage"/> <forward name="showlastpage" path="/operatoraction.do?operator=showlastpage"/> <forward name="showaddrecord" path="/editrecord.jsp?operator=addrecord" redirect="true"/> <forward name="showmodifyrecord" path="/editrecord.jsp?operator=modifyrecord"/> <forward name="showfindrecord" path="/findrecord.jsp" redirect="true"/> </action> <action input="/findrecord.jsp" name="findrecordform" path="/findrecordaction" scope="session" type="com.bookshop.action.findrecordaction" validate="false"/> </action-mappings> <plug-in classname="org.apache.struts.tiles.tilesplugin"> <set-property property="definitions-config" value="/web-inf/tiles-defs.xml"/> </plug-in></struts-config>tiles-defs文件:<?xml version="1.0" encoding="utf-8"?><!doctype tiles-definitions public "-//apache software foundation//dtd tiles configuration 1.1//en" "http://jakarta.apache.org/struts/dtds/tiles-config_1_1.dtd"><tiles-definitions> <definition name="base-definition" path="layout.jsp"> <put name="head" value="head.jsp" /> <put name="left" value="left.jsp" /> <put name="body" /> <put name="foot" value="foot.jsp" /> </definition> <definition extends="base-definition" name="index-definition"> <put name="body" value="index_body.jsp" /> </definition> <definition extends="base-definition" name="show-definition"> <put name="body" value="show_body.jsp" /> </definition> <definition extends="base-definition" name="edit-definition"> <put name="body" value="edit_body.jsp" /> </definition> <definition extends="base-definition" name="find-definition"> <put name="body" value="find_body.jsp"/> </definition> <definition extends="base-definition" name="success-definition"> <put name="body" value="success_body.jsp" /> </definition> <definition extends="base-definition" name="error-definition"> <put name="body" value="error_body.jsp"/> </definition></tiles-definitions>camel-define文件:<?xml version="1.0" encoding="utf-8"?><!doctype taglib public "-//sun microsystems, inc.//dtd jsp tag library 1.1//en" "java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd"><taglib><tlibversion>1.0</tlibversion><jspversion>1.1</jspversion><shortname>camel</shortname><uri>http://jakarta.apache.org/struts/tags-bean</uri><tag><name>islastpage</name><tagclass>com.bookshop.util.islasttag</tagclass><bodycontent>jsp</bodycontent><attribute><name>page</name><required>true</required><rtexprvalue>true</rtexprvalue></attribute></tag></taglib>上面几个文件与struts-bean.tld,struts-html.tld,struts-tiles.tld,struts-logic.tld都一起位于web-inf的根目录下面.以下是三个action文件:/*findrecordaction.java*/package com.bookshop.action;
... 下一页