Just for the records, TWIMC :-)

I really was surprised to find this behavior of hibernate generating a "hibernate_sequence" on MySQL, where the autoincrement is IMHO the most simple and elegant way to create/use a technical primary key - which is in the end the reason for the initially desribed behavior of the incrementing id from Ryan.
(Similar to the discussion on "Serializeable not getting a default serialVersionUID" the question is: should a tool like Forge provide a functional core to build on or should it "evangelize" a certain - debatable - implementation practice.)

In this case the reason for the discussed behavior is the new AnnotationMapping introduced in Hibernate.
See: 5.1.2.2. Identifier generator in http://docs.jboss.org/hibernate/orm/3.6/reference/en-US/html/mapping.html

    private static String generatorType(GenerationType generatorEnum, Mappings mappings) {
        boolean useNewGeneratorMappings = mappings.useNewGeneratorMappings();
        switch ( generatorEnum ) {
            case IDENTITY:
                return "identity";
            case AUTO:
                return useNewGeneratorMappings
                        ? org.hibernate.id.enhanced.SequenceStyleGenerator.class.getName()
                        : "native";

The old mapping "native" would have been the mapping causing the use of "auto_increment", if available.
So there would be two possibilities to react to the issue per default:

    - place a property in persistence.xml:
              <property name="hibernate.id.new_generator_mappings" value="false"/>

    - set GenerationType.IDENTITY per default
        thus excluding technically Databases not supporting autoincrement

Unfortunately both are not really attractive :-/

Thomas