Skip to content

SirAnatoly/Site-Blog_on_JavaEE_

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Blog on JavaEE

DEMO: http://anatoliykovalov.ddns.net/Site_Blog_on_JavaEE_war

Video overview

Watch the video

mvc

db er

Technologies

  • Interface : HTML/CSS/JS/Bootstrap/jQuery.
  • JavaEE: Servlets, JSP, JSTL.
  • Apache Commons : dbcp2, lang3, dbutils, BeanUtils, email, validator.
  • Database: MySql.
  • Google OAuth.
  • Maven, Logback.
  • The application is built on MVC design pattern.

What does it do:

  • Displaying a list of article categories;
  • Displays a list of all articles sorted in descending order of creation time;
  • Displays a list of articles for the selected category, sorted in descending order of creation time;
  • Search for articles by keyword in the article title and its text. (For simplicity, we mean searching by the exact word or phrase);
  • Paginated display of information for the list of articles and search results;
  • Displaying information about an article and updating the page-view counter;
  • Integration with social services for sharing information about an article;
  • Load more comments to an article;
  • Writing a new comment to an article;
  • Authentication via social networks, as the simplest and most widely used method today, using the example of Google+;
  • Import a user profile (name, email, avatar) from Google+ when creating a comment;
  • Sending a notification about a new comment to the blog owner's email address;
  • Sending a Contact Form request to the blog owner's email address;
  • Error handling: 404, runtime errors, data validation;
  • Displaying simple pages using the about example.

Base Blog Props

1) File: Site-Blog_on_JavaEE_/src/main/resources/application.properties

db.driver=com.mysql.cj.jdbc.Driver

db.url=jdbc:mysql://localhost:3306/Blog // Format

db.username=**** // Format

db.password=***** // Format

db.pool.initSize=5

db.pool.maxSize=10

social.googleplus.clientId=***** // Format

app.host=http://******* // Format

email.notificationEmail=xxx@mail.com // Format

email.sendTryCount=2

email.smtp.server=smtp.mail.com

email.smtp.port=465

email.fromEmail=xxx@mail.com // Format

email.smtp.username=xxx@mail.com // Format

email.smtp.password=xxx{password application email} // Format

2) File: Site-Blog_on_JavaEE_/src/main/java/blog/Constants.java

public class Constants {

public static final String CATEGORY_MAP = "CATEGORY_MAP";

public static final int LIMIT_ARTICLES_PER_PAGE = *****;  // Format 

public static final int LIMIT_COMMENTS_PER_PAGE = *****; // Format

}

About

Site-Blog on JavaEE by MVC architecture

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors