Proyecto JSP Internet Shopping Mall
Período del proyecto: 21.01.13 ~ 21.01.29
Enlace de implementación de EC2: http://15.164.166.37/shop La licencia gratuita expira a la distribución del servidor EC2.
Video de demostración: https://youtu.be/umdegow_ulq
ambiente
- Windows 10
- JDK 1.8
- Tomcat 9.0
- Herramienta STS
- Mysql 8.0
- Lombok
- Gson
- Jstl
- Filtro de lucy de la pala
- SHA-256
- Codificación: UTF-8
Diseño y producto, imagen del producto, sitio de referencia Descripción del producto
- brandy
- https://www.brandi.co.kr/
- Trenbi
- Calvo
- https://www.balaan.co.kr/
Referencia
- El pago real se realiza cuando el pago se completa en la pantalla de pago, y el reembolso automático se procesa antes del mediodía.
Use API
- Kakao API de inicio de sesión
- https://developers.kakao.com/product/kakaologin
- API de inicio de sesión de Naver
- https://nid.naver.com/user2/campaign/intronaveridlogin.nhn.nhn
- En el caso del inicio de sesión de Naver y Kakao, cuando el inicio de sesión inicial se mueve a la ventana de entrada de información, se insertó inserción en la tabla de usuario para el valor de entrada y el valor de ID recibido del servidor Naver/Kakao.
- Más tarde, durante el inicio de sesión, se establecieron la identificación única de Kakao y los valores de identificación únicos de Naver.
- API IMORT (servicio de pago)
- https://www.iamport.kr/getstarted
- API Summernote
- Sweetalert2
- https://sweetalert2.github.io/
Creación de bases de datos de MySQL y creación de usuarios
CREATE USER ' shopuser '@ ' % ' identified by ' shop0805 ' ;
GRANT ALL privileges on * . * TO ' shopuser ' @ ' % ' ;
create database shopdb ;
Creación de mesa mysql
CREATE TABLE product (
id int primary key auto_increment,
productName varchar ( 120 ) unique not null ,
companyId int not null ,
price long not null ,
soldCount int default 0 ,
detail longtext not null ,
imgUrl_1 varchar ( 100 ) not null ,
imgUrl_2 varchar ( 100 ),
imgUrl_3 varchar ( 100 ),
imgUrl_4 varchar ( 100 ),
writerId int ,
createDate timestamp default now(),
updateDate timestamp default now()
); CREATE TABLE user (
id int primary key auto_increment,
username varchar ( 20 ) unique default null ,
name varchar ( 20 ) not null ,
email varchar ( 50 ) not null ,
phone varchar ( 13 ) not null ,
address varchar ( 120 ) not null ,
password char ( 64 ) not null ,
kakaoId long,
naverId long,
auth varchar ( 10 ) default ' user ' ,
createDate timestamp default now()
); CREATE TABLE company (
id int primary key auto_increment,
name varchar ( 40 ) unique not null ,
url varchar ( 80 ) unique
); CREATE TABLE favorite (
id int primary key auto_increment,
userId int not null ,
productId int not null ,
createDate timestamp default now()
); CREATE TABLE cart (
id int primary key auto_increment,
userId int not null ,
productId int not null ,
createDate timestamp default now()
); CREATE TABLE qna (
id int primary key auto_increment,
userId int not null ,
productId int not null ,
optionNo int not null ,
password varchar ( 4 ),
detail longtext,
createDate timestamp default now()
); CREATE TABLE review (
id int primary key auto_increment,
userId int not null ,
productId int not null ,
detail longtext not null ,
createDate timestamp default now(),
updateDate timestamp default now()
); Funciones implementadas
1. Regístrese para la membresía 
- La contraseña ingresada al registrarse se codifica a SHA-256 y se almacena en el DB.
2. Iniciar sesión 
3. Kakao Iniciar sesión 
4. Iniciar Naver 
El primer inicio de sesión de Naver/Kakao requerido para ingresar información adicional 
5. Siciar sesión
6. Página principal 
- Usé carrusel.
- Se utiliza el diseño de la cuadrícula.
7. Menú de la marca de barra superior 
- Use la instrucción SELECT para mencionar todo el nombre de la empresa de la tabla de la empresa. (Incluso si se agrega la empresa, no hay necesidad de modificarla por separado).
- Hay encabezados y barras superiores en todas las páginas, por lo que puede usar el filtro para usarlo en todas las páginas.
8. Página de menú de marca por marca 
9. Función de búsqueda 
- Muestra todos los productos que contienen términos de búsqueda y todos los resultados de la empresa.
10. Página de clasificación de volumen de volumen de ventas 
- Cuando un usuario compra un producto, el número de compras de la tabla de productos aumentará, y el resultado es el resultado del volumen de ventas utilizando el pedido de SellCount Desc.
11. En toda la página del producto, 
- Es una característica que solo ve los productos de la marca de marca en el lado izquierdo.
12. Agregue el menú superior al iniciar sesión 
- Si la calificación del usuario está por encima del administrador, se creará un menú de registro de productos y modificación del producto.
- Si el usuario es más que básico, al vapor, el carrito de compras, la modificación de información y el menú de cierre de sesión se creará.
13. Confirme la contraseña al hacer clic en la información 
- Cuando el usuario ingresa la contraseña que ha establecido, el valor de entrada se aplica a la codificación SHA-256 para compararla con el valor almacenado en el DB.
14. Modificación de la información de membresía 
15. Página detallada del producto -top 
- Seleccione el valor de la tabla de productos.
- Si hace clic en el botón de compra a la derecha, vaya a la página de pago. (Solo en el momento de iniciar sesión)
- Si hace clic en el botón CART de compras, se agrega al carrito. (Solo en el momento de iniciar sesión)
- Si hace clic en el botón Vapor, se agrega a la lista de Steam. (Solo en el momento de iniciar sesión)

- Al hacer clic en el botón mientras inicia sesión

- Al hacer clic en el botón mientras está en el estado
- Vaya a la página de membresía cuando haga clic en la membresía.
16. Página detallada del producto -tab 
- Haga clic en cada pestaña para ir a donde está presente la pestaña.
- Usé una posición pegajosa.
- Al ir al lugar donde se encuentra cada pestaña, la línea negra se muestra en la parte inferior de esa pestaña.
17. Página detallada del producto: pestaña de revisión y preguntas y respuestas 
- Haga clic en el título para ir a la página detallada.
- En el caso de preguntas y respuestas, si ingresa su contraseña cuando escribe, no podrá ver el título y el nombre del autor.
- Presione la flecha en la parte inferior derecha para ir inmediatamente a la parte superior de la página.
18. Revisión detallada, página y respuestas 
19. 
- Después de confirmar la contraseña, si coincide, vaya a la página de detalles.
20. Al hacer clic en toda la revisión 
- Puede cargar el contenido del producto que estaba mirando juntos, y puede ir a la página del producto cuando haga clic en la foto del producto.
21. Al hacer clic en las preguntas y respuestas completas 
- Puede cargar el contenido del producto que estaba mirando juntos, y puede ir a la página del producto cuando haga clic en la foto del producto.
- Los secretos también están ocultos aquí.
22. Al escribir una reseña 
- Se usó Summernote a excepción de fotografías y funciones de video.
23. Al hacer clic en preguntas y respuestas 
- Se usó Summernote a excepción de fotografías y funciones de video.
24. Vapor en el menú superior derecha 
- Solo se muestran los productos que los miembros se muestran.
- También se muestra la marca vaporizada por el miembro en la caja de radio izquierda.
25. 
- Solo se muestran los productos que el miembro agregó al carrito de compras.
- Haga clic en el botón de corazón en la lista para agregar características vaporizadas/de eliminación.
- Haga clic en el botón CART de compras en el lado derecho de la lista de productos para usar el carrito.
- Cuando haga clic para ordenar, vaya a la página de pago.
26. Página de pago 
- Cuando hace clic en su carrito de compras, obtiene el producto completo de su carrito.
- Si hace clic directamente en la página de detalles del producto, solo se importa el producto.
- Cuando haga clic en Haga clic para completar el pedido, vaya a la página de pago.
27. Pantalla de pago 
28. Cuando la falla del pago 
- Una ventana de notificación que contiene el error contiene una ventana de notificación.
29. Cuando el éxito del pago 
- Hay una ventana de notificación que incluye detalles de éxito, y los clics en la confirmación irán a la página principal.
30. 
- Puedes ver el historial de éxito/fracaso.