Services Manager实现简单服务管理
2010年4月17日
5 条评论
前一阵子发现以前写的用于快速启动和停止服务的程序有点问题,特别表现在MySQL上,每次和其他服务一起同时执行启动或者停止,它总是不能有效执行。大致分析了一下,可能是用了process类来调用cmd程序,然后再write命令时有点问题。所以就想把它改进一下,后来改着改着发现又要把Oracle的停止与启动再加进去,这样一来就太麻烦了,于是觉得不怎么智能,以后要再装什么软件要用到服务的时候还得再改,太麻烦了。于是乎,我就萌生了从写一个智能点的又方便自己使用的管理程序。
到网上去search了一下,C#中有一个叫servicecontroller的类是专门用来调用管理windows服务的,就用它。本来还想写个进度条的,但要用多线程,太麻烦,而且还要研究操作的执行时间,就省了吧。如果以后有空再去慢慢研究。
以前的程序:
现在的程序:
现在把程序放在这供大家挑错,欢迎各位踊跃找茬,找出的有奖,具体奖项面议。^_^
Services Manager(运行该软件需要.net运行环境。传送门:.net framework)
一个很有难度的游戏–同时玩四个游戏。(转自Timmy)
2010年4月12日
没有评论
JSP+MSSQL实现数据分页显示
2010年4月8日
没有评论
通过编写JSP代码在网页中将数据库中公园信息按照顺序进行分页显示,每页10条记录。
运行效果图:
<%@page contentType="text/html;charset=utf-8"%> <%@page import="java.util.*"%> <%@ page language="java" import="java.sql.*"%> <%@include file="inc1.jsp"%> <getGardenList> <%! public static String returnToBr(String sStr) { if (sStr == null || sStr.equals("")) { return ""; } return sStr.trim(); } %> <% // ResultSet rs= null; int pagecount=0; int count=0; int n; String sql_query=""; String see=""; // Connection conn = null; // Statement stmt = null; // int li_temp = 0; String pages = new String(request.getParameter("pages").getBytes("ISO8859-1"),"utf-8"); // if(findString == null) // findString = ""; // System.out.println(findString); try { //连接数据库 Class.forName(DBDriver); Connection conn=DriverManager.getConnection(DBLocation,DBUser,DBPwd); Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY); sql_query = "select * from yl_garden "; ResultSet rs=stmt.executeQuery(sql_query); // rs=stmt.executeQuery(sql_query); %> <table width="100%" border="1"> <tr> <td><div align="center">序号</div></td> <td><div align="center">名称</div></td> <td><div align="center">地址</div></td> <td><div align="center">级别</div></td> </tr> <% rs.last(); count=rs.getRow(); rs.beforeFirst(); n=(Integer.parseInt(pages)-1)*10; while(rs.next()){ if(n>=rs.getRow()) continue; out.println("<tr>"); see=rs.getString("gardenid"); see= returnToBr(see); out.println("<td>"+ see.trim()+"</td>"); see=rs.getString("gardenname"); see= returnToBr(see); out.println("<td>"+ see.trim()+"</td>"); see=rs.getString("gardenplace"); see= returnToBr(see); out.println("<td>"+ see.trim()+"</td>"); see=rs.getString("gardenlevel"); see= returnToBr(see); out.println("<td>"+ see.trim()+"</td>"); out.println("</tr>"); n++; if(n%10==0) break; } %> </table> <center> 第<%out.println(pages);%>页, 共<%if(count%10==0) pagecount=count/10; else pagecount=count/10+1; out.println(pagecount); %>页<br> <a href="flex_getGardenList.jsp?pages=1">最前一页</a> ,<a href="flex_getGardenList.jsp?pages= <%if(Integer.parseInt(pages)==1) out.println(pages); else out.println(Integer.parseInt(pages)-1); %>">上一页</a>, <a href="flex_getGardenList.jsp?pages= <%if(Integer.parseInt(pages)==pagecount) out.println(pages); else out.println(Integer.parseInt(pages)+1); %>">下一页</a> ,<a href="flex_getGardenList.jsp?pages=<%=pagecount%>">最后一页</a> </center> <% rs.close(); stmt.close(); conn.close(); } catch(Exception e) { e.printStackTrace(); } %> </getGardenList> |
Jfreechart+JSP实现数据饼图
2010年4月8日
没有评论
历经千辛万苦终于把这恶心的Jfreechart给纠结好了。这老师啥都不讲,直接让我们做,这不是要人命嘛!-_-||
Piechart.java:
package com.jsp; import java.awt.Color; import java.awt.Font; import java.io.IOException; import java.io.PrintWriter; import java.text.DecimalFormat; import java.text.NumberFormat; import javax.servlet.http.HttpSession; import org.jfree.chart.ChartFactory; import org.jfree.chart.ChartRenderingInfo; import org.jfree.chart.ChartUtilities; import org.jfree.chart.JFreeChart; import org.jfree.chart.entity.StandardEntityCollection; import org.jfree.chart.labels.StandardPieSectionLabelGenerator; import org.jfree.chart.plot.PiePlot3D; import org.jfree.chart.servlet.ServletUtilities; import org.jfree.chart.title.LegendTitle; import org.jfree.chart.title.TextTitle; import org.jfree.data.general.DefaultPieDataset; import org.jfree.data.general.PieDataset; public class Piechart { public static DefaultPieDataset ds=new DefaultPieDataset(); public static String generatePieChart(String titles,HttpSession session, PrintWriter pw){ String filename = ""; try { JFreeChart chart = ChartFactory.createPieChart3D(titles, getDataSet(), true, true, false); PiePlot3D plot = (PiePlot3D) chart.getPlot(); plot.setLabelGenerator(new StandardPieSectionLabelGenerator("{0}={1}({2})", NumberFormat.getNumberInstance(), new DecimalFormat("0.00%"))); plot.setLegendLabelGenerator(new StandardPieSectionLabelGenerator("{0}={1}({2})")); chart.setBackgroundPaint(Color.white); plot.setForegroundAlpha(1.0f); plot.setCircular(true); Font font = new Font("黑体", Font.TRUETYPE_FONT, 12); TextTitle title = new TextTitle(titles); title.setFont(font); chart.setTitle(title); LegendTitle legend = chart.getLegend(0); legend.setItemFont(font); plot.setLabelFont(font); ChartRenderingInfo info = new ChartRenderingInfo(new StandardEntityCollection()); filename = ServletUtilities.saveChartAsPNG(chart, 500, 300, info, session); ChartUtilities.writeImageMap(pw, filename, info, true); pw.flush(); } catch (IOException ex) { System.out.println("error:"+ex.getMessage()); } return filename; } public static void setDataSet(String name,int n){ ds.setValue(name,n); } public static PieDataset getDataSet(){ DefaultPieDataset dataset = ds; return dataset; } } |
flex_gdn_stat.jsp:
<%@page contentType="text/html;charset=UTF-8"%> <%@page import = "java.util.*"%> <%@page language = "java" import = "java.sql.*"%> <%@page import = "com.jsp.Piechart" %> <%@page import = "java.io.PrintWriter" %> <%@include file ="inc1.jsp"%> <html> <%! public static String returnToBr(String sStr) { if (sStr == null || sStr.equals("")) { return ""; } return sStr.trim(); } %> <% String sql_query = ""; String see = ""; String keid = "", shuid = "", zoneid = ""; int li_temp = 0; int li_order; try { //连接数据库 Class.forName(DBDriver); Connection conn = DriverManager.getConnection(DBLocation, DBUser, DBPwd); Statement stmt = conn.createStatement();//ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); Statement stmt1 = conn.createStatement(); sql_query = "select zonelist, count(gardenid) as num from yl_garden group by zonelist order by num"; ResultSet rs = stmt.executeQuery(sql_query); ResultSet rs1 = null;%> <center><h1>公园数量</h1></center> <table width="100%" border="1"> <tr> <td><div align="center">序号</div></td> <td><div align="center">区域</div></td> <td><div align="center">数量</div></td> </tr> <% li_order = 0; while (rs.next()) { out.println("<tr>"); li_order++; see = rs.getString("zonelist"); see = returnToBr(see); out.println("<td><div align=center>" + li_order + "</div></td>"); out.println("<td><div align=center>" + see.trim() + "</div></td>"); see = rs.getString("num"); see = returnToBr(see); out.println("<td><div align=center>" + see.trim() + "</div></td>"); out.println("</tr>"); Piechart.setDataSet(rs.getString("zonelist"), Integer.parseInt(rs.getString("num"))); } String filename = Piechart.generatePieChart("公园数量图", session, new PrintWriter(out)); String graphURL = request.getContextPath() + "/servlet/DisplayChart?filename=" + filename; %> </table> <center><img src="<%= graphURL%>" width=500 height=300 border=0 ></center> <% rs.close(); stmt.close(); conn.close(); } catch (Exception e) { e.printStackTrace(); } %> </html> |








最新评论