我对Spring Boot是新手,但我对Spring有经验。
我有一个工作启动Spring启动项目。现在我想将它连接到Postgres DB,并能够使用常规查询。具体来说,我们经常在Spring(DAO)中编写以下类型的代码:
@Autowired
SessionFactory factory;
@Override
public String daoFunction1() {
Session session = null;
try{
session = factory.openSession();
Query query = session.createQuery("from Employee where employeeId=10");
//where Employee is a model/persistance class already added
Employee result = (Employee)query.list();
.....//whatever else is required follows
}
//OR
@Override
public String daoFunction1() {
Session session = null;
try{
session = factory.openSession();
Query query = session.createSQLQuery("Select * from cametaschema.test");
List<Object[]> result = query.list();
.....//whatever else is required follows
}
问:有人能告诉我在Spring Boot中做同样事情的标准方法是什么吗?要做到这一点,我需要在不同的文件中添加什么(比如所有依赖项和注释等等)。
我知道对你来说,把所有的代码放在这里给像我这样的汤姆·迪克和哈利会花太多的时间,但是你的回答只是用语言(说包括这里)可以让我的一天,拯救我的夜晚:)
请注意,我希望能够使用HQL查询和本机SQL查询使用同一会话。我不想使用实体管理器的HQL和会话(如上所述)本机SQL查询。
我已经在互联网上搜索了很长时间,但没有人清楚地告诉我想要得到什么(我知道可能是我找不到合适的资源,因为这是一件非常普遍的事情)。大多数教程只显示如何使用Crudepository等配置Hibernate JPA。
任何建议都会对我大有帮助
提前谢谢!!
@尼古拉肯定会让我走上正轨,遵循标准,充分利用Spring靴。但由于受到mu组织建议的约束,我不得不做一些类似于我们在Spring所做的事情。以下是我最终如何做到这一点的。
>
通过在配置中注入以下bean来获取会话工厂:
@Bean Public SessionFactory会话工厂(@限定符(entityManagerFactory)EntityManagerFactory emf){返回emf.unwrap(SessionFactory.class);}
将EntityScan和ComponentScan添加到配置类中
@EntityScan(basePackages={“com.app.persistence”}@ComponentScan(basePackages={“com.app”})
继续使用任何HQL查询,就像Spring一样:
@自动连线会话工厂;
@Override
public String check() {
Session session = null;
try {
session = factory.openSession();
Query query = session.createQuery("from Test");
List<Test> res = query.list();
Test sing = res.get(0);
return sing.getName();
} catch (Exception e) {
System.out.println("Exception in Dao");
e.printStackTrace();
throw e;
} finally {
if (session != null) {
session.close();
}
}
}
注意:我假设其他事情,如配置DataSource和所有已经处理。
如果我的理解或方式是错误的,任何人都可以随时纠正我。
但这样对我来说效果很好!!:)
只要继续写这种daoFunctionN-s,因为Spring Boot不会阻止你这样做。Spring Boot的目的是提供大量现成的功能,而无需编写大量的样板代码和配置。
Tmux 名字取自“Terminal Multiplexer”,读作“T-马克思”,是一个能够终端窗口中提供多终端会话 管理的应用,它可以在后台保持多个终端会话的运行,并在合适的时候 attach 或者 detach 会话, 以达到保持和切换会话的作用。 Tmux 的竞争对手有 GNU Screen,我没有过 Screen 的使用经验,但是根据搜索的结果 BSD 协议的 Tmux 似乎要更加自由和
问题内容: 我正在使用Hibernate JPA。我下面有Oracle存储过程。 如何调用此存储过程? 问题答案: 检查这个SO问题: 首先,您定义名为本地查询的存储过程: 然后使用以下命令执行它:
我有一个大型Sybase ASE C/C应用程序,我想将其迁移到Postgresql。应用程序使用的是Sybase CT库(没有什么复杂的:简单的SQL,很少批量上传等)。应用程序是使用SYBASE OCS-16在Linux上构建和运行的。 我正在尝试评估BabelFish扩展是否有助于加快迁移。 第一个挑战(从Sybsae迁移)是应用程序广泛使用多语句查询来返回多结果集,使用动态生成的Trans
配置远程仓库 Gradle支持下面三种不同类型的仓库: 下图是配置不同仓库对应的Gradle API: 下面以Maven仓库来介绍,Maven仓库是Java项目中使用最为广泛的一个仓库,库文件一般是以JAR文件的形式存在,用XML(POM文件)来来描述库的元数据和它的传递依赖。所有的库文件都存储在仓库的指定位置,当你在构建脚本中声明了依赖时,这些属性用来找到库文件在仓库中的准确位置。group属性
我在Postgres/Postgis中创建了一个点几何列(coordenadas),使用以下命令行: 我在tb_amostra表中有两列,LONGITUGE和LATITUDE,我需要根据经度和纬度列中的值将(lon,lat)的8位小数点创建到coordenadas列中。有什么帮助吗?提前感谢您抽出时间。
本文向大家介绍Spring Boot使用和配置Druid,包括了Spring Boot使用和配置Druid的使用技巧和注意事项,需要的朋友参考一下 1、引入依赖包 2、配置application.properties 3、目前Spring Boot中默认支持的连接池有dbcp,dbcp2, tomcat, hikari三种连接池。 由于Druid暂时不在Spring Bootz中的直接支持,故需要