📄 selectproductservlet.java
字号:
package networkshopsystem;import javax.servlet.*;import javax.servlet.http.*;import java.io.*;import java.sql.*;import java.util.*;/** * Title: 网络商店的销售系统 * Description: 教学示范 * Copyright: Copyright (c) 2003 * Company: 北京师范大学计算机系 * @author 孙一林 * @version 1.0 */public class SelectProductServlet extends HttpServlet { static final private String CONTENT_TYPE = "text/html; charset=GBK"; String[] buy_number; // 定义顾客购买商品的数目数组 int count=0; // 定义数据库中存货的数目 int firstnum=1; public void init() throws ServletException { } public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request, response); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { int i=0; try { ResultSet rs = getProduct(); // 连接数据库获得产品结果集 while(rs.next()) { count++; // 获得数据库中存货数目 } setbuy_number(count) ; // 初始化buy_number数组 String[] buyproduct_num=new String[count]; buyproduct_num=buy_number; response.setContentType(CONTENT_TYPE); PrintWriter out = response.getWriter(); // 输出选择商品页面 out.println("<html>"); out.println("<head><title>选择商品页面</title></head>"); out.println("<body><div align=center><br>欢迎您光临网络商店销售系统!请您选择欲购买商品 :"); out.println("<form name=form1 method=post action=productslistservlet>"); out.println("<table align=center border=0 width='95%'><tr>"); out.println("<td>商品编号</td>"); out.println("<td>商品名称</td>"); out.println("<td>商品价格</td>"); out.println("<td>商品库存数量</td>"); out.println("<td>购买数量(件)</td></tr>"); String number=String.valueOf(count) ; HttpSession session = request.getSession(); session.setAttribute("number", number); // 传送count值 rs.beforeFirst() ; // 输出数据库中产品列表 while(rs.next()) { out.print("<tr>"); int product_id=rs.getInt(1); String product_name=rs.getString(2); double product_price=rs.getDouble(3); int product_quantity=rs.getInt(4); out.println("<td>" +product_id +"</td>"); out.println("<td>" +product_name +"</td>"); out.println("<td>" +product_price+"</td>"); out.println("<td>" +product_quantity+"</td>"); out.println("<td><input type=text name=buynumber[" + i +"] value="+buyproduct_num[i]+"></td></tr>"); i++; } out.println("</tr></table><br><br><br>"); out.println("<input type=submit name=Submit value=确定>"); out.println("<input type=reset value=重选>"); out.println("</form></div></body></html>"); } catch(Exception ex) { // 异常处理 ex.printStackTrace(); } } public ResultSet getProduct() { // 定义getProduct()函数 try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); String url = "jdbc:odbc:shop"; Connection connection = DriverManager.getConnection(url); String sql = "select * from product_table"; Statement statement = connection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); ResultSet rs = statement.executeQuery(sql); return rs; } catch(Exception ex) { ex.printStackTrace(); } return null; } public void setbuy_number(int countnumber) { if(firstnum==1) { // 如果第一次访问,初始化buy_number数组 buy_number=new String[count]; for(int k=0;k<count;k++) { buy_number[k]="0"; } } firstnum++; } public void destroy() { }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -