Autor:Eve ColeFecha de actualización:2009-07-02 17:12:58
El siguiente es el programa fuente del carrito de compras que hice usando JSP y una base de datos:
Aviso: 1. La parte de nueva facturación aún no se ha completado, ¡hágalo usted mismo! 2. La próxima versión se realizará mediante sesión.
//shop_cart.jsp
<%@ página contentType="text/html;charset=gb2312"%> <%@ sesión de página="true" %> <%@ idioma de página="java" import="java.sql.*" %> <%
Cadena tipo_producto; Acción de cuerda; int id_producto; int curvatura;
//tipo de producto si (request.getParameter("tipo_producto")==null){ tipo_producto="todos"; }demás{ tipo_producto=request.getParameter("tipo_producto"); }
//Parámetros de número de página y tipo de producto, puede volver a la última página de compras cuando "seguir comprando" si (request.getParameter("curpage")==null){ curvatura=1; }demás{ curpage=java.lang.Integer.parseInt(request.getParameter("curpage")); }
//acción si (request.getParameter("acción")==null){ acción="ver"; }demás{ acción=request.getParameter("acción"); }
//Número de artículo si (request.getParameter("product_id")==null){ id_producto=0; }demás{ product_id=java.lang.Integer.parseInt(request.getParameter("product_id")); }
int bbb; bbb=1;
Número entero = nuevo entero (bbb);
// número de tienda session.putValue("shop_id",num); //Nombre de usuario del cliente session.putValue("nombre_invitado","asp2001");
sql="seleccione cantidad_carrito de shop_cart donde cart_shop_id=" + shop_id
+ " y cart_guest_id='" + nombre_invitado + "' y cart_product_id=" + product_id; rs = bka.executeQuery(sql); si (rs.siguiente()){ int carrito_cantidad; cantidad_carro=java.lang.Integer.parseInt(rs.getString("cantidad_carro"))+1; sql="actualizar shop_cart set cart_quantity=" + cart_quantity + " donde cart_shop_id="
+ shop_id + "y cart_guest_id='" + guest_name + "' y cart_product_id=" + product_id; rs = bka.executeQuery(sql);} demás { sql="insertar en shop_cart (cart_shop_id,cart_guest_id,cart_product_id,cart_quantity) valores ('" + shop_id + "','"
shop_product.product_discount,shop_cart.cart_quantity,shop_product.product_first from shop_cart,shop_product donde shop_cart.cart_shop_id=" + shop_id + " y shop_cart.cart_guest_id='" + guest_name + "' y shop_cart.cart_product_id=shop_product.product_id"; rs = bka.executeQuery(sql); total entero; int total_primero; total=0; total_primero=0; Cadena nombre_producto; int precio_producto; int producto_descuento; int producto_primero; int carrito_cantidad;
si (rs.siguiente()){ mientras (rs.siguiente()) { product_id=java.lang.Integer.parseInt(rs.getString(1)); nombre_producto=rs.getString(2); precio_producto=java.lang.Integer.parseInt(rs.getString(3)); product_discount=java.lang.Integer.parseInt(rs.getString(4)); cart_quantity=java.lang.Integer.parseInt(rs.getString(5)); product_first=java.lang.Integer.parseInt(rs.getString(6)); %>
El programa utiliza dos tablas: 1 mesa shop_cart cart_id int Numeración automática del número del carrito de compras cart_shop_id nvarchar número de tienda cart_product_id nvarchar número de producto cart_quantity int La cantidad del producto almacena temporalmente los datos del carrito de compras
2 tabla tienda_producto product_id int número de producto numeración automática shop_id nvarchar número de tienda nombre_producto nvarchar nombre del producto product_bb nvarchar introducción del producto product_price int precio de mercado product_discount int precio de descuento product_img img imagen estado_producto estado nvarchar product_first índice de depósito int product_type nvanchar tipo de producto almacena datos del producto
Javabeans creados con bka.java: bka.class puede proporcionar operaciones en la base de datos.
Además, bka.dsn debe estar registrado en el sistema DSN del panel de control. Esto permite que JSP llame a la base de datos SQL a través de JDBC-ODBC. Para llamar a javabean en la página, básicamente puedes usar el siguiente método:
<%@ idioma de página="java" import="java.sql.*" %> <% String sql="seleccionar * de xxx"; Conjunto de resultados rs = RegisterBean.executeQuery(sql); si(rs.siguiente()) { rs.cerrar(); RegisterBean.closeStmt(); session.putValue("register_message","¡se encontró un nombre duplicado!"); } %> Tenga en cuenta que rs debe cerrarse después de su uso.
El siguiente es el programa fuente de bka.java. Tenga en cuenta que debe usar javac para compilarlo en un archivo de clase o javabean antes de usarlo.
--tienda/bka.java--
tienda de paquetes; importar java.sql.*;
clase pública bka { Cadena sDBDriver = "sun.jdbc.odbc.JdbcOdbcDriver"; Cadena sConnStr = "jdbc:odbc:bka"; Conexión de conexión = nula; Conjunto de resultados rs = nulo;