简体   繁体   中英

how do I get spring to recognize the first capital letter using postgresql

I have a question how I can do so that in spring my table is recognized with the first capital letter, is made in postgresql

@Entity
@Table(name="System_user") 

public class Dashboard { 

    @Id
    @Column(name = "username")
    String username;

get..
set...
}

it generates an error and I change it as shown below

@Table("\"System_user\"")

but he still doesn't recognize me

As we discussed in the comments, the issue was in dialect.
Latest dialect for now - org.hibernate.dialect.PostgreSQL95Dialect

The issue solved this dialect: <prop key="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</prop>


Answer to your HQL-code:

I would suggest using TypedQuery as it returns not just a list, but list of your object.

Furthermore, u are using the same session to transfer data. This is bad for the program. Always do like Open session - transfer data - close session .

Try this code:


public List<Vw_dh_assay> listAssayReport(double year, String project_id, String hole_id) {
        List<Vw_dh_assay> list = new ArrayList<>();
        Session session;

        try {
            session = this.sessionFactory.openSeesion();
            TypedQuery<Vw_dh_assay> query = session.createQuery("from Vw_dh_assay where year = :year AND project_id = :project_id  AND hole_id = :hole_id", Player.class);
            query.setParameter("year", year);
            query.setParameter("project_id", project_id);
            query.setParameter("hole_id", hole_id);

            list = query.getResultList();

            System.out.println(list);

            session.clear();
            session.close();
        } catch (Exception e) {
            e.printStackTrace();
        }

        return list;
    }

this is my code DAO @Antonio112009

@Override
    public List<Vw_dh_assay> listAssayReport(double year, String project_id, String hole_id) {
        Session session = this.sessionFactory.getCurrentSession();
        String query = ("SELECT DISTINCT year,project_id,hole_id from "
                + "Vw_dh_assay where year = :year AND project_id = :project_id  AND hole_id = :hole_id");
        List result = session.createQuery(query).setParameter("year", year).setParameter("project_id", project_id)
                .setParameter("hole_id", hole_id).list();

        System.out.println(result);
        return result;
    }

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM