Je pense que c'est une façon unique d'écrire Spring Framework, mais c'est un fichier de propriétés, un fichier xml et Java. Je pense que c'est un meurtre assez débutant, j'ai donc résumé l'utilisation de JPA.
De plus, ce qui est requis pour JPA ・ Bibliothèque JPA Spring Data ・ Classe d'entité · Fichier Persistence.xml (fonctionnalité Java EJB) -Fichier de configuration Bean (xml) -Classe d'exécution avec la méthode principale
Vérifiez la console pour voir si la requête est arrivée correctement dans la base de données. Utilisez sur le Web plus tard.
paramètres de pom.
Ajoutez à pom et ajoutez des dépendances. J'utilise Spring IO pratform, donc je ne décrirai pas la version!
pom.xml
<!-- Hibernate -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
</dependency>
<!-- jdbc -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
</dependency>
<!-- postgresql database -->
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
</dependency>
Après avoir dessiné, cliquez avec le bouton droit sur ** Maven → updateProject **
Je donnerai à Spring des informations sur le pilote post-gray. Créez un fichier de propriétés de ** database.properties ** dans src / main / resource.
database.properties
jdbc.driverClassName=org.postgresql.Driver
jdbc.url=jdbc:postgresql://localhost:5432/sample
jdbc.username=postgres
jdbc.password=password
S'il s'agit d'un article, il ressemble à ceci, selon la base de données que vous utilisez.
Enregistrez le DataSource et le JdbcTemplate dans le conteneur DI. Créez ** bean.xml ** dans src / main / resource
Vous lisez la valeur du fichier de propriétés et vous l'enregistrez dans le bean.
bean.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:jdbc="http://www.springframework.org/schema/jdbc"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd">
<!--Paramètres de la base de données intégrée>
<jdbc:embedded-database id="dataSource" type="H2">
<jdbc:script location="classpath:script.sql"/>
</jdbc:embedded-database-->
<!--Définition des propriétés de la base de données-->
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location" value="database.properties" />
</bean>
<!--Paramètres de connexion à la base de données-->
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource" >
<property name="driverClassName" value="${jdbc.driverClassName}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
</bean>
<!--Créer un bean modèle JDBC-->
<bean class="org.springframework.jdbc.core.JdbcTemplate">
<constructor-arg ref="dataSource" />
</bean>
Sortons ceci de DI et exécutons-le Accédez à la base de données avec ** execute ** et ** queryForList ** de JdbcTemplate!
App.java
@Component
@ComponentScan
public class App {
//private static JdbcTemplate jdbcTemplate;
private static ApplicationContext context;
private static JdbcTemplate jdbcTemplate;
public static void main(String args[]) {
//Créer un modèle à l'aide d'annotations
//context = new AnnotationConfigApplicationContext(DataSourceConfig.class);
//JdbcTemplate jdbcTemplate = (JdbcTemplate)context.getBean(JdbcTemplate.class);
//Obtenez le contexte
context = new ClassPathXmlApplicationContext("bean.xml");
jdbcTemplate = context.getBean(JdbcTemplate.class);
List<Map<String, Object>> list = jdbcTemplate
.queryForList("SELECT * FROM mytable");
for(Map<String, Object> obj : list) {
System.out.println(obj);
}
}
}
Fais ça et regarde
En bas, vous pouvez voir que les colonnes ont été extraites de la base de données.
Recommended Posts