Java Web Weekly, Issue 117 – Java网络周刊》第117期

最后修改: 2016年 3月 24日


At the very beginning of last year, I decided to track my reading habits and share the best stuff here, on Baeldung. Haven’t missed a review since.


Here we go…


1. Spring and Java


>> JEP 286 Survey Results for Local Variable Type Inference []

A quick followup to the survey Brian Goetz ran to take the pulse of the community on the best way to implement type inference in Java. Looks like a pretty decisive yes.

在Brian Goetz所做的调查中,我们对在Java中实现类型推理的最佳方式进行了快速跟进。看起来很有决定性的

>> Simplifying Database Queries with Jinq []

Jing looks like a clean, nice way to access your SQL data – here’s just a quick example to show you what the library can do.


>> Improve Your JUnit Experience with this Annotation []

Very quick and to the point way to run your tests in a more predictable order – which makes a lot of sense.

非常快速和直接的方式来以更可预测的顺序运行你的测试 – 这有很大的意义。

I personally actually like the unpredictable nature of tests – it’s a quick and nice way to flush out any unforeseen connections between them – but I can certainly see the appeal of running them in a clear order.


>> How to call Oracle stored procedures and functions from Hibernate []

A very practical and useful guide to using stored procedures with Hibernate. A bit annotation-heavy, but if you’re using JPA, you’re already used to that.


Also worth reading:


Webinars and presentations:


Time to upgrade:


2. Technical


>> Understanding CSRF, the video tutorial edition []

Having a solid understanding of CSRF attacks well beyond the basics – can save your bacon when taking your system to production. Definitely have a look at this one.


>> Uber Bug Bounty: Turning Self-XSS into Good-XSS []

I enjoy reading through the details of these attacks. I’m saving this one for the weekend but it looks promising, so I’m including it here as well.


>> Writing OpenAPI (Swagger) Specification Tutorial – Part 3 – Simplifying specification file []

API documentation is the new hotness, yes, but it’s also necessary. And while I’m using Swagger myself, I’m keeping a close eye on the other tools available out there.


>> Event Sourcing vs CRUD []

A very quick and to the point set of questions to ask yourself before deciding if Event Sourcing makes sense for the architecture of your system.


Also worth reading:


3. Musings


>> That Code’s Not Dead — It Went To a Farm Upstate… And You’re Paying For It []

Removing “dead” code is critical to keep the sanity of your system (and your own while you work on that system).

删除 “死 “代码是至关重要的,以保持系统的理智(以及你在该系统上工作时自己的理智)。

One of the cleanest and easiest to work with codebases that I ever touched early on in my career – was one where the team lead was ruthless with cutting code that wasn’t used immediately.


>> My Passion Was My Weak Spot []

Passion is one thing, and allowing it to put you in unhealthy, one-side type of work is another.


This piece is definitely worth the read, especially if you’re relatively new to working as a developer.


>> Take a Step Back []

Some solid advice if there ever was any – think through those little, day to day decisions to keep your system and your codebase clean and nimble.


>> AppDynamics vs Dynatrace: Battle of the Enterprise Monitoring Giants []

If you ever asked the monitoring question for the system you’re working on, you’ve asked yourself this exact question more than once.


My only gripe about this one is that it doesn’t include the other major player in the space – New Relic. Other than that – some solid information over here.

我对这份报告的唯一不满是,它没有包括该领域的另一个主要参与者–New Relic。除此以外,这里还有一些可靠的信息。

Also worth reading:


4. Comics


And my favorite Dilberts of the week:


>> My PowerPoint slides have a little something for everyone []

>> I’m in the mood to tweet []

>> You’re exactly what I’m trying to avoid []


5. Pick of the Week

5 本周精选

Every year I run a survey to find out how the adoption of new technologies is going. Here are the new numbers for Spring and Spring Boot:

我每年都会做一个调查,了解新技术的采用情况。下面是Spring和Spring Boot的新数字。

>> Spring and Spring Boot Adoption in March 2016 []