NFL ANALYSIS 2017

NFL Analysis 2017

In progress….

I have decided to let this repo be open to the public. If you want to track coding progress you can view it here nfl2017.

I have finally entered in a massive amount of data and am currently working on the BE portion (REST API) of the app.

This will demonstrate good use of the Spring Framework for those interested in learning how to construct a dynamic web project.

You will see that it is packaged by feature and that I make use of lombok and the jdbc template libraries, which incorporates lambda expressions.

If you have been following, you will also notice that I am testing different styles of implementations. I really want to settle on code design. I haven’t settled my own dispute on how to handle configurations, or different DAO implementations. I’m looking to use this project as a means to putting that to an end…. hopefully. Or at least until the next version of hibernate, persistence, or jdbc comes out. I do think I am starting to lean towards the persistence at the moment. JDBCTemplate (scheduleDAOImpl)  is great because it is easier to view the SQL syntax, but I am liking how clean persistence (teamDAOImpl)  is once you  get past the learning curve.  HQL (ParserDAOImpl) is probably my least favorite at the moment, because when I was updating the stats per week, it was taking an exceptionally long time. I may try to  benchmark the three implementations later down the line to compare differences.

Now that the parser is working like a charm, I am standing up some more endpoints. They are all live. I am deploying each new build into a docker container. Feel free to hit them.

Schedule – is parameterized, so you can toggle between teams and weeks or the combination of the two.

/NFL-2017/schedule?weekId=1&teamId=1

/NFL-2017/schedule?weekId=1

/NFL-2017/schedule?teamId=1

Teams

/NFL-2017/teams/1

Stats – is not parameterized. I went with path variable syntax even though it is not a complete CRUD set. Only READ for now. If I add others, then I will add login security to protect it from deletions or updates.

NFL-2017/stats/offensive/team/1/week/1

NFL-2017/stats/defensive/team/1/week/1

More to come…

P