📄 showdetailaction.java
字号:
package struts.action;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javabean.*;import java.sql.*;import java.util.Vector;import org.apache.struts.action.Action;import org.apache.struts.action.ActionForm;import org.apache.struts.action.ActionForward;import org.apache.struts.action.ActionMapping;//对主页面或detailcontent.jsp页面传过来的 code进行处理。返回数据给showdetail.jsp/* 调用的javabean有: ConnectionPool//初始化缓冲池,获得对数据库的连接 PubDate //获得计算机系统时间 DataClass //对表DATA中的字段进行封装的类 Stringtokenizer AppletPrama//为APPLET小应用程序提供数据而写的类 priceDB//提供TITLE和CODE数据而写的类*/public class showdetailAction extends Action { public ActionForward execute( ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { //初始化缓冲池,获得对数据库的连接 ConnectionPool pool=null; pool=ConnectionPool.getInstance(); Connection con=null; try { con=pool.getConnection(); }catch(SQLException e){} Vector vec=new Vector(); Vector veckind=new Vector(); String code=null; PubDate nowdate=new PubDate();//获得计算机系统时间 DataClass hqclass=new DataClass();//对表DATA中的字段进行封装的类 Stringtokenizer SToken=new Stringtokenizer();//对字符串进行分析 //为APPLET小应用程序提供数据而写的类 AppletPrama appletprama=new AppletPrama(con); priceDB pricedb=new priceDB(con);//提供TITLE和CODE数据而写的类 //从主页面或detailcontent.jsp页面中获得code值,然后根据 //code值作相应的处理 code=request.getParameter("code"); if(code==null) { code="1001".trim(); } else { code=code.trim(); } String title=appletprama.getTitle(code);//获得对应主题 String danwei=appletprama.getDanwei(code);//获得对应单位 String maxdate=appletprama.getMaxdate(code);//获得最大时间 String mindate=appletprama.getMindate(code);//获得最小时间 float maxprice=appletprama.getMaxprice(code,mindate,maxdate);//获得最大价格 float minprice=appletprama.getMinprice(code,mindate,maxdate);//获得最小价格 vec=appletprama.getAllprice(code,mindate,maxdate);//获得在相应时间段内的对应主题的所有价格值 hqclass=(DataClass)vec.get(0); //request.setAttribute("date1",hqclass.getTimedate()); String now=nowdate.getDate();//获得计算机系统时间 //给detailcontent.jsp页面传参数 request.setAttribute("title",title); request.setAttribute("danwei",danwei); request.setAttribute("maxdate",maxdate); request.setAttribute("maxprice",String.valueOf(maxprice)); request.setAttribute("minprice",String.valueOf(minprice)); request.setAttribute("now",now); request.setAttribute("code",code); int j=0; //如果记录数超过365条,则只获取最新的365条记录 //如果没超过,则不进行另外的处理 if(vec!=null) { if(vec.size()>365) { for(int i=(vec.size()-365);i<vec.size();i++) { hqclass=(DataClass)vec.get(i); j=i-(vec.size()-365); request.setAttribute("price"+j,String.valueOf(hqclass.getPrice())); } request.setAttribute("number",String.valueOf(365)); mindate=((DataClass)vec.get(vec.size()-365)).getTimedate(); } else { for(int i=0;i<vec.size();i++) { hqclass=(DataClass)vec.get(i); request.setAttribute("price"+i,String.valueOf(hqclass.getPrice())); } request.setAttribute("number",String.valueOf(vec.size())); } } //在KIND表中获得所有主题和相应的编号 String str1="select code,title from kind order by code"; veckind=pricedb.getTitleCode(str1); request.setAttribute("veckind",veckind); //只取得最小时间和最大时间中的年份 String minselect=SToken.getYear(mindate); String maxselect=SToken.getYear(maxdate); request.setAttribute("minselect",minselect); request.setAttribute("maxselect",maxselect); request.setAttribute("mindate",mindate); //如果有数据库连接,则断开连接 try { if(con!=null) con.close(); }catch(SQLException e){} return (mapping.findForward("success")); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -