ssm+mysql+Projeto de graduação do sistema de gerenciamento de recursos humanos baseado na estrutura SSM - com código-fonte 060936

SSM Sistema de Gestão de Recursos Humanos

Resumo

O rápido desenvolvimento do progresso científico e tecnológico causou grandes mudanças na vida cotidiana das pessoas, e o rápido desenvolvimento da tecnologia da informação eletrônica tornou o nível de aplicação da tecnologia da informação eletrônica em vários campos popularizado e aplicado. A chegada da era da informação tornou-se uma tendência irresistível da moda e a história do desenvolvimento humano está entrando em uma nova era. Na aplicação real, as regras de trabalho e as etapas de desenvolvimento do software aplicativo são usadas para construir o esquema de segurança do sistema de gerenciamento de recursos humanos usando a tecnologia Java.

Este projeto realiza principalmente a solução de segurança do sistema de gerenciamento de recursos humanos integrando as vantagens de humanização, alta eficiência e conveniência, e completa os módulos funcionais, como página inicial, gerenciamento de usuários, informações de departamento, informações de treinamento, informações salariais e informações de funcionários. O sistema se comunica com o servidor por meio do navegador para realizar a interação e alteração dos dados. O sistema melhora a eficiência do trabalho e reduz erros e omissões no armazenamento de dados por meio de métodos de gerenciamento científico e serviços convenientes. A solução de segurança do sistema de gestão de recursos humanos usa a linguagem Java e é desenvolvida usando a tecnologia Java baseada no modelo MVVM. É escrita usando o compilador MyEclipse 2017 CI 10. Em termos de dados, usa principalmente o banco de dados relacional MySQL da Microsoft como armazenamento de dados medium, e coopera com a tecnologia front-end HTML + CSS completa o desenvolvimento do sistema.

Palavras-chave: esquema de segurança; linguagem Java; banco de dados relacional; armazenamento de dados

SSM sistema de gerenciamento de recursos humanos

Abstrato

O rápido desenvolvimento do progresso científico e tecnológico tem causado grandes mudanças no cotidiano das pessoas. O rápido desenvolvimento da tecnologia da informação eletrônica popularizou e aplicou o nível de aplicação da tecnologia da informação eletrônica em vários campos. O advento da era da informação tornou-se uma tendência irresistível da moda e a história do desenvolvimento humano está entrando em uma nova era. Na aplicação prática, de acordo com as regras de trabalho e as etapas de desenvolvimento do software aplicativo, a tecnologia Java é usada para construir o esquema de segurança do sistema de gerenciamento de recursos humanos.

Este projeto realiza principalmente o esquema de segurança do sistema de gerenciamento de recursos humanos, integrando as vantagens de humanização, alta eficiência e conveniência, e completa os módulos funcionais, como página inicial, gerenciamento de usuários, informações de departamento, informações de treinamento, informações de salário e informações de funcionários. O sistema se comunica com o servidor através do navegador para realizar a interação e alteração dos dados. Por meio de gerenciamento científico e serviço conveniente, o sistema melhora a eficiência do trabalho e reduz erros e omissões no armazenamento de dados. O esquema de segurança do sistema de gerenciamento de recursos humanos usa a linguagem Java e a tecnologia Java baseada no modo MVVM. Ele é escrito com o compilador MyEclipse 2017 CI 10. Em termos de dados, o banco de dados relacional MySQL da Microsoft é usado principalmente como meio de armazenamento de dados,

Palavras-chave: esquema de segurança; linguagem Java; Banco de dados relacional; armazenamento de dados

Índice

Capítulo 1 Introdução

1.1  Histórico de Pesquisa

1.2  Estado de Desenvolvimento

1.3  Estrutura organizacional deste artigo

Capítulo 2 Introdução às tecnologias relacionadas

2.1 Estrutura SSM

2.2 Introdução ao Java

2.3 banco de dados MySQL

2.4 Estrutura B/S

2.5 Ferramentas de Desenvolvimento MyEclipse

2.6 Principais funções do Vue.js

Capítulo 3 Análise do Sistema

3.1  Análise de viabilidade

3.1.1  Análise de Viabilidade Técnica

3.1.2  Análise de Viabilidade Econômica

3.1.3  Análise de Viabilidade da Operação

3.2  Análise de Requisitos Funcionais

3.3  Análise de requisitos não funcionais 7

3.4  Análise de Fluxo de Dados 7

Capítulo 4 Projeto do sistema 8

4.1  Projeto da arquitetura do sistema 8

4.2  Estrutura de função do sistema 8

4.3 Projeto  de banco de dados

4. 3 .1  Modelo conceitual

4. 3 .3  Folha de dados

Capítulo 5 Implementação do sistema

5.1  Implementação do módulo de login

5.2 Realização do módulo de função administrador 1  9

5.3  Implementação do módulo de subsistema administrador

Capítulo 6 Teste do sistema 2 4

6.1  Finalidade do teste 2 4

6.2  Processo de teste 2 4

6.3  Resultados do teste 2 5

Capítulo 7 Resumo e Perspectivas 2 6

Referências 2 7

Obrigado 2 9

  1. introdução
    1. Histórico de pesquisa

A fim de melhorar a eficiência do gerenciamento de funcionários, reduzir despesas desnecessárias e facilitar a equipe de gerenciamento de pessoal para compreender totalmente a situação básica dos resultados do pessoal da empresa. Portanto, é muito importante projetar e desenvolver um sistema de gerenciamento de recursos humanos empresarial dedicado. No entanto, o desenho específico e a implementação do sistema serão realizados de acordo com a situação de gestão de pessoas de cada empresa. O desenvolvimento do sistema deve primeiro entender as deficiências do sistema existente e fornecer uma solução mais conveniente para o desenvolvimento de um novo sistema, para que o pessoal de gerenciamento possa melhorar a eficiência do trabalho no processo diário de trabalho de gerenciamento e permitir que a empresa os recursos sejam alocados de forma mais eficaz Melhorar o nível de gestão diária da empresa.

De acordo com a situação real atual da empresa, os desenvolvedores usam o equipamento de hardware de computador e as condições de software pertencentes a indivíduos para desenvolver um conjunto completo de sistema de gerenciamento de recursos humanos corporativos para obter algumas informações pessoais básicas da perspectiva do pensamento, pensamento de trabalho e métodos de trabalho .Adicione, exclua e modifique. A fim de reduzir a carga do pessoal de gerenciamento de funcionários, devemos resolver fundamentalmente o problema de carga de trabalho pesada e operação manual propensa a erros.Ao mesmo tempo, essa também é a tendência inevitável de desenvolvimento futuro no campo de gerenciamento de funcionários.

    1. Estado de Desenvolvimento

A história do desenvolvimento do sistema de gerenciamento de recursos humanos da empresa pode ser rastreada até o final dos anos 1960. Como a tecnologia de computador já havia entrado na fase prática naquela época e as grandes empresas consumiam muito tempo, eram trabalhosas e propensas a erros para calcular e pagar salários manualmente, a fim de resolver essa contradição, surgiu a primeira geração do sistema de gerenciamento de recursos humanos empresariais. em ser. Naquela época, devido às limitações de condições e requisitos técnicos, havia muito poucos usuários, e o sistema era, na melhor das hipóteses, uma ferramenta de cálculo automático de salários, que não continha informações não financeiras nem informações históricas de salários e quase nenhuma geração de relatórios .Função de análise de dados de cargos e salários. No entanto, seu surgimento mostrou uma perspectiva brilhante para o gerenciamento de pessoal, ou seja, usando a alta velocidade e automação dos computadores para substituir a enorme carga de trabalho manual, usando a alta precisão dos computadores para evitar erros e erros manuais e tornando centralizada em larga escala processamento de folha de pagamento para grandes corporações tornou possível.

A transformação do sistema de gerenciamento de recursos humanos da empresa apareceu no final da década de 1990. Devido às necessidades da concorrência do mercado, como atrair e reter talentos, estimular a criatividade do pessoal, a responsabilidade e o entusiasmo no trabalho tornaram-se fatores importantes relacionados à ascensão e queda das empresas, e os talentos tornaram-se um dos ativos mais importantes de empreendimentos. O conceito de gestão corporativa "justo, justo e razoável" e a melhoria do nível de gestão corporativa fizeram com que a sociedade tivesse requisitos mais altos para sistemas corporativos de gestão de recursos humanos; ao mesmo tempo, devido à popularidade de computadores pessoais, tecnologia de banco de dados, clientes Tecnologia /servidor, especialmente O desenvolvimento da tecnologia de Internet/Intranet torna inevitável o surgimento do sistema de gerenciamento de recursos humanos corporativos de terceira geração. A característica do sistema de gerenciamento de recursos humanos corporativos de terceira geração é que, do ponto de vista do gerenciamento de pessoal, quase todos os dados relacionados a pessoal (como salário e benefícios, recrutamento, design de carreira pessoal, recompensas e punições, gerenciamento de cargos, gerenciamento de desempenho, etc.), descrições de cargos, informações pessoais e dados históricos) são gerenciados juntos para formar uma fonte de informação integrada. Interface de usuário amigável, poderosas ferramentas de geração de relatórios, ferramentas de análise e compartilhamento de informações permitem que os gerentes de pessoal se livrem do pesado trabalho diário e se concentrem em considerar o planejamento e as políticas de pessoal da empresa de um ponto de vista estratégico.

    1. Organização deste artigo

O primeiro capítulo é a introdução, o início deste artigo, algumas descrições textuais do histórico de pesquisa e significado de pesquisa deste tópico.

O segundo capítulo estuda as técnicas de desenvolvimento e as ferramentas de desenvolvimento utilizadas no esquema de segurança do sistema de gestão de recursos humanos.

O terceiro capítulo é a parte de análise do sistema, incluindo a descrição dos requisitos gerais do sistema, a análise dos requisitos do sistema de um ponto de vista funcional e a análise não funcional de se o sistema pode ser realizado.

O quarto capítulo é a parte do projeto do sistema, uma parte importante deste artigo, que fornece o projeto detalhado da arquitetura do sistema e a descrição do projeto de alguns dos principais módulos funcionais.

O quinto capítulo é a realização específica do sistema, apresentando a realização específica de cada módulo do sistema.

O sexto capítulo testa e executa o sistema com base nos capítulos anteriores.

Finalmente, o sistema é seriamente resumido, de modo a ter uma nova perspectiva para o futuro.

  1. Introdução à tecnologia relacionada
    1. estrutura SSM

O popular "SSM Combination Framework" de hoje é a abreviação de Spring + SpringMVC + MyBatis, que tem sido procurado por muitos. Framework para projetos web, geralmente fontes de dados mais simples. O Spring pertence a uma estrutura leve de inversão de controle (IoC), mas também é um contêiner orientado à superfície (AOP). O SpringMVC é frequentemente usado no modo de trabalho de classificação do controlador, que é separado do objeto do modelo, e a função do objeto do programa é processada com o ATM. Este tratamento de desacoplamento facilita a personalização de todo o sistema. MyBatis é uma boa estrutura de sustentabilidade que oferece suporte a consultas SQL comuns e permite a otimização de dados para mapeamento avançado de procedimentos armazenados. Devido ao alto custo de desenvolvimento de aplicativos Java Web de grande porte, é difícil manter após o desenvolvimento e alguns problemas difíceis de resolver durante o processo de desenvolvimento, e o "SSM Composition Framework" é adotado, o que permite o estabelecimento de hierarquias de negócios e fornece uma boa solução para este problema.

    1. Introdução ao JAVA

Java adota principalmente a tecnologia CORBA e o modelo de segurança, que pode proteger os dados em aplicativos da Internet. Ele também fornece suporte abrangente para EJB (Enterprise JavaBeans), API de servlet java, SSM (páginas de servidor java) e tecnologia XML. A linguagem JAVA é uma linguagem orientada a objetos. Ela fornece os métodos mais básicos para concluir tarefas específicas. Os desenvolvedores precisam apenas conhecer alguns conceitos para escrever alguns aplicativos. Os programas Java são relativamente pequenos e seu código pode ser executado em máquinas pequenas. Java é uma linguagem de programação de computadores com três características principais de encapsulamento, herança e polimorfismo, amplamente utilizada no desenvolvimento de aplicativos da Web corporativos e no desenvolvimento de aplicativos móveis.

A diferença entre a linguagem Java e os compiladores gerais e a tradução literal é que o Java primeiro converte o código-fonte em bytecode e depois o converte em um arquivo executável para a JVM, que pode ser executado em várias JVMs. Portanto, suas características de plataforma cruzada são realizadas. Embora isso tenha tornado o Java muito lento em seus primeiros dias, ele melhorou à medida que o Java foi desenvolvido.

    1. banco de dados MySQL

O avanço da ciência e da tecnologia trouxe muitas facilidades para a vida cotidiana: projetores de sala de aula usam tecnologia de imagem virtual, câmeras digitais usam tecnologia de detecção fotoelétrica, por exemplo, os registros de entrada e saída de mercadorias nos armazéns de supermercados exigem um armazém de informações. Esse armazém de informações é o banco de dados e, desta vez, a solução de segurança do sistema de gerenciamento de recursos humanos também precisa do suporte dessa tecnologia.

A razão para usar o software MySQL é que ele pode ser acessado por vários usuários e contém arquivos, etc. Ele classificará os dados primeiro e depois os armazenará em tabelas separadamente.Essas operações especiais melhorarão a velocidade do próprio sistema de gerenciamento de dados, permitindo que o banco de dados seja usado com flexibilidade. O código do MySQL é público e permite que outros o compilem e atualizem duas vezes. Esse recurso pode reduzir o custo dos usuários e formar um bom sistema de site após a correspondência com o software adequado. Embora tenha desvantagens, em todos os aspectos, é a aplicação mainstream dos usuários [8].

    1. estrutura B/S

B/S (Browser/Server) é uma arquitetura mais conveniente do que sua arquitetura predecessora. Ele usa o servidor Web para concluir a transferência e troca de dados. Você só precisa baixar o navegador como cliente, então o trabalho alcançará o efeito de "emagrecimento", e não há necessidade de considerar o problema da instalação ininterrupta do software [9].

    1. MyEclipseFerramentas de Desenvolvimento

MyEclipse é desenvolvido pela Genuitec, um ambiente de desenvolvimento integrado JavaEE muito poderoso, incluindo: funções completas de codificação, depuração, teste e publicação [10], suporte completo para JSP, Spring, CSS, JavaScript, SpringMVC, HTML, JSF, Mybatis, SQL e outras tecnologias. Em termos de arquitetura, os recursos do MyEclipse podem ser divididos em sete categorias: modelo JavaEE; ferramentas de desenvolvimento Web, ferramentas de desenvolvimento EJB, serviços de implantação de projetos JavaEE, conectores para servidores de aplicativos, serviços de banco de dados e ajuda na integração do MyEclipse [11].

Para cada uma das categorias funcionais acima, existem partes funcionais correspondentes no MyEclipse, e elas são realizadas por meio de uma série de plug-ins. A estrutura modular do MyEclipse permite expandir e atualizar independentemente qualquer um dos módulos sem afetar outros módulos. A poderosa plataforma de desenvolvimento de aplicativos MyEclipse não é apenas um plug-in do Eclipse, mas também um poderoso ambiente de desenvolvimento integrado para JavaEE [12].

    1.  Principais funções do Vue.js

Vue.js é uma estrutura progressiva para construir interfaces de usuário. Ao contrário de outras estruturas pesadas, o Vue é projetado com desenvolvimento incremental de baixo para cima. A biblioteca principal do Vue se concentra apenas na camada de exibição e é muito fácil de aprender e integrar com outras bibliotecas ou projetos existentes. Por outro lado, o Vue é totalmente capaz de conduzir aplicativos complexos de página única desenvolvidos com componentes de arquivo único e bibliotecas suportadas pelo ecossistema Vue.

O objetivo do Vue.js é permitir ligação de dados responsiva e componentes de visualização compostos com a API mais simples possível .

O próprio Vue.js não é uma estrutura abrangente - ele se concentra apenas na camada de exibição. Portanto, é muito fácil de aprender, muito fácil de integrar com outras bibliotecas ou projetos existentes. Por outro lado, o Vue.js também pode alimentar aplicativos complexos de página única quando usado com ferramentas relacionadas e bibliotecas de suporte.

  1. análise de sistema
    1. Análise de Viabilidade

Este design é baseado no modo B/S, usando tecnologias Java e JSP usando banco de dados MySQL e Myeclipse. A viabilidade geral é dividida nos três aspectos a seguir.

      1. Análise de Viabilidade Técnica

A chamada viabilidade técnica refere-se a se as funções planejadas no estágio inicial podem ser satisfeitas em um tempo limitado. Se haverá problemas que não podem ser resolvidos no desenvolvimento e design. Se o projeto concluído pode ser bem aplicado, se há deficiências, se há grande dificuldade na manutenção posterior. Depois de avaliar o sistema, foi determinado que a tecnologia existente poderia atingir os objetivos. Usando a tecnologia JSP para criar páginas dinâmicas, incorporando padrões de design de baixa dependência, bancos de dados flexíveis e servidores estáveis, a eficiência operacional de todo o sistema é bastante aprimorada. Percebe-se que atingir a meta no nível técnico não é um absurdo.

      1. Análise de Viabilidade Econômica

A maioria das ferramentas usadas no projeto são atualmente de código aberto e gratuitas populares; portanto, no estágio inicial de desenvolvimento, os fundos usados ​​​​para o projeto serão bastante reduzidos e o desenvolvimento do software não será afetado pelos fundos durante o período de start-up do projeto, por isso ainda é economicamente viável. Tente usar o menor custo para atender às necessidades dos usuários. Economize fundos para custos de mão de obra e custos de equipamentos. Ele irá cada vez mais longe no caminho da alta eficiência e sem papel.

      1. Análise de Viabilidade Operacional

A operação deste sistema para realizar a função é muito simples. A configuração comum de computadores comuns pode executar este software e, desde que você tenha uma compreensão aproximada do senso comum básico de uso do computador, poderá usar este software sem problemas. O computador tem a capacidade de se conectar à Internet e pode acessar o sistema normalmente. Não exige que o operador tenha nenhuma habilidade superior. Ele só precisa entender o processo de negócios e operar corretamente de acordo com o conhecimento profissional. Portanto, a solução de segurança do sistema de gestão de recursos humanos é operacional e viável.

    1. Análise de Requisitos Funcionais

Antes do desenvolvimento e design do sistema, você deve fazer uma ideia preliminar das funções, saber quais seções o sistema de gerenciamento possui, quais funções cada seção possui, se o design geral atende às necessidades dos usuários e, em seguida, realizar uma análise detalhada e um resumo das funções do sistema desenvolvido, de modo a projetar um sistema completo e implementá-lo. Análise de comunicação de usuários e desenvolvedores para alcançar o melhor entendimento e fazer o sistema funcionar da melhor forma.

O diagrama de caso de uso do administrador é mostrado abaixo.

 

Figura 3-1 Diagrama de caso de uso do administrador

O diagrama de caso de uso empregado é mostrado abaixo.

 

Figura 3-2 Diagrama de caso de uso do usuário

Depois de analisar os requisitos da solução de segurança do sistema de gerenciamento de recursos humanos, todo o sistema é dividido principalmente em duas partes: administradores e funcionários, e as funções de ramificação de cada módulo são diferentes. Descreva a função da seguinte forma:

Módulo de equipe:

Autenticação de login da conta.

Gerenciar informações de perfil, modificar itens de informações modificáveis.

Consulta de treinamento de funcionários e, ao mesmo tempo, visualizar o histórico de registros de treinamento.

Consulte o salário do funcionário e, ao mesmo tempo, verifique o histórico dos registros salariais existentes.

Módulo administrativo:

Mantenha os funcionários, revise as contas dos funcionários, congele as permissões de login dos funcionários ou exclua as contas dos funcionários.

Publique anúncios e pode destruir um anúncio, atualizar dados de anúncio, dados de anúncio de pesquisa difusa, etc.

Gerenciar dados de treinamento de funcionários.

    1. Análise de Requisitos Não Funcionais

Existem muitos requisitos não funcionais do sistema, como requisitos de desempenho, número máximo de usuários que podem ser transportados, estabilidade e requisitos de usabilidade. A análise deste sistema leva em consideração o requisito de facilidade de uso, pois o sistema é utilizado por pessoas, portanto é necessário considerar totalmente a experiência do usuário do ponto de vista do usuário, para que o sistema seja fácil de entender, fácil de usar e fácil de operar.

    1. Análise de Fluxo de Dados

O fluxograma de dados de primeiro nível inclui módulos como login, função de usuário e manutenção de recuperação. Os dados usados ​​no módulo de login armazenam documentos de conta de usuário e o armazenamento exigido pelo módulo de função de usuário é o arquivo de dados de cada módulo de função de usuário A manutenção de recuperação usa os documentos de dados acima são recuperados por palavras-chave.

O diagrama de fluxo de dados camada por camada do sistema é mostrado na figura abaixo.

 

Figura 3-2 Diagrama de fluxo de dados do sistema (uma camada)

  1. projeto de sistema
    1. Projeto de arquitetura do sistema

Atualmente, o principal método de acesso a dados do sistema B/S é: o usuário pode entrar no sistema através da página do navegador e o sistema pode processar automaticamente a solicitação enviada pelo usuário ao servidor. A solicitação de processamento é realizada em o plano de fundo do sistema. Execute as operações correspondentes na página e você poderá ver os resultados do processamento entregues pelo servidor. O esquema de segurança do sistema de gerenciamento de recursos humanos é dividido principalmente em três camadas de design de arquitetura de controle de modelo de exibição. Na camada de visualização, opera principalmente os dados realimentados e exibidos do servidor para o cliente. Na camada de modelo, lida principalmente com a lógica de negócios relacionada, integração de dados etc., e a camada de controle final fica entre a visualização e o modelo. É ajustar a relação entre as duas camadas e, finalmente, implementar a transmissão de dados.

O diagrama da arquitetura do sistema é mostrado na figura abaixo.

 

Figura 4-1 Diagrama de arquitetura do sistema

    1. Estrutura de função do sistema

O objetivo do projeto do sistema é analisar todas as estruturas funcionais incluídas no sistema e fazer os preparativos para que os desenvolvedores projetem, desenvolvam e implementem o sistema. Após a investigação preliminar da demanda, análise e classificação, a demanda geral determinada inclui principalmente vários módulos, a saber: gerenciamento de usuários, gerenciamento de usuários, informações de departamento, informações de treinamento, informações salariais, informações de funcionários. A função geral do sistema é dividida em duas partes, uma é o funcionário e a última é o administrador. A distribuição de autoridade também é óbvia. Além de navegar pelas informações, os funcionários também têm a capacidade de consultar e gerenciar as informações de sua própria conta, e os administradores são os proprietários de maior autoridade.

O diagrama de estrutura funcional do sistema é mostrado na figura abaixo.

             

 

Figura 4-2 Diagrama da estrutura da função do sistema

 

    1. Projeto de banco de dados
      1. modelo conceitual

Para que um sistema seja desenvolvido, os diagramas ER permitem que outras pessoas entendam as transações do sistema e as relações entre elas de maneira mais rápida e fácil. De acordo com as conclusões tiradas no estágio de análise do sistema, é determinado que existem várias entidades no esquema de segurança do sistema de gerenciamento de recursos humanos, que são informações de funcionários, informações de departamento, informações de treinamento, informações de salário e informações de funcionários.

O diagrama ER geral do sistema é mostrado na figura abaixo.

 

      1. Ficha de dados

A estrutura lógica do banco de dados é descrever o diagrama ER no banco de dados com campos específicos. Use campos e descrições de tipo de dados para materializar as características do objeto e, finalmente, formar uma estrutura de tabela de banco de dados com certos relacionamentos lógicos. Parte da tabela de estrutura de dados exigida pela solução de segurança do sistema de gerenciamento de recursos humanos é mostrada na tabela a seguir.

ordinários_usuários

Nome do campo

tipo

comprimento

não nulo

chave primária

descrição do campo

ordinário_users_id

int

11

não

chave primária

ID de usuário comum

nome de usuário

varchar

64

sim

nome de usuário

nome completo

varchar

64

sim

Nome

gênero

varchar

64

sim

gênero

idade

varchar

64

sim

idade

examine_state

varchar

16

não

Status de aprovação

recomendar

int

11

não

Recomendação Inteligente

ID do usuário

int

11

não

ID do usuário

tempo_de_criação

data hora

0

não

tempo de criação

tempo de atualização

carimbo de data/hora

0

não

tempo de atualização

departamento_informação

Nome do campo

tipo

comprimento

não nulo

chave primária

descrição do campo

departamento_informação_id

int

11

não

chave primária

ID de informações do departamento

Nome do departamento

varchar

64

sim

Nome do departamento

capa_departamento

varchar

255

sim

capa do departamento

Endereço do escritório

varchar

64

sim

Endereço do escritório

escopo_da_responsabilidade

varchar

64

sim

Responsabilidade

minister_name

varchar

64

sim

nome do ministro

número de contato

varchar

64

sim

número de contato

recomendar

int

11

não

Recomendação Inteligente

tempo_de_criação

data hora

0

não

tempo de criação

tempo de atualização

carimbo de data/hora

0

não

tempo de atualização

informação do empregado

Nome do campo

tipo

comprimento

não nulo

chave primária

descrição do campo

empregado_informação_id

int

11

não

chave primária

ID de informações do funcionário

número de empregado

int

11

não

ID do Empregado

nome do empregado

varchar

64

sim

nome do empregado

empregado_sexo

varchar

64

sim

sexo do funcionário

empregado_idade

varchar

64

sim

idade do empregado

funcionário_departamento

varchar

64

sim

departamento de funcionários

funcionário_posição

varchar

64

sim

posição dos funcionários

data de entrada

data

0

sim

Data de entrada

recomendar

int

11

não

Recomendação Inteligente

tempo_de_criação

data hora

0

não

tempo de criação

tempo de atualização

carimbo de data/hora

0

não

tempo de atualização

ordinários_usuários

Nome do campo

tipo

comprimento

não nulo

chave primária

descrição do campo

ordinário_users_id

int

11

não

chave primária

ID de usuário comum

número de empregado

varchar

64

não

ID do Empregado

nome do empregado

varchar

64

sim

nome do empregado

empregado_sexo

varchar

64

sim

sexo do funcionário

empregado_idade

varchar

64

sim

idade do empregado

examine_state

varchar

16

não

Status de aprovação

recomendar

int

11

não

Recomendação Inteligente

ID do usuário

int

11

não

ID do usuário

tempo_de_criação

data hora

0

não

tempo de criação

tempo de atualização

carimbo de data/hora

0

não

tempo de atualização

salário_informações

Nome do campo

tipo

comprimento

não nulo

chave primária

descrição do campo

salário_informação_id

int

11

não

chave primária

Identificação de informações salariais

número de empregado

int

11

não

ID do Empregado

nome do empregado

varchar

64

sim

nome do empregado

funcionário_departamento

varchar

64

sim

departamento de funcionários

salário básico

int

11

sim

salário base

bônus

int

11

sim

bônus

multar

int

11

sim

multar

salário líquido

varchar

64

sim

salário real

recomendar

int

11

não

Recomendação Inteligente

tempo_de_criação

data hora

0

não

tempo de criação

tempo de atualização

carimbo de data/hora

0

não

tempo de atualização

treinamento_informação

Nome do campo

tipo

comprimento

não nulo

chave primária

descrição do campo

training_information_id

int

11

não

chave primária

ID de informações de treinamento

training_name

varchar

64

sim

nome do treinamento

data_treinamento

data

0

sim

data de treinamento

endereço_de_treinamento

varchar

64

sim

Endereço de treinamento

host_treinamento

varchar

64

sim

moderador de treinamento

observações

varchar

64

sim

Observação

conteúdos de formação

texto longo

0

sim

conteúdos de formação

recomendar

int

11

não

Recomendação Inteligente

tempo_de_criação

data hora

0

não

tempo de criação

tempo de atualização

carimbo de data/hora

0

não

tempo de atualização

carregar

Nome do campo

tipo

comprimento

não nulo

chave primária

descrição do campo

upload_id

int

11

não

chave primária

Carregar ID

nome

varchar

64

sim

nome do arquivo

caminho

varchar

255

sim

caminho de acesso

arquivo

varchar

255

sim

caminho de arquivo

mostrar

varchar

255

sim

Ordem de exibição

id_pai

int

11

sim

ID pai

dir

varchar

255

sim

pasta

tipo

varchar

32

sim

tipo de arquivo

  1. Implementação de sistema
    1. 登录模块的实现

系统的登录窗口是用户的入口,用户只有在登录成功后才可以进入访问。通过在登录提交表单,后台处理判断是否为合法用户,进行页面跳转,进入系统中去。

登录合法性判断过程:用户输入账号和密码后,系统首先确定输入输入数据合法性,然后在login.jsp页面发送登录请求,调用src下的mainctrl类的dopost方法来验证。

用户登录模块的IPO如下所示:

输入:用户名和密码。

处理:

1)检测用户输入的账号、密码是否正确及在数据库已对应存在。

2)从数据库中提取记录,并储存在本地的session中(timeout默认=30min)。

3)根据用户名,将其显示在系统首页上。

输出:是否成功的信息。

登录流程图如下所示。

 

图5-1登录流程图       

系统登录界面如下所示。

 

图5-2系统登录界面

用户登录的逻辑代码如下。

  /**

     * 登录

     * @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;

        QueryWrapper wrapper = new QueryWrapper<User>();

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

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

            map.put("username", username);

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

        }

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

            map.put("email", email);

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

        }

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

            map.put("phone", phone);

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

        }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);

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

        groupMap.put("name",byUsername.getUserGroup());

        List groupList = userGroupService.selectBaseList(userGroupService.select(groupMap, new HashMap<>()));

        if (groupList.size()<1){

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

        }

        UserGroup userGroup = (UserGroup) groupList.get(0);

        //查询用户审核状态

        if (!StringUtils.isEmpty(userGroup.getSourceTable())){

            String res = service.selectExamineState(userGroup.getSourceTable(),byUsername.getUserId());

            if (res==null){

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

            }

            if (!res.equals("已通过")){

                return error(30000,"该用户审核未通过");

            }

        }

        //查询用户状态

        if (byUsername.getState()!=1){

            return error(30000,"用户非可用状态,不能登录");

        }

        String md5password = service.encryption(password);

        if (byUsername.getPassword().equals(md5password)) {

            // 存储Token到数据库

            AccessToken accessToken = new AccessToken();

            accessToken.setToken(UUID.randomUUID().toString().replaceAll("-", ""));

            accessToken.setUser_id(byUsername.getUserId());

            tokenService.save(accessToken);

            // 返回用户信息

            JSONObject user = JSONObject.parseObject(JSONObject.toJSONString(byUsername));

            user.put("token", accessToken.getToken());

            JSONObject ret = new JSONObject();

            ret.put("obj",user);

            return success(ret);

        } else {

            return error(30000, "账号或密码不正确");

        }

}

    public String 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 sql.toString();

}

    public List selectBaseList(String select) {

        List<Map<String,Object>> mapList = baseMapper.selectBaseList(select);

        List<E> list = new ArrayList<>();

        for (Map<String,Object> map:mapList) {

            list.add(JSON.parseObject(JSON.toJSONString(map),eClass));

        }

        return list;

}

    1. 管理员功能模块

系统呈现出一种简洁大方的首页:界面简约、鳞次栉比,用户能轻车熟路的使用。出于对系统使用群体广泛的顾虑,应有良好性能的后台。

如下图所示为系统的首页界面。

 

图5-3系统首页界面

其中载入前台页面的主要代码如下。

<mapper namespace="com.project.demo.dao.base.BaseMapper">

    <select id="selectBaseList" resultType="java.util.LinkedHashMap">

        ${select}

    </select>

    <select id="selectBaseCount" resultType="Integer">

        ${count}

    </select>

    <select id="selectBaseOne" resultType="Object">

        ${select}

    </select>

    <update id="updateBaseSql">

        ${sql}

    </update>

    <delete id="deleteBaseSql">

        ${sql}

    </delete>

</mapper>

管理员登录进入人力资源管理系统可以查看管理员:首页、用户管理、部门信息、培训信息、薪资信息、员工信息管理等内容,如图5-4所示。

 

图5-4管理员信息界面图

用户管理,在用户管理可以查看用户账号、姓名、头像、联系电话、邮箱等信息,并可根据需要进行修改或删除操作,如图5-5所示。

 

图5-5企业管理界面图

部门信息管理,在部门信息列表可以查看部门名称、部门封面、办公地址、负责范围、部长名称、联系电话等信息,并可根据需要进行修改或删除操作,如图5-6所示。

图5-5部门信息管理界面图

 

薪资管理,在薪资管理列表可以查看员工编号、员工姓名、员工性别、员工年龄、员工部门、员工职位、等信息,如图5-6所示。

图5-6薪酬管理界面图

 

培训信息管理,在培训信息列表可以查看培训名称、员工、培训地点、培训时间、培训内容等信息,并可根据需要进行修改或删除操作,如图5-7所示。

 

图5-7培训信息管理界面图

    1. 用户功能模块

用户登录进入人力资源管理系统可以查看首页、部门信息、培训信息、薪资信息、员工信息等内容,如图5-8所示。

 

图5-8员工功能界面图

个人中心,在个人信息页面通过填写用户名、用户组、状态、昵称、联系电话、邮箱等内容,并可根据需要对个人信息信息进行修改,如图5-9所示。

 

                                                          图5-9个人中心界面图

员工信息管理,在员工信息列表可以查看员工编号、员工姓名、员工性别、员工年龄、员工部门、员工职位、入职日期等信息,如图5-10所示。

 

                                                       图5-10员工信息管理界面图

  1. 统测试
    1. 测试目的

在对该系统进行完详细设计和编码之后,就要对人力资源管理系统安全方案的程序进行测试,检测程序是否运行无误,反复进行测试和修改,使之最后成为完整的软件,满足用户的需求,实现预期的功能。

    1. 测试过程

在软件的测试过程中,通常测试人员需要针对不同的功能模块设计多种测试用例。通过测试用例能够及时发现代码业务逻辑上是否与真实的业务逻辑相对应,及时发现代码上或逻辑上的缺陷,以此来来完善系统,提高软件产品的质量,使软件具有良好的用户体验。

登录测试用例表如下所示。

表6-1登录测试用例

测试性能

用户或操作员登录系统

用例目的

测试用户或操作员登录系统时功能是否正常

前提条件

进入用户登录页面或操作员登录页面

输入条件

预期输出

实际情况

各项信息不予填写,直接点击登陆按钮

不允许登录,提示填写账号相关信息

一致

填写错误的登录名或密码后点击登录系统

提示用户名或密码错误,要求重新填写进行登录

一致

填写与验证码信息不一致的信息

系统显示出提示信息,表明验证码错误,要求重新填写

一致

员工培训测试用例表如下所示。

表6-2员工培训测试用例

测试性能

用户进行员工培训的操作

用例目的

测试用户进行员工培训操作时,该功能是否正常

前提条件

用户进入员工详情页,该员工能够被培训

输入条件

预期输出

实际情况

对着某员工点击“培训”按钮

界面跳转至培训界面

一致

在培训界面,输入必填项,点击“提交”按钮

提示“培训成功”,并返回上一级界面

一致

在培训界面,填写培训表单的时候未输入完整,点击“提交”按钮

提示“培训失败”

一致

员工管理测试用例表如下所示。

表6-3员工管理测试用例

测试性能

员工相关信息管理功能

用例目的

测试系统操作者对员工相关信息进行管理的功能是否正常

前提条件

登录系统进入相关管理页面

输入条件

预期输出

实际情况

进入员工管理界面,点击“录入”按钮,填写所有必填项,点击提交

提示“录入成功”,并返回查询界面

一致

进入员工管理界面,点击“录入”按钮,未填写一个或者多个必填项,点击提交

提示“录入失败”,请填写必填项

一致

进入员工管理界面,选择要修改的一条数据,点击该条数据后面的“修改”按钮 

节目跳转至修改界面

一致

在修改界面,修改可修改项后,点击“提交”按钮

提示“修改成功”,并返回查询界面

一致

进入员工管理界面,点击某条数据后面的删除按钮

提示“是否要删除该数据”,如果用户点击“确定”按钮,则成功删除该条数据,并提示“删除成功”,之后返回查询界面

一致

    1. 测试结果

经过对此系统的测试,得出该系统足以满足用户日常需求,在功能项目和操作等方面也能满足操作员对于其他用户的管理。但是,还有很多功能有待添加,这个系统仅能满足大部分的需求,还需要对此系统的功能更进一步的完善,这样使用起来才能更加的完美。

  1. 总结与展望

通过人力资源管理系统安全方案的开发,本人巩固了之前学过的知识,如今将平时所学到的知识融合在设计中,在设计过程中,做了很多的准备,首先,在数据库系统的设计过程中,尤其是在数据库的工作原理、工作特点,对其深刻的讨论,与此同时,对于小型站点来说,最好服务器的选择,其次,利用所学的知识点分析所做的系统,并在此基础上设计。

目前本系统已经上线,正在试运行阶段,用户反馈良好,基本完成用户所需,试运行过程中没有出现阻断性问题,有一些不足和小问题也及时予以修正,系统上线后,为了保证数据的安全性,对系统进行了备份操作,系统备份是每两个月备份一次,数据库备份为每周备份一次,系统部署在租赁的云平台服务器中。

本次系统上线成功后,得到了用户的高度认可,但是在功能上和性能上还需做进一步的研究处理,使其有更高的性能和更好的用户体验。

系统在以后的升级过程中,需要解决一系列用户所提出的问题,例如打印过程中如何避免浏览器的兼容性问题,大量用户访问时,如何保持较高的响应速度,在系统今后的升级过程中将着重解决这些安全性问题。

参考文献

[1]徐佩.新时期计算机软件开发技术的应用及发展趋势[J].农家参谋,2019(08):167.

[2]张帅,崔婀娜,魏立波.互联网+健康在线服务平台的设计与实现[J].科技创新与应用,2019(10):91-92.

[3]谷利国,陈存田,张甲瑞.基于B/S模式的人事教育信息管理系统的分析与设计[J].电脑知识与技术,2019,15(10):58-59.

[4]胥新政,强毅.基于JSP的常用金属材料标准检索平台开发设计[J].制造业自动化,2019,41(03):41-43+69.

[5]王祖维,南淮耀,张英.“互联网+”视域下的高校学生公寓管理系统设计与实现——以沈阳师范大学为例[J].现代商贸工业,2019,40(08):187-188.

[6]廖明华,齐攀.学生职业能力测评管理系统的设计与实现[J].广东交通职业技术学院学报,2019,18(01):48-52.

[7]李冬冬,刘华明,毕学慧,王秀友.旧衣申领系统的设计与实现[J].电脑知识与技术,2019,15(08):47-50.

[8]李庆年.“互联网+”视域下的人才招聘管理系统设计与实现[J].国际公关,2019(03):164-165.

[9]刘婷,彭焕峰,邵淑婷.基于云平台的高校监考管理系统[J].电脑知识与技术,2019,15(07):91-92.

[10]赵丙秀.基于百度AI平台的Web人脸注册和登录系统的实现[J].电脑知识与技术,2019,15(07):114-115.

[11]戴昭颖,尹涛.钢铁行业成本预算系统开发应用实践[J].电子技术与软件工程,2019(04):29-30.

[12]曹灿,刘志刚.基于SSH和Layui的工程科学前沿与实践系统[J].工业控制计算机,2019,32(02):91-92+96.

[13]谢路.基于Web的考务管理系统设计与实现[J].福建电脑,2019,35(01):136-137.

[14]张继东.MySQL数据库基于JSP的访问技术[J/OL].电子技术与软件工程,2017,(15):169(2017-08-03).

[15]韩思凡.Web开发中的JSP与HTML的基础应用[J].科学技术创新,2020(14):71-72.

[16]NastitiAndini,DaehaKim,JongAhnChun.Operationalsoilmoisturemodelingusingamulti-stageapproachbasedonthegeneralizedcomplementaryprinciple[J].AgriculturalWaterManagement,2020,231.

[17]A.D.Titisari,D.Phillips,I.W.Warmada,Hartono,A.Idrus.40Ar/39ArgeochronologyofthePongkorlowsulfidationepithermalgoldmineralisation,WestJava,Indonesia[J].OreGeologyReviews,2020,119.

[18]FranciscoOrtin,OscarRodriguez-Prieto,NicolasPascual,MiguelGarcia.HeterogeneoustreestructureclassificationtolabelJavaprogrammersaccordingtotheirexpertiselevel[J].FutureGenerationComputerSystems,2020,105.

[19] Satya Krismatama, Indah Riyantini, Iwang Gumilar, Lantun Paradhita Dewanti.

[20]ZhongXiangfu,PlaAlbert,RaynerSimon.Jasmine:aJavapipelineforisomiRcharacterizationinmiRNA-Seqdata[J].Bioinformatics,2020,36(6).

obrigado

Com a conclusão do projeto, a carreira universitária está chegando ao fim. O tempo na faculdade é o tempo que mais aprecio. Aprendi muito e cresci muito durante o tempo na faculdade. Cada lembrança durante esse tempo está gravada em minha mente. Agradeço aos alunos que estudaram e cresceram juntos, e aos professores que me ensinaram durante o processo de crescimento, sou muito grato por sua companhia.

Em primeiro lugar, gostaria de agradecer ao meu instrutor. A conclusão do projeto é inseparável de uma série de orientações do professor. Durante a conclusão do projeto de graduação, o professor deu muitas sugestões pertinentes. É justamente por causa da atitude de trabalho meticuloso do professor que meu projeto pode ser concluído com sucesso.

Finalmente, gostaria de agradecer a todos os professores que me ensinaram durante minha carreira universitária, vocês me ensinaram uma riqueza de conhecimentos e como lidar e resolver problemas quando os encontro. Obrigado por sua ajuda e apoio.

Like+Favorito+Seguir → mensagem privada para receber o código-fonte e a base de dados

Acho que você gosta

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