Je viens d'entrer en contact avec Springboot et je ne connais pas beaucoup de choses, comme sa méthode d'annotation, sa méthode de configuration, etc .; J'ai entendu dire que c'est très génial, alors j'ai essayé de l'apprendre. Après avoir été familiarisé avec le premier programme de Springboot. Je pensais que lorsque Spring a intégré MyBatis, il a utilisé des sources de données pour se connecter à la base de données, donc je voulais également essayer d'utiliser C3P0 pour se connecter à la base de données. Il y a donc le contenu suivant:
Tout d'abord, la première étape consiste à créer un package d'importation de projet Maven:
pom.xml
<parent> <proupId> org.springframework.boot </proupId> <ArtifActid> printemps-boot-starter-Parent </ artifactid> <version> 1.4.1.release </pre version> </parestrée> <peedigency> <proupId> Junit </proupId> </ Artifactid> Junit </ Artifactid> <Dusiond> <ccope> test </cope> </dependency> <dependency> <proupId> org.springframework.boot </proupId> <ArtifActid> printemps-boot-starter-test </ artifactid> <version> 1.4.1.release </ version> </ Dependency> <Dedidency> <proupId> org.springFramework. <ArtefactId> Spring-boot-starter-web </ artifactid> <version> 1.4.1.release </ version> </dependency> <dependency> <proupId> org.mybatis.spring.boot </prouprid> <Artifactive> Mybatis-Spring-boot-starter </ptetifactid> <version> 1.1.1 </pridé> <GroupId> MySQL </rom grouped> <Artifactid> MySQL-Connector-Java </ ArtifactId> <DERNÉRATEUR> 5.1.33 </ Version> </ Dependency> <Dedency> </proupId> C3P0 </rom grouped> <eRtifactid> C3P0 </Retifactid> <Duilote> 0.9.1.2 </Dero version> </Dedétude> <GroupId> org.springframework.boot </prôdId> <ArtefactId> Spring-Boot-Maven-Plugin </ ArfactId> </Glugin> </Glugins> </ Build>
Services de candidature
import org.mybatis.spring.annotation.mapperscan; import org.springframework.boot.springApplication; import org.springframework.boot.autoconfigure.enableAutoConfiguration; importation org.springframework.boot.autoconfigure.springbootapplication; @ SpringbootApplication @ MAPPERSCAN (Value = "com.myk.spring.t3") // Analyser le package de mappeur @ enableAutoConfiguration // Autoload Autoload tous les hanches requis pour l'application. Lorsque vous utilisez la propriété Exclude, il est interdit de configurer automatiquement une certaine classe de classe publique {public static void main (String [] args) {springApplication.run (application.class, args); }}Contenu du fichier de configuration (base de données de configuration)
DataSource: URL: jdbc: mysql: // ip: port / databasename class class: com.mysql.jdbc.driver nom d'utilisateur: *** mot de passe: ***
Préparez-vous correctement, essayez d'activer le service d'application et continuez à configurer la source de données sans erreur. Essayez de nombreuses méthodes, il est impossible de l'injecter vous-même, j'ai donc pensé à la configuration du ressort et essayez de la configurer de cette manière. Par conséquent, DataSourceConfig.java
Importer javax.sql.datasource; import org.mybatis.spring.sqlSessionFactoryBean; import org.springframework.beans.factory.annotation.qualifier; import org.springframework.boot.AutoConfigure.jdbc.datasourceBuilder; import; org.springframework.boot.context.properties.configurationproperties; import org.springframework.context.annotation.bean; import org.springframework.context.annotation.configuration; import org.springframework.contex com.mchange.v2.c3p0.CombopooledDatasource; @configurationpublic classe dataSourceConfig {@bean (name = "dataSource") @qualifier (value = "dataSource") // en plus de l'injection selon le nom, le descripteur qualifié peut effectuer un contrôle Granular.how pour sélectionner les candidats @ plier // utiliser @primary Control. La source de données principale @configurationproperties (prefix = "c3p0.primary") // spécifie la valeur de propriété préfixée avec C3P0 dans le fichier de configuration publique DataSource dataSource () {return dataSourceBuilder.create (). SqlSessionFactory * / @Bean public SqlSessionFactoryBean SqlSessionFactoryBean () {SQLSessionFactoryBean SqlSessionFactory = new SqlSessionFactoryBean (); sqlSessionFactory.SetDataSource (dataSource ()); retour sqlSessionFactory; }} Il peut y avoir des questions, pourquoi seule une SQLSessionFactory est nécessaire ici, et vous devez vous familiariser avec l'intégration Spring MyBatis. Regardez également la couche inférieure et comprenez que vous pouvez automatiquement assembler.
La source de données est prête, essayez de vous connecter à la base de données
Modifier l'interface
Examplemapper.java
Importer java.util.list; Interface publique ExampleMapper {public List <Ders> GetUsers ();}Modifier le fichier de mappeur XML
<? xml version = "1.0" Encoding = "UTF-8"?> <! Doctype MapperPublic "- // Mybatis.org//dtd Mappeur 3.0 // en" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <maper namespace = "Com. id = "getUsers" resultType = "Com.
Modifiez la classe d'entité parce que vous voulez refléter le résultat dans la classe de bean
Users.java
Utilisateurs de classe publique {private int userId; Nom d'utilisateur de chaîne privée; @Override public String toString () {return "Users [userid =" + userid + ", username =" + username + "]"; } public int getUserId () {return userId; } public void SetUserId (int userId) {this.UserId = userId; } public String getUserName () {return username; } public void setUsername (String username) {this.userName = username; } Utilisateurs publics (int userId, String Username) {super (); this.UserId = userId; this.userName = nom d'utilisateur; } publics publics () {super (); // TODO STUD DE CONTRÔTEUR AUTO AUTO}} Édition et mise en œuvre
Exemple2.java
Importer java.util.list; import org.springframework.beans.factory.annotation.autowired; import org.springframework.web.bind.annotation.anquestmapping; import org.springframework.web.bind.annotation.Responsebody; import org.springframework.web.bind.annotation.restController; @ restController @ requestmapping (value = "/ example2") // mapping public class example2 {@autowired public exampleMapper examplemapper; @ResponseBody @RequestMapping (Value = "/ Gu") Liste publique <Derse> GetUsers () {return exampleMapper.getUsers (); }} Entrez l'adresse: http: // localhost: 8080 / example2 / gu
Afficher les résultats à la surface:
[{"userId": 1, "nom d'utilisateur": "as"}, {"utilisateur": 2, "nom d'utilisateur": "we"}, {"userId": 3, "username": "zx"}]
Ce qui précède est tout le contenu de cet article. J'espère que cela sera utile à l'apprentissage de tous et j'espère que tout le monde soutiendra davantage Wulin.com.