Lihat contoh resmi: http://spring.io/guides/gs/relational-data-access/
1. Persiapan proyek
Buat tabel baru "t_order" setelah membuat database mysql
Atur asing_key_checks = 0;------------------------------------------- Struktur Tabel untuk `t_order`-- ---------------------------- Jatuhkan tabel jika ada` t_order`; Buat tabel `t_order` (` order_id` varchar (36) bukan null, `order_no` varchar (50)` `` `` `` ordault `` `ordault` `` ordoult `` `` `` `` `` `` `` `` `` `` `` `` `` ` int (11) null default, kunci primer (`order_id`)) engine = myisam default charset = utf8;------------------------------- Rekaman t_order-- -----------------------------
Ubah pom.xml
<Project xmlns = "http://maven.apache.org/pom/4.0.0" xmlns: xsi = "http://www.w3.org/2001/xmlschema-instance" xsi: schemalocation = "http:/maven.romp.romp.romp. http://maven.apache.org/xsd/maven-4.0.0.xsd "> <podelversion> 4.0.0 </modelversion> <groupid> com.github.carter659 </groupid> <Artifactid> Spring04 </arttifactid> </groupid> <ArTifacTid> Spring04 </Artifactid> <versi> 0.0.0.0.0.0.0.0.0.0.0.0.1.1.10.0.0.0.0.0.0.0.0.0.0.0.1RAPAGAGED> Spring04 </Artifactid> <versi> 0.0.0.0.0.0.0.0.0.0.0.0.0.1RAPAGE <name> spring04 </name> <rurl> http://maven.apache.org </ruRl> <partent> <groupid> org.springframework.boot </proupid> <Artifactid> Spring-boot-starter-parent </arttifactid> <preate> 1.4.2.2.release </Version> </Artifactid> </Version> </Versi </Version> </artifactid> </artifactid> </versi </version> </versi </version> <Project.Build.Sourceencoding> utf-8 </project.build.sourceencoding> <Java.version> 1.8 </java.version> </Properties> </Artidency> <Ruppendency> org. <dependency> <GroupId> org.springframework.boot </groupid> <ArtifactId> Spring-boot-devtools </arttifactid> <pilihan> true </portsional> </dependency> <ArtiFAcD> <GROPIDDRIF.SpringFramework.BOOT </groupidD> <ArtifactID> <GRUPTIDS <dependency> <GroupId> org.springframework.boot </groupid> <ArTifactId> Spring-boot-starter-jdbc </artifactid> </dependency> <dependency> <groupid> MySQL </groupid> <Artifactid> MySQL-Connector-Java </ArtiCids </ArtifactId> MySQL-Connector-Java </Articridy <GroupId> commons-dbcp </groupid> <ArTifactId> commons-dbcp </artifactid> </dependency> </dependency> <build> <dlugin> <lugin> <groupid> org.springframework.boot </artifin> <t canggih> <ArTifacTid> Spring-Boot-Boots-Maven-PlUBIN </ARTACID> <ArTifacTID> </art </ Build> </joy Project>
2. Tulis file kelas:
Ubah app.java
Paket com.github.carter659.spring04; impor org.springframework.boot.springapplication; impor org.springframework.boot.autoconfigure.springblogplication;/** Sumber: http:/wwww.cnblog.cnblog.ccom; */@SpringbootApplicationPublic Class App {public static void main (string [] args) {springApplication.run (app.class, args); }}Buat file pembawa data baru "order.java"
Paket com.github.carter659.spring04; import java.util.date;/** * Sumber blog: http://www.cnblogs.com/goodhelper/ * @author liu dong * */urutan kelas publik {public string id; string publik no; tanggal tanggal publik; kuantitas int publik; /** * hilangkan dapatkan set */}Buat Kelas Lapisan Persistensi Data Baru "orderdao.java"
Paket com.github.carter659.spring04; impor java.util.arraylist; import java.util.list; impor java.util.uuid; impor org.springframework.beans.factory.annotation.Autowired; impor org.springframework.jdbclbc.Anplclclcpl; org.springframework.jdbc.support.rowset.sqlrowset; impor org.springframework.stereotype.repository;/** * Sumber blog: http://www.cnblogs.com/goodhelper/ * @author liu dong * * @ @ @ @@author @@author dong * * @ @author @@author @author Jdbctemplate jdbctemplate; Daftar Publik <Torder> findAll () {Daftar <FORTER> DAFTAR = ARRAYLIST baru <> (); String sql = "pilih * dari t_order"; Sqlrowset rows = jdbctemplate.queryForrowset (sql, objek baru [] {}); while (rows.next ()) {order order = new order (); list.add (pesanan); order.id = rows.getString ("order_id"); order.no = rows.getString ("order_no"); order.date = rows.getDate ("order_date"); order.quantity = rows.getint ("kuantitas"); } daftar pengembalian; } pesanan umum get (string id) {pesanan pesanan = null; String sql = "pilih * dari t_order di mana order_id =?"; Sqlrowset rows = jdbctemplate.queryForrowset (sql, objek baru [] {id}); while (rows.next ()) {order = new order (); order.id = rows.getString ("order_id"); order.no = rows.getString ("order_no"); order.date = rows.getDate ("order_date"); order.quantity = rows.getint ("kuantitas"); } pesanan pengembalian; } public String Insert (pesanan pesanan) {string id = uuid.randomuuid (). ToString (); String sql = "masukkan ke t_order (order_id, order_no, order_date, kuantitas) nilai (?,?,?,?)"; jdbctemplate.update (sql, objek baru [] {id, order.no, new java.sql.date (order.date.getTime ()), order.quantity}); Return ID; } Pembaruan public void (pesanan pesanan) {string sql = "Perbarui t_order set order_no = ?, order_date = ?, kuantitas =? di mana order_id =?"; jdbctemplate.update (sql, objek baru [] {order.no, new java.sql.date (order.date.gettime ()), order.quantity, order.id}); } public void delete (string id) {string sql = "hapus dari t_order di mana order_id =?"; jdbctemplate.update (sql, objek baru [] {id}); }}Operasi pada database, seperti namanya:
FindAll-> Query All Data
Dapatkan-> Dapatkan Data Melalui ID
Masukkan-> Sisipkan data
Perbarui-> Ubah Data
Hapus-> Hapus Data
Buat pengontrol baru "MainController.java"
Paket com.github.carter659.spring04; impor java.util.hashmap; impor java.util.map; impor org.springframework.beans.factory.annotation.Autowired; impor org.spramework.stereotypy.stereType.notation. org.springframework.web.bind.annotation.postmapping; impor org.springframework.web.bind.annotation.requestbody; classcramework. Orderdao Orderdao Pribadi; @GetMapping ("/") public string index () {return "index"; } @PostMapping ("/save") public @ResponseBody peta <String, Object> save (@RequestBody Order Order) {MAP <String, Object> RAFT = HashMap baru <> (); if (stringutils.isnullorempty (order.id)) order.id = orderdao.insert (pesanan); else {ordeo.update (pesanan); } result.put ("id", order.id); hasil pengembalian; } @Postmapping ("/get") public @ResponseBody objek get (string id) {return orderdao.get (id); } @PostMapping ("/findAll") public @ResponseBody objek findAll () {return ordao.findall (); } @PostMapping ("/delete") public @ResponseBody Map <String, Object> Delete (String ID) {MAP <String, Object> RAZINE = HashMap baru <> (); orderdao.delete (id); result.put ("id", id); hasil pengembalian; }}3. Buat template thymeleaf baru
Buat file baru "SRC/Main/Resources/Templates/Index.html"
<! Doctype html> <html xmlns: th = "http://www.thymeleaf.org"> <head> <meta http-equiv = "konten tipe" content = "text/html; charset = utf-8"/<title> play spring boot-combined dengan jd-ccc-cc ccc </uTf-8 "/<title> play spring boot-combined dengan jd-ccc-cc ccc </uTF-8"/ src = "// cdn.bootcss.com/angular.js/1.5.6/angular.min.js"></script> <script type =" text/javascript ">/*<! [cdata [*/var app = angular.module ('app', []); app.controller ('MainController', function ($ rootscope, $ scope, $ http) {$ scope.data = {}; $ scope.rows = []; // tambahkan $ scope.add = function () {$ scope.data = {no: 'no.12345-date-230' {$ scope.data = {no: 'no.12345-{' ' } // Edit $ scope.edit = function (id) {for (var i in $ scope.rows) {var row = $ scope.rows [i]; $ scope.rows [i]; if (id == row.id) {$ scope.rows.splice (i, 1) $ scope.get (r.id); $ http ({url: '/get? id =' + id, metode: 'post',}). Sukses (function (data) {for (var i in $ scope.rows) {var row = $ scope.rows [i]; if (data.id == row.id) {row.no = data.no; row.date = date = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = data = no; data = data = data = data = data = data = no; data. $ scope.rows.push (data);}); /*]]>*/</script> </head> <body ng-app = "app" ng-controller = "maincontroller"> <h1> Mainkan Spring Boot-kombinasi dengan jdbc </h1> <h4> <a href = "http://www.cnblogs.com/goodhelper type = "Tombol" value = "add" ng-click = "add ()" /> <input type = "tombol" value = "save" ng-click = "save ()" /> <br /> <br /> <h3> Informasi daftar: </h3> <input id = "id" type = "hidden" ng-ng-model = "data. #a0c6e5 "> <tr> <td> no.: </td> <td> <input id =" no "ng-model =" data.no "/> </td> <td> Tanggal: </td> <td> <input ID =" Tanggal "NG-MODEL =" Data.date "/</> </td: tdput: tdputes: td: td: td: td: td: td: td: td: td: td: td: td: td: td: td: td: td: td: td: td: td: td: td: td: td: td: td: td: td: td: td: td: td: TD: tD: TD: TD: TD: TD: TD: TD: TD: TD: TD: TD: TD: TD: TD = id = "kuantitas" ng-model = "data.quantity"/> </td> </tr> </able> <br/> <h3> Daftar Daftar: </h3> <Table CellPacing = "1" Style = "Latar Belakang: #A0C6E5"> <tryty = "Text-laign: center; color: #0076 0076"> <tr style = "Text-onign: center; color: #0076 0076; <td> Operasi </td> <td> Nomor </td> <td> Tanggal </td> <td> Kuantitas </td> </tr> <ttr Ng-Repeat = "baris dalam baris" bgcolor = '#f4faff'> <td> <input ng-click = "edit (row.id)" ed "edit =" edit = "edit =" edit = "edit =" ng-click = "del (row.id)" value = "delete" type = "Tombol"/> </td> <td> {{row.no}} </td> <td> {{row.date} </td> <t/td </tdr> {row.quantity}} </td> <t/td </td </td </td </td </td </td> </td </td> </td </td> href = "http://www.cnblogs.com/goodhelper/"> klik untuk mengakses blog asli </a> </body> </html>Gunakan AJAX AngularJS untuk memanggil metode latar belakang Spring Boot MV.
4. Koneksi Basis Data
Buat file "SRC/Main/Resources/Application.Properties" baru
spring.dataSource.initialize = falsespring.datasource.url = jdbc: mysql: // localhost: 3306/demospring.datasource.username = rootpring.dataSource.password = spring.dataSource.driver-class-name = com
Struktur lengkapnya adalah:
5. Efek Operasi
Masukkan "http: // localhost: 8080/" di browser Anda
Tambahkan Data:
Simpan Data Baru:
Edit data:
Hapus Data:
Hapus efek penyelesaian:
Kode: https://github.com/carter659/spring-boot-04.git
Di atas adalah semua konten artikel ini. Saya berharap ini akan membantu untuk pembelajaran semua orang dan saya harap semua orang akan lebih mendukung wulin.com.