Сначала создайте новую простую таблицу данных и продемонстрируйте, используя эту таблицу данных
Сбросить таблицу, если существует `items`; Создать таблицу `items` (` `id` int (11) не null auto_increment,` title` varchar (255) по умолчанию Null, `name` varchar (10) по умолчанию NULL,` detail` varchar (255) по умолчанию null, первичный ключ (`id`)) Engine = innodb auto_increment = 7 Defaul Carset = utf8;
Ввести класс зависимости и соединения Maven
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency>
В файле Application.properties настройте класс драйвера, адрес базы данных, учетную запись базы данных, информация о пароле MySQL. Создать Application.properties в папке 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.driver. Spring.datasource.max-wait = 10000 Spring.datasource.min-iDle = 5 Spring.Datasource.inial-Size = 5 Server.port = 8080 Server.session.Timeout = 10 Server.tomcat.uri-Encoding = UTF-8
Создайте новый класс сущностей, свойства соответствуют поле SQL
пакет org.amuxia.start; Общедоступные элементы класса {Private Integer ID; Приватная строка название; Приватное название строки; Частная струнная деталь; public integer getId () {return id; } public void setId (Integer id) {this.id = id; } public String getTitle () {return title; } public void settitle (строка заголовка) {this.title = title; } public String getName () {return name; } public void setName (string name) {this.name = name; } public String getDetail () {return detail; } public void setDetail (String Detail) {this.detail = detail; } public items () {super (); // TODO Auto Generated Constructor Stub} Public Itements (INTEGER ID, заголовок строки, название строки, деталь строки) {super (); this.id = id; this.title = заголовок; this.name = name; this.detail = detail; } @Override public String toString () {return "items [id =" + id + ",, name =" + name + ", detail =" + detail + "]"; }}Новые операции
/** * Новые данные * @param элементы * @return */@requestmapping ("/add") public @Responsebody String AddItems (элементы элементов) {string sql = "Вставка в элементы (идентификатор, название, имя, подробное) значение (?,?,?,?)"; Object args [] = {item.getId (), item.getTitle (), items.getName (), item.getDetail ()}; int temp = jdbctemplate.update (sql, args); if (temp> 0) {return "Статья добавлена успешно"; } вернуть "новая ошибка произошла"; }Давайте сделаем тест. Введите http: // localhost: 8080/items/add в инструмент для тестирования почтальона
Мы можем видеть, что новое дополнение было успешным, оно действительно очень удобно, и нет никакой громоздкой информации о конфигурации.
Оставшиеся удаления, операции обновления и новый код остаются неизменными, но только изменения в SQL, и здесь нет демонстрации.
Все операции запросов
/** * @return * Запрос всех информации */@requestmapping ("/list") public list <map <string, object >> itemslist () {string sql = "select * из элементов"; Список <map <string, object >> list = jdbctemplate.queryforlist (sql); вернуть список; }Давайте сделаем тест. Введите http: // localhost: 8080/items/list в инструменте Testman Testment
Мы видели, что были обнаружены недавно добавленные данные.
Чтобы узнать работу Springboot JDBCTEMPLATE, все коды добавления, удаления, модификации и поиска записаны в классе ItemsController, что также удобно для демонстрации. Код размещен здесь, и вы можете запустить его, если он вам нужен.
пакет org.amuxia.start; импортировать java.util.list; импортировать java.util.map; Импорт org.springframework.beans.factory.annotation.autowired; Импорт org.springframework.context.annotation.componentscan; Импорт org.springframework.jdbc.core.jdbctemplate; Импорт org.springframework.web.bind.annotation.pathvariable; Импорт org.springframework.web.bind.annotation.requestmapping; Импорт org.springframework.web.bind.annotation.responsebody; Импорт org.springframework.web.bind.annotation.restcontroller; @Componentscan @restcontroller @requestmapping ("/items") public class controller {@autowired private jdbctemplate jdbctemplate; /** * @return * Запрос всех информации */@requestmapping ("/list") public list <map <string, object >> itemslist () {string sql = "select * из элементов"; Список <map <string, object >> list = jdbctemplate.queryforlist (sql); вернуть список; }/** * @param id * @return * Запрос одно сообщение на основе идентификатора */@requestmapping ("/detail/{id}") public map <string, объект> detail (@pathvarable int id) {map <string, object> map = null; Список <map <string, object >> list = itemslist (); map = list.get (id); карта возврата; }/** * Новые данные * @param элементы * @return */@requestmapping ("/add") public @Responsebody String addItems (элементы элементов) {string sql = "Вставка в элементы (идентификатор, заголовок, имя, подробное значение) значение (?,?,?,?)"; Object args [] = {item.getId (), item.getTitle (), items.getName (), item.getDetail ()}; int temp = jdbctemplate.update (sql, args); if (temp> 0) {return "Статья добавлена успешно"; } вернуть "статья добавлена ошибка"; }/** * @param элементы * @return * delete data */@requestmapping ("/del") public @Responsebody String delitems (элементы элементов) {String sql = "Удалить из элементов, где id =?"; Object args [] = {item.getId ()}; int temp = jdbctemplate.update (sql, args); if (temp> 0) {return "Статья Удалить успешно"; } вернуть "Статья Удаленная ошибка"; }/** * @param элементы * @return * Операция обновления */@requestmapping ("/upd") public @Responsebody String upringEms (элементы элементы) {string sql = "Обновление элементов SET title =? Object args [] = {item.getTitle (), items.getDetail (), item.getId ()}; int temp = jdbctemplate.update (sql, args); if (temp> 0) {return "статья успешно изменена"; } вернуть "ошибку в модификации"; }}Вот объяснение
@Componentscan:
@Componentscan сообщает Spring, какой класс аннотаций будет автоматически сканироваться к весне и загружен в контейнер с фасоли. Если у вас есть класс, идентифицированный с аннотацией @Controller, то если @ComponentsCan не добавляется для автоматического сканирования контроллера, контроллер не будет отсканирован к пружине и не будет загружен в пружинный контейнер, а контроллер не будет работать.
Запуск код класса
пакет org.amuxia.start; Импорт org.springframework.boot.springapplication; Импорт org.springframework.boot.autoconfigure.enableautoconfiguration; Импорт org.springframework.web.bind.annotation.restcontroller; @Restcontroller @enableautoconfiguration public class app {public static void main (string [] args) {system.out.println ("start ..."); SpringApplication.run (itemsController.class, args); }}Суммировать
Вышесказанное - это то, что редактор представил вам. Springboot использует jdbctemplate для завершения добавления базы данных, удаления, модификации и поиска. Я надеюсь, что это будет полезно для всех. Если у вас есть какие -либо вопросы, пожалуйста, оставьте мне сообщение, и редактор ответит всем вовремя. Большое спасибо за вашу поддержку сайту wulin.com!