Skip to content

carlosjedwab/noticeiro-website

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

87 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Noticeiro

Este é o Noticeiro, um super agregador de blogs e notícias.

Projeto "Super agregador de blogs e notícias" da matéria MAC0321 da USP.

Dependências do projeto

Este projeto é implementado em Java Spring MVC, utilizando o banco de dados MongoDB

  • Dependências do Java Spring

    • Spring Web
    • Spring Security
    • Thymeleaf
    • Spring Data MongoDB
  • Banco de dados

    • MongoDB
  • Outras bibliotecas utilizadas

    • Bootstrap

Como executar

Primeiramente, é necessário ter o MongoDB em execução, pois o web app irá interagir com ele para armazenamento dos dados.

Instalação e execução do MongoDB

  • Instale o MongoDB -> Instalação do MongoDB
  • Com o MongoDB instalado, abra um terminal e digite o seguinte comando: mongod
  • Com isto, o MongoDB deverá estar rodando e conectado ao localhost na porta 27017
  • IMPORTANTE: O MongoDB reserva uma pasta para armazenamento dos dados. No Linux, o padrão é a pasta "/data/db", porém, ao executá-lo pela primeira vez, talvez esta pasta não existirá e você precisará criá-la. Após ser criada, é possível que o MongoDB não consiga permissão para acessá-la, devido ser uma pasta criada na root do sistema, neste caso será necessário alterar as permissões de acesso para a pasta.
  • No Linux, os dois problemas acima podem ser resolvidos com os seguintes comandos:
sudo mkdir -p /data/db
sudo chown -R $USER /data/db

Execução do projeto

Com o MongoDB em funcionamento, há duas maneiras de executar o projeto:

  • Primeira maneira - Execução por meio do maven
    • Instale o maven. No Ubuntu: sudo apt install maven
    • Abra o terminal na pasta do projeto
    • Execute o comando: mvn spring-boot:run -D maven.test.skip=true
    • Com isto, o projeto estará sendo executado e o site poderá ser acessado por meio da url localhost:8080
  • Segunda maneira - Execução por meio do Eclipse
    • Instale o Plugin Spring Tools 4
    • Importe o projeto no Eclipse
    • Clique com o botão direito na pasta principal do projeto e execute o comando Run as -> Spring Boot Application
    • Com isto, o projeto estará sendo executado e o site poderá ser acessado por meio da url localhost:8080

Como utilizar as tags

Podem ser inseridas uma tag por vez na lista ou várias de uma vez, no seguinte formato:

Brasil "Testes automatizados" Governo Estudantes "Programar em Java"

As tags compostas devem ser colocadas entre aspas, conforme o exemplo anterior.

Uso de expressões regulares

Também está disponível o uso de expressões regulares. Para utilizar uma expressão regular, insira uma tag começando com "regex=", sem as aspas, seguida da expressão regular.

Exemplo: Mostrar notícias que contenham título ou descrição começando apenas com letra C:

regex=^C.*

Como utilizar filtros de data e hora

Para utilizar os filtros de data, o usuário tem a opção de escolher uma data mínima e uma data máxima, para que só sejam mostradas publicações pertencentes ao intervalo informado. Também é possível omitir uma das datas, montando intervalos abertos.

Para utilizar os filtros de hora, o usuário tem a opção de escolher uma hora mínima e uma hora máxima, para que só sejam mostradas publicações pertencentes ao intervalo informado. Também é possível omitir uma das horas, montando intervalos abertos. Obs: É importante notar que o intervalo de horas é aplicado a todos os dias pertencentes ao intervalo de datas.

Configuração da conexão com o banco de dados

As configurações da conexão do web app com o banco de dados podem ser encontradas no arquivo src/main/resources/application.properties e por padrão são as seguintes:

spring.data.mongodb.host=localhost
spring.data.mongodb.port=27017
spring.data.mongodb.database=testdb

Isto é, por padrão, a conexão com o MongoDB é feita no localhost, na porta 27017 e o nome do banco de dados é testdb

Testes do JUnit

Na versão atual, o web app conta com uma bateria simples de testes do JUnit, testando os principais métodos do código.

Os testes estão localizados na pasta src/test/java/noticeiro.

IMPORTANTE: É importante notar que os testes são feitos com uma conexão real ao MongoDB, e, durante os testes, o banco de dados é apagado, portanto, se os testes forem executados no mesmo banco de dados onde existem usuários cadastrados, eles serão perdidos. Isto pode ser evitado alterando-se o banco de dados utilizado na hora de rodar os testes, o que pode ser feito mudando a linha de configuração spring.data.mongodb.database=testdb, trocando o testdb para outro nome, assim, o MongoDB utilizará um banco separado na hora dos testes.

Imagens do Noticeiro

Home

Home

Cadastro

Cadastro

Login

Login

Feed

Feed

OBS: Para remover URLs da lista do feed, posicione o mouse sobre a URL e o ícone de uma lixeira aparecerá. Clique no ícone.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •