Springboot se basa en el diseño del centro comercial periférico del juego JAVA y la realización del proyecto de graduación, con el código fuente 261622

Desarrollo del centro comercial periférico del juego Springboot

                                                                           Resumen

Hoy en día, los estilos de vida de las personas se enriquecen gradualmente. Las computadoras y las redes se han integrado en la vida de las personas, afectando nuestra vida cotidiana todo el tiempo. Los juegos en línea han entrado en la vida de la mayoría de las personas. En el mundo de los juegos, la gente obtendrá muchos productos de juegos. Sin embargo, estos productos son como artículos de la vida real. La tendencia de los tiempos, y tendrá su estado distintivo y esencial.

Este documento analiza principalmente los requisitos funcionales de la gestión de primer y segundo plano de la plataforma, y ​​analiza los requisitos no funcionales de seguridad y escalabilidad del sistema. Sobre la base de un análisis detallado de la demanda, se determina la estructura de la base de datos de acuerdo con el diseño funcional del sistema y se realiza la escritura completa del código. El centro comercial periférico del juego ha completado el diseño de la página y la realización de funciones de los módulos principales del sistema. Este artículo muestra el diagrama del efecto de implementación de la página de inicio y presenta el proceso de implementación de la función de registro de usuario, información del centro comercial, centro comercial, compra de productos básicos y funciones de pago en línea a través de códigos y páginas.

Palabras clave: comercio electrónico; framework Springboot; centro comercial de periféricos de juegos

Desarrollo de centros comerciales alrededor de juegos springboot

Abstracto

Hoy en día, los estilos de vida de las personas se enriquecen gradualmente. Las computadoras y las redes se han integrado en la vida de las personas, afectando nuestra vida diaria todo el tiempo. Los juegos en línea han entrado en la vida de la mayoría de las personas. En el mundo del juego, la gente obtendrá muchos productos básicos del juego. Sin embargo, estos productos son como los de la vida real. Algunos productos se utilizarán a menudo para que los jugadores se sientan enérgicos y sobresalientes en el juego; La aparición de centros comerciales en torno al juego se ha convertido en la tendencia de los tiempos, y tendrá su posición única e imprescindible.

Este artículo analiza principalmente los requisitos funcionales de la gestión de primer y segundo plano de la plataforma, y ​​analiza los requisitos no funcionales de seguridad y escalabilidad del sistema. Con base en el análisis detallado de la demanda, la estructura de la base de datos se determina de acuerdo con el diseño funcional del sistema para realizar la codificación completa. El centro comercial alrededor del juego ha completado el diseño de la página y la realización de funciones de los módulos principales del sistema. Este documento muestra el efecto de implementación de la página de inicio y presenta el proceso de implementación de la función de registro de usuario, información del centro comercial, centro comercial, compra de productos básicos y función de pago en línea a través del código y la página.

Palabras clave :Comercio Electrónico; marco Springboot; Centro comercial alrededor del juego.

Tabla de contenido

1. Introducción

(1) Antecedentes e importancia de la investigación

(2) Estado de desarrollo

2. Introducción de herramientas de desarrollo y tecnologías relacionadas

(1) lenguaje de desarrollo  Java

(2) marco Springboot 

( 3 ) Base de datos  Mysql

( 4 ) estructura B/S 

( 5 )  Principio de funcionamiento del sistema B/S

( 6 )  patrón MVVM

3. Análisis del sistema

(1) Análisis de factibilidad

1.  Viabilidad económica

2.  Viabilidad técnica

3.  Factibilidad de operación

(2) Análisis de requisitos funcionales

(3) Análisis de requisitos no funcionales

(4) Análisis de procesos de negocio

4. Diseño del sistema

(1) diseño de estructura funcional

( 2 ) Diseño funcional

(2) diseño de base de datos

5. Implementación del sistema

(1) Realización del inicio de sesión del usuario

(2) Realización de las funciones principales de la recepción del sistema

1.  Realización de la página de inicio

2.  Realización del registro de usuario

3. Realización de la exhibición del centro comercial . 

4. Realización de información comercial. 

5. Realización de la compra del producto 

(3) Realización de las funciones principales del fondo del sistema.

1. Realización de la gestión de usuarios 

2. Realización de la gestión de la información del centro comercial. 

3.  Realización de la gestión de pedidos

6. Prueba del sistema

(1) Prueba de confiabilidad del sistema

(2) Prueba funcional del sistema

(3) Prueba de calificación del sistema

(4) Resultados de la prueba

7. Resumen y perspectiva

referencias

gracias

Centro comercial periférico de juegos

  • introducción
  • antecedentes y significado de la investigacion

En el siglo XXI, el mundo está interconectado y la tecnología avanza a pasos agigantados. Nuestras vidas también han sufrido cambios tremendos. Con la omnipresencia de las computadoras, cada área de nuestra vida social y económica está cambiando. La profundidad y amplitud del intercambio de información de las personas aumenta constantemente, lo que hace que el modelo de industria tradicional siga el ritmo de los tiempos y brinde a los usuarios servicios más convenientes y personalizados. El comercio electrónico se ha popularizado y desarrollado mucho aquí.

Hoy en día, con el rápido desarrollo de la tecnología de la información, existen infinitas oportunidades, pero al mismo tiempo, en el entorno actual, el modo de transacción en línea de los productos de juegos que dependen de manos humanas es básicamente incapaz de cumplir con los requisitos de operación y administración empresarial. , Es decir, el modelo tradicional de comercio de productos básicos del juego no solo no puede cumplir con el desarrollo de las empresas, sino que tampoco puede cumplir con los requisitos básicos de la vida actual y las tendencias de desarrollo social. En los primeros días, cuando Internet no era tan desarrollado y popular como lo es hoy, las transacciones de artículos de juego dependían completamente de las operaciones manuales. Sin embargo, en la era de la información, el ritmo de vida se está acelerando y los cambios en la sociedad son cada vez más rápidos. transacciones de productos básicos de juegos tradicionales El sistema no ha podido seguir el ritmo y será eliminado por los tiempos tarde o temprano. Necesita pasar por muchos procedimientos, y todo el proceso debe ser operado manualmente.La eficiencia de la gestión de información de transacciones de productos de juegos tradicionales es demasiado baja, y simplemente no es suficiente para que las empresas cuenten y procesen la gran cantidad de transacciones de productos de juegos. información. Al mismo tiempo, la relación que se genera durante el proceso de transacción es sumamente compleja, y cada unidad procesa la información de manera diferente, lo que es muy propenso a la omisión o duplicación de información.

Por lo tanto, debe surgir una nueva plataforma de tecnología basada en la información para mejorar la situación caótica actual. El centro comercial periférico de juegos nació en un entorno tan grande. La solución ideal es crear formalmente una tienda de productos de juegos. Esta innovación es de gran importancia porque, por un lado, no solo puede deshacerse de los métodos de trabajo ineficientes tradicionales, sino que, por otro lado, puede garantizar el funcionamiento eficiente de la cadena comercial. Otra ventaja de establecer un sistema de gestión de la información es que puede promover en gran medida la innovación en la gestión empresarial, la innovación tecnológica, la innovación del sistema y la innovación cultural.

  • Estado del desarrollo

En el ámbito global, la investigación sobre plataformas de comercio de productos básicos de juegos en los Estados Unidos es relativamente temprana y está relativamente avanzada. En 2009, el comercio de productos básicos de juegos en los Estados Unidos publicó "Explicación teórica de la información básica de comercio de productos básicos de juegos", que mencionó los siguientes indicadores para evaluar la información de comercio de productos básicos de juegos: relevancia, verificabilidad, separación y cuantificación. Desde entonces, por primera vez en el mundo, ha habido un estándar de calidad para la información de transacciones de productos de juegos. “No solo dio el primer paso en el comercio de productos básicos de juegos, sino que también tuvo un impacto enorme y de gran alcance en la creación e investigación de plataformas de comercio de productos básicos de juegos en el futuro. Ahora, muchas empresas en nuestro país han logrado la gestión de la información mediante el establecimiento de sistemas LAN internos y conexiones externas a Internet, y también cuentan con instalaciones de hardware completas. Sin embargo, todavía existen muchas deficiencias en nuestro país, especialmente en el software. En términos de software, lo más insatisfactorio es que el sistema de información de la plataforma de comercio de productos básicos de juegos que nuestro país puede desarrollar en la actualidad no ha estado en línea con los estándares internacionales, y las funciones no son lo suficientemente poderosas y perfectas, lo que en última instancia hace internacional amigos no lo compren. , causando grandes dificultades a la promoción y popularización del sistema.

Nuestro país enfrenta un problema muy difícil, que es cómo responder y adaptarse a los requerimientos del desarrollo internacional. En los últimos años, la industria de la información se ha desarrollado rápidamente y el método de gestión manual no puede seguir el ritmo de los tiempos, especialmente en la aplicación de la gestión de información de transacciones de productos básicos de juegos en línea, ya que incluye una gran cantidad de procesamiento de transacciones. utilizando la tecnología de TI podemos mejorar completamente la calidad del servicio y mejorar el nivel de gestión. No solo tenemos que enfrentar la competencia nacional, sino también enfrentar varios desafíos del exterior, mantener el ritmo internacional e integrarnos con los estándares internacionales a la velocidad más rápida.

  • Introducción a las herramientas de desarrollo y tecnologías relacionadas
  • Lenguaje de desarrollo Java

Java es un lenguaje de programación orientado a objetos. Una clase es la unidad básica de un programa Java. Una clase contiene atributos y métodos, y se pueden crear innumerables objetos en una clase. Los miembros principales contenidos en la clase son campos y métodos. Un campo se refiere a una variable de datos y un método se refiere a una colección de operaciones en campos, incluida la asignación de valores a otras variables, llamadas a métodos, etc. [1].

  • Marco de arranque de primavera

El marco Spring es un marco de aplicación de código abierto en la plataforma Java que proporciona un contenedor con características de inversión de control. Aunque Spring Framework en sí no tiene restricciones en el modelo de programación, su uso frecuente en aplicaciones Java lo hizo tan popular que luego se usó como complemento o incluso como sustituto del modelo EJB (EnterpriseJavaBeans). Spring Framework proporciona una serie de soluciones para el desarrollo, como el uso de las características principales de la inversión de control y la implementación de la inversión de control a través de la inyección de dependencia para realizar la contenedorización del ciclo de vida del objeto de administración, utilizando la programación orientada a aspectos para la administración de transacciones declarativas. , y la integración de una variedad de tecnologías de persistencia administran el acceso a los datos, brindan una gran cantidad de marcos web excelentes para facilitar el desarrollo, etc. Spring Framework tiene la función de inversión de control (IOC). IOC está diseñado para facilitar el mantenimiento y las pruebas de proyectos. Proporciona un método para la configuración y gestión unificadas de objetos Java a través del mecanismo de reflexión de Java. Spring Framework utiliza el contenedor para administrar el ciclo de vida de los objetos. El contenedor puede configurar objetos escaneando archivos XML o anotaciones específicas de Java en las clases. Los desarrolladores pueden obtener objetos a través de la búsqueda de dependencias o la inyección de dependencias. El marco Spring tiene un marco de programación orientado a aspectos (AOP). El marco Spring AOP se basa en el modo proxy y es configurable en tiempo de ejecución. El marco AOP está modularizado principalmente para preocupaciones cruzadas entre módulos. El marco AOP del marco Spring solo proporciona características básicas de AOP. Aunque no se puede comparar con el marco AspectJ, también puede satisfacer las necesidades básicas a través de la integración con AspectJ. Las funciones como la gestión de transacciones y el acceso remoto en el marco Spring se pueden realizar mediante el uso de la tecnología Spring AOP. El marco de gestión de transacciones de Spring trae un mecanismo de abstracción a la plataforma Java que permite que las transacciones locales y globales, así como las transacciones anidadas, funcionen con puntos de guardado y en casi cualquier entorno en la plataforma Java.

  • base de datos mysql

La estructura lógica de la base de datos Mysql incluye espacio de tabla, segmento, extensión, bloque de datos y objeto de esquema [9]. Cada base de datos se puede dividir lógicamente en uno o más espacios de tabla, y cada espacio de tabla se compone de uno o más archivos de datos. La base de datos Mysql se divide en espacio de tabla del sistema y espacio de tabla que no es del sistema, cada base de datos Mysql contiene un espacio de tabla del sistema llamado SISTEMA.           

El lenguaje de Mysql no está estructurado y los usuarios pueden trabajar con los datos. MySQL recibe mucha atención por su velocidad, confiabilidad y adaptabilidad. La mayoría de las personas está de acuerdo en que MySQL es la mejor opción para administrar contenido cuando no se requiere procesamiento transaccional. Y debido a que el lenguaje y la estructura de Mysql son relativamente simples, pero la función y la cantidad de información almacenada son muy poderosas, se ha utilizado ampliamente.

El papel de la base de datos Mysql en el proceso de programación es muy extenso, lo que brinda comodidad a los usuarios para consultar datos. Debido a su flexibilidad y potentes funciones, la aplicación de la base de datos Mysql solo necesita una pequeña porción de código para realizar una determinada función, a diferencia de otros programas que necesitan escribir una gran porción de código. En términos generales, el lenguaje de la base de datos Mysql es relativamente conciso.

El análisis de flujo de datos es principalmente una sala de almacenamiento para el almacenamiento de datos, que se realiza en una computadora, no una sala de almacenamiento en realidad. Los datos se almacenan en un formato fijo en lugar de en desorden, su definición es: tiene un formato fijo durante mucho tiempo y se puede compartir y almacenar en la memoria de la computadora. La gestión de la base de datos consiste principalmente en el almacenamiento, la modificación y la adición de datos, y el establecimiento de tablas de datos. Para garantizar el funcionamiento normal de los datos del sistema, algunos procesadores capaces pueden gestionarlos sin necesidad de que personas profesionales los manejen. El establecimiento de la tabla de datos puede ajustar los datos en la tabla de datos, recombinar y reconstruir los datos para garantizar la seguridad de los datos. Debido a las potentes funciones de la base de datos, el desarrollo de este sistema utiliza principalmente Mysql para gestionar los datos.

  • Estructura B/S

B/S (Navegador/Servidor) es una arquitectura más conveniente que su arquitectura predecesora. Utiliza el servidor web para completar la transferencia y el intercambio de datos. Solo necesita descargar el navegador como cliente, luego el trabajo logrará un efecto de "adelgazamiento" y no es necesario considerar el problema de la instalación continua del software.           

  • Principio de funcionamiento del sistema B/S

La arquitectura B/S adopta el modo de trabajo de solicitud del navegador y respuesta del servidor.

Los usuarios pueden acceder a información como texto, datos, imágenes, animación, video a pedido y sonido generado por el servidor web en Internet a través de un navegador;

Y cada servidor web se puede conectar con el servidor de la base de datos de varias maneras, y en realidad se almacena una gran cantidad de datos en el servidor de la base de datos;

Descargue el programa del servidor web para ejecutarlo localmente. Si se encuentra una instrucción relacionada con la base de datos durante el proceso de descarga, el servidor web la entregará al servidor de la base de datos para su interpretación y ejecución, y la devolverá al servidor web, y el servidor web lo devolverá al usuario. En esta estructura, muchas redes están conectadas entre sí para formar una gran red, es decir, la red global. Cada empresa puede construir su propia Internet sobre la base de esta estructura.

En el modo B/S, el usuario solicita acceso a muchos servidores distribuidos en la red a través del navegador. La solicitud del navegador es procesada por el servidor, y el resultado del procesamiento y la información correspondiente se devuelven al navegador. Otros datos Procesamiento y solicitudes son todo completado por el Servidor Web. A través de la estructura del marco y el navegador integrado en el sistema operativo, esta estructura se ha convertido en el modo de estructura principal de las aplicaciones de software actuales.

   (6) patrón MVVM

El modelo MVVM es un modelo de desarrollo de uso común, que se divide principalmente en capa M, capa V y capa C en términos de implementación de código.

Vista (View) representa la interfaz de interacción del usuario. Una aplicación web puede tener muchas interfaces. En el modo MVVM, la vista solo se ocupa de la recopilación de datos, el procesamiento y las solicitudes del usuario, y no incluye el procesamiento de los procesos comerciales y los procesos comerciales. Manejado por el modelo.

Modelo (Modelo) es el procesamiento de procesos/estados comerciales y la formulación de reglas comerciales. El proceso del modelo que procesa el proceso de negocio no puede ser visto por otras capas, es como una caja negra, después de recibir los datos solicitados por la vista, devuelve el resultado final del procesamiento. El núcleo principal de MVVM es el diseño del modelo de negocio. Un ejemplo de aplicación típico es el popular modelo EJB. Divide aún más el modelo desde la perspectiva de la implementación de tecnología de aplicaciones para hacer un uso completo de los componentes existentes, pero no se puede usar. como un marco para aplicar modelos de diseño.

Se puede entender que el controlador (Controller) recibe la solicitud del usuario, y luego la vista y el modelo se combinan para completar la solicitud del usuario. Tiene un papel muy obvio en la división de la capa de control y puede decirle claramente que es un distribuidor, qué modelo y vista elegir, y qué tipo de solicitud del usuario se puede completar. La capa de control no realiza todo el procesamiento de datos, por ejemplo: el usuario hace clic en una conexión, después de que la capa de control recibe la solicitud, no procesa la información comercial, solo transmite la información del usuario al modelo y le dice al modelo qué hacer, y luego elige el que cumple con los requisitos. La vista se devuelve al usuario.

           

     

  • análisis del sistema

El análisis de factibilidad de este sistema se realizará desde las perspectivas de economía, tecnología y operación.

  1. factibilidad economica

Todo el sistema tiene pasos rigurosos desde el diseño hasta el desarrollo y las pruebas. Todas las tareas de trabajo las realizo yo mismo sin soporte técnico externo, lo que ahorra todos los costos de servicio y mano de obra. En términos de hardware, se usa un teléfono móvil de segunda mano para ahorrar costos. La estación de trabajo se utiliza como servidor de implementación del proyecto y servidor de base de datos, y el costo es inferior a 10 000 yuanes. La implementación de la red real también la realizo yo mismo sin otros costos de mano de obra involucrados. Todo el proceso de desarrollo se basa en el principio de bajo costo. y bajo consumo.

  1. viabilidad técnica

El propósito del análisis de factibilidad técnica es confirmar si el sistema puede implementarse utilizando las tecnologías existentes y evaluar la eficiencia y finalización del desarrollo. La viabilidad técnica se refiere a si el desarrollo de software y hardware de computadora puede cumplir con los requisitos de desarrollo en las condiciones técnicas actuales. Debido a que el desarrollo del sistema se basa en el lenguaje Java, las condiciones de software y hardware requeridas para el desarrollo del sistema se pueden cumplir en una computadora común. Debido a que ocupa relativamente poca memoria, teóricamente no hay problema en desarrollar y diseñar software con la base de datos Mysql porque ocupa muy poca memoria. Las técnicas anteriores pueden garantizar efectivamente el desarrollo exitoso y eficiente del sistema.

  1. factibilidad operativa

La interfaz de usuario del centro comercial periférico del juego es simple y fácil de operar. Las ventanas de interfaz comunes se utilizan para iniciar sesión en la interfaz y las operaciones de acceso se realizan a través de computadoras. Los usuarios pueden acceder a las operaciones siempre que hayan usado computadoras. El desarrollo de este sistema se desarrolla con tecnología Java. La humanización y la perfección son las características más destacadas del desarrollo de la estructura B/S, lo que hace que las operaciones del usuario sean más concisas y convenientes que otras. Fácil de operar, fácil de administrar y buena interactividad se reflejan plenamente en el funcionamiento de este sistema.

  • Análisis de requisitos funcionales

Requisitos de la recepción:

(1) Módulo de usuario: incluye principalmente registro e inicio de sesión de usuario, gestión de información personal del usuario y otras funciones.

(2) Módulo de gestión de productos básicos: incluye principalmente funciones como búsqueda de información de productos básicos, visualización de información de productos básicos, búsqueda de productos básicos y compra de productos básicos.

(3) Módulo de orden de compra: incluye principalmente las funciones de agregar orden de compra, ver mi orden de compra y eliminar orden de compra.

(4) Módulo de pedidos: incluye principalmente funciones como generar pedidos, mis pedidos, ver los detalles del pedido y el pago en línea.

(5) Módulo del centro comercial: incluye principalmente la exhibición de la tienda del centro comercial, la exhibición de productos de la tienda, etc.

(6) Módulo de información del centro comercial: muestra principalmente información del centro comercial.

Requisitos de antecedentes:

(1) Gestión de usuarios: incluye principalmente lista de usuarios, gestión de nivel de usuario y otras funciones.

(2) Gestión de productos: incluye principalmente funciones como lista de productos, gestión de categorías de productos, adición de productos y gestión de información de productos.

(3) Gestión de información del centro comercial: incluye principalmente la publicación de información del centro comercial y otras funciones.

(4) Gestión de listas de categorías: incluye principalmente la gestión de categorías de productos básicos.

(5) Gestión de pedidos: revisar la información del pedido de compra del usuario.

El diagrama de caso de uso del usuario se muestra a continuación.

 

Figura 1 Diagrama de caso de uso del usuario

El diagrama de caso de uso del administrador se muestra a continuación.

 

Figura 2 Diagrama de caso de uso del administrador

La descripción del caso de uso de adición de producto se muestra en la siguiente tabla.

Tabla 1 Descripción de caso de uso de producto agregado

nombre del caso de uso

agregar ítem nuevo

partícipe

administrador

Descripción general del caso de uso

Los administradores utilizan este caso de uso para agregar nuevos productos.

condiciones previas

El administrador debe iniciar sesión en el sistema antes de agregar nuevos productos

condición posterior

Agregar un nuevo elemento al sistema

flujo de eventos básico

acción del participante

respuesta del sistema

  1. El administrador selecciona "Nuevo producto" en la interfaz principal de fondo.

4. El administrador completa la información del nuevo producto y hace clic en el botón "Agregar".

2. El sistema abre la interfaz para agregar nuevos productos.

3. El sistema verifica que la información del producto ingresada por el administrador sea correcta y válida.

5. El sistema agrega el producto a la base de datos.

6. El sistema indica "Operación exitosa".

7. El sistema salta a la interfaz de gestión de mercancías.

otro flujo de eventos

1. Si el sistema verifica que el nombre del producto ingresado por el administrador está vacío, le indicará "*¡Complete el nombre del producto!".

2. El sistema verifica que el precio ingresado por el administrador no esté en formato digital y muestra "*¡El precio debe estar en formato digital!"

Las descripciones de casos de uso de eliminación de elementos se muestran en la siguiente tabla.

Tabla 2 Descripción del caso de uso de eliminación de productos

nombre del caso de uso

Eliminar elemento

partícipe

administrador

Descripción general del caso de uso

Este caso de uso se utiliza para que los administradores eliminen productos

condiciones previas

Los administradores deben iniciar sesión en el sistema antes de eliminar elementos

condición posterior

Eliminar un elemento del sistema

flujo de eventos básico

acción del participante

respuesta del sistema

1. El administrador selecciona "Administración de productos básicos" en la interfaz principal de fondo.

4. El administrador selecciona un producto y hace clic en el botón "Eliminar".

6. El administrador hace clic en el botón "Aceptar".

2. El sistema obtiene la lista de información del producto de la base de datos.

3. El sistema abre la interfaz de la lista de mercancías.

5. El sistema le preguntará "¿Está seguro de que desea eliminar?".

7. El sistema elimina la mercancía de la base de datos.

8. El sistema indica "Eliminar con éxito".

9. El sistema salta a la interfaz de gestión de mercancías.

otro flujo de eventos

ninguno

Los casos de uso de edición de usuario se describen en la siguiente tabla.

Tabla 3 Descripción de caso de uso de edición de usuario

nombre del caso de uso

modificar usuario

partícipe

administrador

Descripción general del caso de uso

本用例用于管理员进行修改用户信息操作

前置条件

管理员已经登录系统

后置条件

系统中更新一条用户记录

基本事件流

参与者动作

系统响应

1、管理员在后台主界面选择“用户管理”。

4、管理员在用户列表中选择一个用户,点击“编辑”按钮。

6、管理员填写用户信息,点击“保存修改”按钮。

2、系统从数据库中获取用户信息。

3、系统打开用户列表界面。

5、系统打开修改用户信息界面。

7、系统将更改后的添加到数据库中。

8、系统提示“操作成功”。

9、系统跳转到用户管理界面。

其他事件流

商品购买用例描述如下表所示。

表4商品购买用例描述

用例名称

商品购买

参与者

用户

用例概述

本用例用于用户进行对商品购买操作

前置条件

用户已经登录系统

后置条件

系统中增加一条用户购买记录

基本事件流

参与者动作

系统响应

1、用户在前台首页选择任意一个商品分类。

4、管理员在用户列表中选择一个商品。

7、用户填写购买订单,点击“购买”按钮。

2、系统从数据库中获取商品列表信息。

3、系统打开商品列表界面。

5、系统从数据库中获取商品信息。

6、系统打开商品信息及购买界面。

8、系统检查用户输入的信息是正确有效的。

9、系统将购买记录添加到数据库中。

其他事件流

1、系统验证用户输入的字段为空,则提示“*购买数量不能为空!”。

  • 非功能性需求分析 

随着用户量的增加,系统可能会需要同时服务上千、上万个页面,服务器需要同时响应大量用户的操作,这就要求系统需要有良好的可扩展性,否则系统会出现延迟,卡顿甚至服务器崩溃的问题。高扩展性可以使软件保持旺盛的生命力,同时也能够使系统更好的适应用户增加、提高性能需求、增加应用功能等改变。

系统中保存了大量用户和管理员的个人信息,因此,保证系统服务器和数据安全是在开发过程中需要考虑的重要问题。安全性包括服务器安全、操作系统安全、数据库安全、程序代码安全以及用户个人信息和支付安全等,系统可以通过采用防火墙技术、加密技术、认证技术等来增强其安全性,只有一个健壮安全的系统才能具有长久的生命力。

  • 业务流程分析

游戏周边商城的前台中,用户模块和商品模块进行数据交互,实现购买的功能。前台的功能主要包括用户模块、公告消息模块、商城资讯模块、购买模块和个人订单模块。

游戏周边商城的后台中,管理员对用户在前台提交申请产生的数据进行处理,以满足用户的需求。前台系统和后台系统有数据交互,整个系统各个部分相互独立又密不可分。后台的功能主要包括用户管理、商城管理、商城资讯管理、分类管理、商品信息管理、订单管理。

  • 系统设计

(一)功能结构设计

本系统的设计是基于Java技术+Mysql数据库+Tomcat服务器的方式设计,以Myeclipse10为开发工具,并运用Photoshop CS6技术美化网页,辅之以CSS技术。本系统使用的角色主要有系统管理员和普通用户,系统分为前台和后台,前台主要用于商城展示和商品的购买,后台用于商城、资讯、订单、商品信息的管理,首先以普通用户通过账号注册后登录系统前台,可以进行各种信息浏览和搜索,用户可以将需要的商品进行下单购买,用户可以查询订单是否已经被管理员确认,订单生成后表示用户购买成功,用户同时可以修改个人的信息资料,查看订单信息;以管理员的身份登录系统后台可以进行商品维护、订单管理等。

系统功能结构图如下所示。

 

图4-1系统功能结构图

(二)功能设计

1.用户登录模块:确保用户注册信息的真实度是提高系统效率和盈利的重要因素。真实的用户才能带来价值,注册是保证真实用户使用系统主要业务的第一步,通过对用户注册信息的审核,可防止机器注册。使用现如今较为流行的管理员进行账号激活的验证方式,对用户注册信息进行过滤,未激活用户信息将不能使用系统主要功能。

如下图所示为用户登录流程图。

 

                                                   图4-2用户登录流程图

2.商城资讯浏览模块:没有登录的用户和登录的用户都可以在系统前台进行商城资讯浏览,用户可以查看商城资讯的详细信息,用户还可以通过商城资讯名称的关键字进行搜索。

如下图所示为商城资讯浏览流程图。

 

                                                   图4-3商城资讯浏览流程图

3.订单管理模块:用户购买商品后,填写收货地址、收货人、电话等信息,生成订单信息,管理员可以审核订单,删除、修改订单,对订单信息进行相应的物流信息。 

如下图所示为订单管理流程图。

 

                                                       图4-4订单管理流程图

4.商城资讯管理模块

系统管理员可以对商城资讯信息进行增、删、改、查的操作。

5.用户管理模块

系统管理员可以对用户信息进行增、删、改、查的操作。

6.订单模块

用户对个人添加至购买订单里面的商品进行增删改查等操作。

(三)数据库设计

3.1概念设计

本系统的E-R图表现了系统中各个实体之间的联系,经过分析,系统的实体有商城活动、优惠券领取、订单中心、充值中心、物流信息等。

订单信息的实体图如下图所示。

 

图4-6订单信息实体图

用户信息实体图如下图所示。

 

图4-7用户信息实体图

商品信息的实体图如下图所示。

 

图4-8商品信息实体图

订单E-R图如下图所示。

              

 

                                                      图4-9订单E-R图

3.2逻辑设计

Allusers表是系统用户的信息表,存储系统用户真实姓名、性别、年龄、电话、地址、备注、编号、姓名、用户密码以及其相对应的密码等相关信息。

Dingdan表是订单信息表,存储用户的订单的相关信息,其中包括订单号、金额、订单内容、用户名、姓名、邮件地址、邮编、手机、添加时间、是否审核等相关信息。

yonghuzhuce表是用户注册信息表,存储用户的注册信息,其中包括编号、用户名、密码、姓名、性别、出生年月、QQ、邮箱、电话、身份证、头像、地址、备至、折扣等相关信息。

shangpinxinxi表是商品信息表,存储商品内容的信息,其中包括标题、类别、价格、库存、图片、描述、添加时间等相关信息。

3.3表设计

    数据库表设计:经过前期的需求分析、可执行分析、数据流分析等各个流程分析,结合软件工程的高内聚、低耦合规则,并考虑到以后的程序功能扩展,设计如下几张表

名称

类型

长度

不是null

主键

注释

goods_id

mediumint

8

产品id

title

varchar

125

标题

img

text

0

封面图

description

varchar

255

描述

price_ago

double

8

原价:[1]

price

double

8

卖价:[1]

customize_field

text

0

自定义字段

sales

int

10

销量

inventory

int

11

商品库存

type

varchar

64

商品分类:

hits

int

10

点击量

content

longtext

0

正文

create_time

timestamp

0

创建时间:

update_time

timestamp

0

更新时间:

img_1

text

0

主图1:

img_2

text

0

主图2:

img_3

text

0

主图3:

img_4

text

0

主图4:

img_5

text

0

主图5:

source_table

varchar

255

来源表:

source_field

varchar

255

来源字段:

source_id

int

10

来源ID:

user_id

int

11

添加人

名称

类型

长度

不是null

主键

注释

commodity_management_id

int

11

商品管理ID

remarks

varchar

64

备注

recommend

int

11

智能推荐

cart_title

varchar

125

标题

cart_img

text

0

封面图

cart_description

varchar

255

描述

cart_price_ago

double

8

原价

cart_price

double

8

卖价

cart_inventory

int

11

商品库存

cart_type

varchar

64

商品分类:

cart_content

longtext

0

正文

cart_img_1

text

0

主图1:

cart_img_2

text

0

主图2:

cart_img_3

text

0

主图3:

cart_img_4

text

0

主图4:

cart_img_5

text

0

主图5:

create_time

datetime

0

创建时间

update_time

timestamp

0

更新时间

名称

类型

长度

不是null

主键

注释

type_id

int

11

商品分类ID:

father_id

smallint

5

上级分类ID

name

varchar

255

商品名称:

desc

varchar

255

描述:

icon

varchar

255

图标:

source_table

varchar

255

来源表:

source_field

varchar

255

来源字段:

create_time

timestamp

0

创建时间:

update_time

timestamp

0

更新时间:

名称

类型

长度

不是null

主键

注释

address_id

int

11

收货地址:

name

varchar

32

姓名:

phone

varchar

13

手机:

postcode

varchar

8

邮编:

address

varchar

255

地址:

user_id

mediumint

8

用户ID

create_time

timestamp

0

创建时间:

update_time

timestamp

0

更新时间:

default

tinyint

1

默认判断

名称

类型

长度

不是null

主键

注释

order_id

int

11

订单ID:

order_number

varchar

64

订单号:

goods_id

mediumint

8

商品id

title

varchar

32

商品标题:

img

varchar

255

商品图片:

price

double

10

价格:

price_ago

double

10

原价:

num

int

8

数量:

price_count

double

8

总价:

norms

varchar

255

规格:

type

varchar

64

商品分类:

contact_name

varchar

32

联系人姓名:

contact_email

varchar

125

联系人邮箱:

contact_phone

varchar

11

联系人手机:

contact_address

varchar

255

收件地址:

postal_code

varchar

9

邮政编码:

user_id

int

10

买家ID:

merchant_id

mediumint

8

商家ID:

create_time

timestamp

0

创建时间:

update_time

timestamp

0

更新时间:

description

varchar

255

描述

state

varchar

16

订单状态

  • 系统实现
  • 用户登录的实现

用户注册完成后,点击“登陆”进入到登陆页面,输入用户名和密码,点击“登陆”按钮,对用户名和密码进行验证,根据传入的用户名和密码在数据库中是否能查询到一条用户信息,若不能返回用户信息则登陆失败,页面提示用户名或密码错误。

登陆拦截管理器,在config文件夹下的WebAppConfig.java文件,代码如下:

@Configuration

@Slf4j

public class WebAppConfig implements WebMvcConfigurer {

    @Override

    public void addInterceptors(InterceptorRegistry registry) {

        //登录拦截的管理器

        InterceptorRegistration registration = registry.addInterceptor(loginInterceptor());

        //拦截的地址

        registration.addPathPatterns("/**");

        //方行的地址

//registration.excludePathPatterns("/**");

        //根据需要拦截,一般设置所有地址拦截,放行公共连接

    }

    @Bean

    public LoginInterceptor loginInterceptor(){

        return new LoginInterceptor();

    }

}

登录界面如下图所示。

 

图5-1登录界面

用户登录的关键代码如下。

/**

     * 登录

     * @param data

     * @param httpServletRequest

     * @return

     */

    @PostMapping("login")

    public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {

        log.info("[执行登录接口]");

        String username = data.get("username");

        String email = data.get("email");

        String phone = data.get("phone");

        String password = data.get("password");

        List resultList = null;

        Map<String, String> map = new HashMap<>();

        if(username != null && "".equals(username) == false){

            map.put("username", username);

            resultList = service.select(map, new HashMap<>()).getResultList();

        }

        else if(email != null && "".equals(email) == false){

            map.put("email", email);

            resultList = service.select(map, new HashMap<>()).getResultList();

        }

        else if(phone != null && "".equals(phone) == false){

            map.put("phone", phone);

            resultList = service.select(map, new HashMap<>()).getResultList();

        }else{

            return error(30000, "账号或密码不能为空");

        }

        if (resultList == null || password == null) {

            return error(30000, "账号或密码不能为空");

        }

        //判断是否有这个用户

        if (resultList.size()<=0){

            return error(30000,"用户不存在");

        }

        User byUsername = (User) resultList.get(0);

  • 系统前台主要功能实现 
  1. 首页的实现

用户界面要尽量简洁大方,使用户能够方便找到需要的功能入口,浏览、购买商品,且要易于修改和维护,同时还要保证用户合法和系统安全。

首页界面如下图所示。

 

图5-2首页界面

  1. 用户注册的实现

用户进入系统首页后,点击“注册”链接进入到注册页面,按照页面提示输入用户名、密码和商品号,页面进行表单验证,验证输入的用户名和商品号是否合法,表单验证通过后,点击“立即注册”按钮,利用 Ajax 技术,对用户名和商品号实现页面无刷新验证,检测数据库中是否已经存在该用户名,若数据库中不存在,则注册成功,注册成功后,自动跳转到登录页面。

用户注册界面如下所示。

 

图5-3用户注册界面

  1. 商城展示的实现

商城展示页面,如下图所示。

 

图5-4商城展示页面

商城展示的关键代码如下。

 @PostMapping("/add")

    @Transactional

    public Map<String, Object> add(HttpServletRequest request) throws IOException {

        service.insert(service.readBody(request.getReader()));

        return success(1);

    }

    @Transactional

    public Map<String, Object> addMap(Map<String,Object> map){

        service.insert(map);

        return success(1);

}

  1. 商城资讯的实现

系统首页提供了商城资讯信息,用户点击浏览,系统传递到后台。首先创建一个实体类 PageBean,该实体类的属性包括页码 pageCode、每页记录数 pageSize、总记录数 totalRecord 和一个 List 集合 beanList,用循环将资讯分页展示。

商城资讯界面如下图所示。

 

图5-5商城资讯界面

商城资讯的关键代码如下。

 @RequestMapping(value = {"/count_group", "/count"})

    public Map<String, Object> count(HttpServletRequest request) {

        Query count = service.count(service.readQuery(request), service.readConfig(request));

        return success(count.getResultList());

}

  1. 商品购买实现

用户在浏览商品时,对于心仪的想要购买的商品,可以将该商品添加到购买订单中。点击“添加购买订单”按钮,页面将该商品的数据传递到后台,首先查询数据库购买订单表中是否已经存在该商品,若存在直接将商品数量加一,若不存在则创建一个新的购买订单对象,添加购买订单成功,数据库中的购买订单表添加一条信息。用户还可以点击“我的购买订单”查看添加到购买订单的商品,系统通过读取 session获取到用户 ID,将用户 ID 传递到后台,在购买订单表中查询该用户的所有购买订单信息,返回数据到我的购买订单页面。

商品购买界面如下图所示。

 

图5-6商品购买界面

支付界面如下图所示。

 

图5-7支付界面

商品购买关键代码:

 @RequestMapping("/get_list")

    public Map<String, Object> getList(HttpServletRequest request) {

        Map<String, Object> map = service.selectToPage(service.readQuery(request), service.readConfig(request));

        return success(map);

}

  • 系统后台主要功能实现 
  1. 用户管理的实现

用户管理界面如下图所示。

 

5-8用户管理界面

  1. 商城资讯管理的实现

管理员可以获取系统中所有商城资讯的列表并对其进行编辑。管理员在添加商城资讯时,需要输入商城资讯标题、文章分类、标签等。添加商城资讯完成,数据库商城资讯表添加一条信息。

商城资讯管理界面如下图所示。

 

图5-9商城资讯管理界面

商城资讯管理关键代码:

  @RequestMapping(value = {"/avg_group", "/avg"})

public Map<String, Object> avg(HttpServletRequest request) {

        Query count = service.avg(service.readQuery(request), service.readConfig(request));

        return success(count.getResultList());

}

  1. 订单管理的实现

管理员在后台管理界面点击到所有订单界面列表,可以搜索当前所有订单信息,调用搜索全部订单的请求,向数据库的订单表搜索当前所有订单并将订单信息以对象的形式层层返回到订单列表界面,显示出当前所有订单信息。同时可以删除过期订单,确认已有订单,进行发货处理。

商品管理界面如下图所示。

 

图5-10商品管理界面

订单列表管理界面如下图所示。

 

图5-11订单列表管理界面

订单列表管理的关键代码如下。

@RequestMapping("/get_obj")

    public Map<String, Object> obj(HttpServletRequest request) {

        Query select = service.select(service.readQuery(request), service.readConfig(request));

        List resultList = select.getResultList();

        if (resultList.size() > 0) {

            JSONObject jsonObject = new JSONObject();

            jsonObject.put("obj",resultList.get(0));

            return success(jsonObject);

        } else {

            return success(null);

        }

}

 public Query select(Map<String,String> query,Map<String,String> config){

        StringBuffer sql = new StringBuffer("select ");

        sql.append(config.get(FindConfig.FIELD) == null || "".equals(config.get(FindConfig.FIELD)) ? "*" : config.get(FindConfig.FIELD)).append(" ");

        sql.append("from ").append("`").append(table).append("`").append(toWhereSql(query, "0".equals(config.get(FindConfig.LIKE))));

        if (config.get(FindConfig.GROUP_BY) != null && !"".equals(config.get(FindConfig.GROUP_BY))){

            sql.append("group by ").append(config.get(FindConfig.GROUP_BY)).append(" ");

        }

        if (config.get(FindConfig.ORDER_BY) != null && !"".equals(config.get(FindConfig.ORDER_BY))){

            sql.append("order by ").append(config.get(FindConfig.ORDER_BY)).append(" ");

        }

        if (config.get(FindConfig.PAGE) != null && !"".equals(config.get(FindConfig.PAGE))){

            int page = config.get(FindConfig.PAGE) != null && !"".equals(config.get(FindConfig.PAGE)) ? Integer.parseInt(config.get(FindConfig.PAGE)) : 1;

            int limit = config.get(FindConfig.SIZE) != null && !"".equals(config.get(FindConfig.SIZE)) ? Integer.parseInt(config.get(FindConfig.SIZE)) : 10;

            sql.append(" limit ").append( (page-1)*limit ).append(" , ").append(limit);

        }

        log.info("[{}] - 查询操作,sql: {}",table,sql);

        return runEntitySql(sql.toString());

    }

  • 系统测试
  • 系统可靠性测试

以进入系统首页的访问速度为例展示系统的性能测试;系统的主要用户群体是购物理念较为先进的消费者,系统要在3秒钟内响应;需要完成页面的菜单栏、商城活动、游戏资讯、优惠券领取、订单中心以及各功能模块入口等元素的显示。

  • 系统功能性测试

功能性测试是指执行指定的工作流程,通过对一个系统的所有特性和功能都进行测试确保符合需求和规范。

系统功能性测试表如下表所示。

11系统功能性测试表

编号

测试功能

测试内容

测试结果

1

用户登录

1.验证用户名与密码的正确性。

2.验证密码是否可见。

通过

2

首页展示

1.首页数据是否成功加载。

2.验证搜索功能的准确性。

3.验证是否可以异步加载。

4.验证导航栏按钮。

通过

3

个人信息修改

1.验证登录名是否可以正常更改。

2.验证联系方式是否可以更改。

3.验证收货地址可以正常修改。

4.验证密码是否可以修改。

通过

4

购买管理

1.购买订单清单是否可以生成。

2.验证消费信息是否准确。

通过

7

商品管理

1.验证类目新增是否可以成功。

2.验证类目删除是否可以成功。

通过

8

商城管理

1.商城信息是否与上传一致。

2.是否能完成活动修改。

3.验证活动商品信息修改。

通过

9

订单处理

1.能否正常上传单号完成发货。

2.验证数据准确性。

通过

10

用户管理

1.验证用户录入功能。

2.验证用户违规清理功能。

通过

  • 系统合格性测试

集成测试后,所有的模块已经全部连接完毕,形成了一个完整的系统。合格性测试是在集成测试完毕后,进一步对系统进行综合性的检测。经过合格性测试,可以检查出系统是否符合系统的设计,能够完成需求的所有功能。本系统经过最后的测试,所有模块功能都能按预定要求工作。

  • 测试结果

在实际测试中,经过一系列系统性的测试,使我们能够及时发现一些系统在设计中出现的疏忽和漏洞。经过严密的测试,不仅发现了模块内部的错误,也查找到模块连接后产生的错误。经过测试,对系统产生错误的地方进行优化、修改和完善,使得系统能够实现最初设计的基本功能。

  • 总结与展望

本文针对游戏周边商城的特点和用户需求,利用 Java相关技术、Springboot框架和MVVM 模式等技术,通过详细的需求分析、页面设计和功能设计,最终实现了一个基于 Java 的游戏周边商城。

系统利用JQuery 技术和 CSS 技术进行了系统页面设计,实现了包括用户模块、商城模块、商品模块、购买订单模块和前台系统以及包括用户管理模块、商品管理模块、订单管理模块的后台系统。另外,系统还进行了数据安全设计和商品信息推荐模块设计,并添加了用户的访问控制,建立了一个完整、健壮、安全稳定的游戏周边商城。

由于时间限制和本人能力条件有限,该系统还存在一些不足,今后也会出现许多新的开发技术,未来还可以对系统做出如下改进:

(1)优化系统页面,使页面更加美观且方便操作;

(2)优化商品搜索功能,提供多条件选择查询搜索;

(3)优化商品推荐功能,提高商品推荐的精准度;

(4)优化在线支付功能,提供更多支付接口,使用户付款更加方便;

(5)进一步提高系统的安全性,使系统更加健壮;

(6)优化数据和代码,提升软件效率,方便系统维护和扩展。

参考文献

  1. 杨文豪. 基于微服务的网上商城系统的设计与实现[D].北京邮电大学,2021.
  2. [2]程红琳. 网上商城品目扩容效果几何[N]. 中国政府采购报,2021-05-18(005).
  3. 魏钢毅. 从“一品目一采购”到供应商承诺入驻[N]. 中国政府采购报,2021-05-11(005).
  4. [4]王娟.基于Android系统的手机网上商城设计与实现[J].电子技术与软件工程,2021(03):43-44.
  5. 裴来芝,宁云智,刘东海.基于ASP.NET的网上商城中用户注册功能模块设计与实现[J].电脑编程技巧与维护,2020(10):44-46.
  6. [6]袁江琛.Ajax+jQuery在网上商城购物车模块中的设计与实现[J].电脑编程技巧与维护,2020(10):34-35+68.

[7]王柯梦,王瑞平.基于B2C网上商城前台系统数据库设计与实现[J].广西质量监督导报,2020(09):70-71.

[8]黄舒珣. 基于文本挖掘的迪卡侬网上商城顾客满意度影响因素研究[D].广西民族大学,2020.

[9]孙建英.分布式、集中式、区块链技术在网上商城中的应用[J].商场现代化,2020(01):13-15.

[10]李贝贝. 考虑策略型消费者的网上商城动态定价研究[D].大连大学,2019.

[11]王一凡. 基于MOT的云南移动网上商城O2O手机营销策略优化研究[D].云南大学,2019.

[12]袁嘉. 零售商多渠道供应链的定价决策与渠道选择[D].重庆交通大学,2019.

[13]徐光耀. 基于Dubbo分布式架构网上商城的研究与实现[D].沈阳师范大学,2019.

[14]刘芳羽.新华书店“网上商城”上线运营[J].时尚北京,2018(06):158-159.

                                              致谢

时光飞逝,转眼间我在学校的这些年生活即将结束,回顾这几年的学习生活,收获良多,既有幸福也有难过,学校生活的结束对于我来说也是一个新的开始。论文即将完成,在此,我心中有许多想要感谢的人。首先感谢我的导师,不仅在学习研究方面加以指导,也在生活和为人处世上给予帮助。还要感谢授课老师,你们严谨的学术精神和积极向上的工作态度都在激励我的成长和进步。感谢多年来一直生活在一起的室友,谢谢你们多年来的陪伴和照顾。最后,要感谢各位论文评审老师,感谢您们在百忙之中抽空评阅本论文并给出宝贵的意见和建议。

点赞+收藏+关注 → 私信领取本源代码、数据库
 

Supongo que te gusta

Origin blog.csdn.net/weixin_61498557/article/details/131102442
Recomendado
Clasificación