Primero cree una nueva tabla de datos simple y demuestre operando esta tabla de datos
Tabla de caída si existe `ítems '; Cree la tabla `elementos` (` id` int (11) no null auto_incement, `title` varchar (255) predeterminado nulo,` name` varchar (10) predeterminado nulo, `detall` varchar (255) predeterminado nulo, clave primaria (` id`)) motor = innodb Auto_incement = 7 default Charset = utf8;
Introducir la clase de dependencia y conexión de Maven de JDBCTemplate
<Spendency> <MoupRoMID> org.springframework.boot </groupid> <artifactID> spring-boot-starter-jdbc </artifactid> </peperspency> <epardency> <MoupRoid> mysql </groupid> <artifactid> mysql-connector-java </artifactid> <scope> runtime </scope> </scope>
En el archivo Application.Properties, configure la clase de controlador, la dirección de la base de datos, la cuenta de la base de datos, la información de contraseña de MySQL. Cree Application.Properties en la carpeta SRC/Main/Resource.
spring.dataSource.url = jdbc: mysql: //127.0.0.1: 3306/spring? Usessl = false spring.dataSource.username = root spring.datasource.password = 123456 spring.datasource.driver-class-name = com.mysql.jdbc.derver spring.datasource.max-wait = 10000 spring.datasource.min-idle = 5 spring.datasource.initial-size = 5 server.port = 8080 server.session.timeout = 10 server.tomcat.uri-ending = utf-8
Crear una nueva clase de entidad, las propiedades corresponden al campo SQL
paquete org.amuxia.start; elementos de clase pública {ID de entero privado; título de cadena privada; nombre de cadena privada; detalle de cadena privada; public Integer getId () {return id; } public void setid (ID de entero) {this.id = id; } public String gettitle () {Título de retorno; } public void settitle (título de cadena) {this.title = title; } public String getName () {nombre de retorno; } public void setName (nombre de cadena) {this.name = name; } public String getDetail () {detallado de retorno; } public void setDetail (detalle de cadena) {this.detail = detalle; } public items () {super (); // TODO Auto Generado Constructor Stub} Public Elems (ID de entero, título de cadena, nombre de cadena, detalle de cadena) {super (); this.id = id; this.title = title; this.name = name; this.detail = detalle; } @Override public string toString () {return "elementos [id =" + id + ",, name =" + name + ", detalle =" + detalle + "]"; }}Nuevas operaciones
/** * Nuevos datos * @param elementos * @return */@requestmapping ("/add") public @ResponseBody String AddItems (elementos elementos) {String sql = "Insertar en elementos (id, título, nombre, detalle) valor (?,?,?,?)"; Objeto args [] = {items.getID (), items.gettitle (), items.getName (), items.getDetail ()}; int temp = jdbctemplate.update (sql, args); if (temp> 0) {return "Artículo agregado correctamente"; } return "ocurrió un nuevo error"; }Hagamos una prueba. Ingrese http: // localhost: 8080/elementos/agregue la herramienta de prueba de postman
Podemos ver que la nueva adición ha sido exitosa, de hecho es muy conveniente y no hay información de configuración engorrosa.
Las eliminaciones restantes, las operaciones de actualización y el nuevo código permanecen sin cambios, pero solo cambian en SQL, y no se da ninguna demostración aquí.
Todas las operaciones de consulta
/** * @return * Consulta toda la información */@RequestMapping ("/List") Public List <Map <String, Object >> ElementosList () {String sql = "Seleccionar * de elementos"; List <map <string, object >> list = jdbctemplate.queryForlist (SQL); lista de devolución; }Hagamos una prueba. Ingrese http: // localhost: 8080/elementos/lista en la herramienta de prueba de postman
Hemos visto que, incluidos los datos recién agregados, se ha encontrado.
Para aprender la operación JDBCTemplate de SpringBoot, todos los códigos de adición, deleción, modificación y búsqueda se escriben en la clase ItemSController, que también es conveniente para la demostración. El código se publica aquí y puede ejecutarlo si lo necesita.
paquete org.amuxia.start; import java.util.list; import java.util.map; importar org.springframework.beans.factory.annotation.aUtowired; importar org.springframework.context.annotation.componentscan; importar org.springframework.jdbc.core.jdbctemplate; importar org.springframework.web.bind.annotation.pathvariable; importar org.springframework.web.bind.annotation.requestMapping; importar org.springframework.web.bind.annotation.ResponseBody; importar org.springframework.web.bind.annotation.restController; @ComponentsCan @RestController @RequestMapping ("/items") clase pública itemScontroller {@autewired private jdbctemplate jdbctemplate; /** * @return * Consulta toda la información */@RequestMapping ("/List") Public List <Map <String, Object >> ElementosList () {String sql = "Seleccionar * de elementos"; List <map <string, object >> list = jdbctemplate.queryForlist (SQL); lista de devolución; }/** * @param id * @return * consulta un solo mensaje basado en el id */@RequestMapping ("/Detalle/{id}") Map público <String, Object> Detalle (@PathVariable int id) {map <string, object> map = null; List <map <string, object >> list = itemsList (); map = list.get (id); mapa de retorno; }/** * Nuevos datos * @param elementos * @return */@requestmapping ("/add") public @ResponseBody String AddItems (elementos elementos) {String sql = "Insertar en elementos (id, título, nombre, detalle) valor (?,?,?,?)"; Objeto args [] = {items.getID (), items.gettitle (), items.getName (), items.getDetail ()}; int temp = jdbctemplate.update (sql, args); if (temp> 0) {return "Artículo agregado correctamente"; } return "Artículo Se agregó error"; }/** * @param elementos * @return * Eliminar datos */@RequestMapping ("/del") public @ResponseBody String Delitems (elementos elementos) {String sql = "Eliminar los elementos donde id =?"; Objeto args [] = {items.getId ()}; int temp = jdbctemplate.update (sql, args); if (temp> 0) {return "artículo eliminar con éxito"; } return "Error eliminado del artículo"; }/** * @param elementos * @return * Operación de actualización */@RequestMapping ("/upd") public @ResponseBody String Upditems (elementos de elementos) {String sql = "Update elementos establecer Title =?, Detalle =? Where id =?"; Objeto args [] = {items.gettitle (), items.getDetail (), items.getID ()}; int temp = jdbctemplate.update (sql, args); if (temp> 0) {return "artículo modificado con éxito"; } return "Error en modificación"; }}Aquí hay una explicación
@ComponentsCan:
@ComponentsCan le dice a Spring qué clase de anotación será escaneada automáticamente por Spring y cargada en el contenedor de frijoles. Si tiene una clase identificada con la anotación @Controller, entonces si @ComponentsCan no se agrega para escanear automáticamente el controlador, el controlador no será escaneado por Spring, y no se cargará en el contenedor de resorte, y el controlador no funcionará.
Código de clase de inicio
paquete org.amuxia.start; importar org.springframework.boot.springapplication; importar org.springframework.boot.autoconfigure.enableautoconfiguration; importar org.springframework.web.bind.annotation.restController; @RestController @EnableAutoconfiguration Public Class App {public static void main (string [] args) {system.out.println ("inicio ..."); SpringApplication.run (itemscontroller.class, args); }}Resumir
Lo anterior es lo que le presentó el editor. SpringBoot usa JDBCTemplate para completar la función de la base de datos, la eliminación, la modificación y la función de búsqueda. Espero que sea útil para todos. Si tiene alguna pregunta, déjame un mensaje y el editor responderá a todos a tiempo. ¡Muchas gracias por su apoyo al sitio web de Wulin.com!