第五节:SpringBoot的数据库CRUD
来源:互联网 发布:get是什么意思网络上的 编辑:程序博客网 时间:2024/06/05 13:41
pom.xml配置文件
<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.xiaowen</groupId><artifactId>SpringBootDemo</artifactId><version>0.0.1-SNAPSHOT</version><packaging>jar</packaging><name>SpringBootDemo</name><description>Demo project for Spring Boot</description><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.5.6.RELEASE</version><relativePath/> <!-- lookup parent from repository --></parent><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><java.version>1.8</java.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-configuration-processor</artifactId><optional>true</optional></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-freemarker</artifactId></dependency><dependency> <groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope></dependency><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId></dependency></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>application.properties配置文件
#配置tomcat端口server.port=8088#配置数据源spring.datasource.driver-class-name=com.mysql.jdbc.Driverspring.datasource.url=jdbc:mysql://localhost:3306/demospring.datasource.username=rootspring.datasource.password=123456spring.jpa.hibernate.ddl-auto=updatespring.jpa.show-sql=true
这里我们也可以把application.properties修改成application.yml 主流格式
内容也改成yml规范格式
server: port: 8088 context-path: / spring: datasource: driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql://localhost:3306/demo username: root password: 123456 jpa: hibernate.ddl-auto: update show-sql: trueyml格式有个注意点 冒号后面一定要加个空格
还有我们把context-path改成/方便开发应用编写实体类
package com.xiaowen.model;import javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.Id;import javax.persistence.Table;@Entity@Table(name="tb_book")public class Book {private Integer id;private String name;private String author;private String publicationdate;private String publication;private Double price;private String image;private String remark;@Id@GeneratedValuepublic Integer getId() {return id;}public void setId(Integer id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getAuthor() {return author;}public void setAuthor(String author) {this.author = author;}public String getPublicationdate() {return publicationdate;}public void setPublicationdate(String publicationdate) {this.publicationdate = publicationdate;}public String getPublication() {return publication;}public void setPublication(String publication) {this.publication = publication;}public Double getPrice() {return price;}public void setPrice(Double price) {this.price = price;}public String getImage() {return image;}public void setImage(String image) {this.image = image;}public String getRemark() {return remark;}public void setRemark(String remark) {this.remark = remark;}}dao接口类
package com.xiaowen.dao;import org.springframework.data.jpa.repository.JpaRepository;import com.xiaowen.model.Book;/** * 图书接口 * @author xiaowen * */public interface BookDao extends JpaRepository<Book,Integer>{}Controller类
package com.xiaowen.controller;import java.util.List;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.PathVariable;import org.springframework.web.bind.annotation.PostMapping;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import org.springframework.web.bind.annotation.RestController;import org.springframework.web.servlet.ModelAndView;import com.xiaowen.dao.BookDao;import com.xiaowen.model.Book;/** * CRUD * @author xiaowen */@RestController@RequestMapping("/book")public class BookController {@Autowiredprivate BookDao bookDao;/** * 查询全部图书 * @param mv * @return */@RequestMapping("/list")public ModelAndView list(ModelAndView mv){ mv.addObject("bookList", bookDao.findAll()); mv.setViewName("bookList"); return mv;}/** * 添加图书 * @param book * @return */@RequestMapping(value="add",method=RequestMethod.POST)public String add(Book book){bookDao.save(book);return "forward:book/list";}@GetMapping(value="/preUpdate/{id}")public ModelAndView preUpdate(@PathVariable("id") Integer id,ModelAndView mv){mv.addObject("book", bookDao.getOne(id));mv.setViewName("bookUpdate");return mv;}/** * 修改图书 * @param book * @return */@PostMapping(value="/update")public String update(Book book){bookDao.save(book);return "forward:/book/list";}/** * 删除图书 * @param id * @return */@RequestMapping(value="/delete",method=RequestMethod.GET)public String delete(Integer id){bookDao.delete(id);return "forward:/book/list";}}booklist.ftl模板
<!DOCTYPE html><html><head><meta charset="UTF-8"><title>图书管理页面</title></head><body><a href="/bookAdd.html">添加图书</a> <table> <tr> <th>编号</th> <th>图书名称</th> <th>作者</th> <th>出版日期</th> <th>出版社</th> <th>价格</th> <th>封面图片</th> <th>详细描述</th> <th>操作</th> </tr> <#list bookList as book> <tr> <td>${book.id}</td> <td>${book.name}</td> <td>${book.author}</td> <td>${book.publicationdate}</td> <td>${book.publication}</td> <td>${book.price}</td> <td>${book.image}</td> <td>${book.remark}</td> <td> <a href="/book/preUpdate/${book.id}">修改</a> <a href="/book/delete?id=${book.id}">删除</a> <a href="/book/delete?id=${book.id}">删除</a> </td> </tr> </#list> </table> </body></html>
bookAdd.html
<!DOCTYPE html><html><head><meta charset="UTF-8"><title>图书添加界面</title></head><body><form action="book/add" method="post"> 图书名称:<input type="text" name="name"/><br/> 作者:<input type="text" name="author"/><br/> 出版日期:<input type="text" name="publicationdate"/><br/> 出版社:<input type="text" name="publication"/><br/> 价格:<input type="text" name="price"/><br/> 封面图片:<input type="text" name="image"/><br/> 详细描述:<textarea rows="6" cols="20" name="remark"></textarea><br> <input type="submit" value="提交"/></form></body></html>
bookupdate.ftl模板<!DOCTYPE html><html><head><meta charset="UTF-8"><title>图书更新页面</title></head><body><form action="/book/update" method="post"><input type="hidden" name="id" value="${book.id}"/>图书名称:<input type="text" name="name" value="${book.name}"/><br/> 作者:<input type="text" name="author" value="${book.author}"/><br/>出版日期:<input type="text" name="publicationdate" value="${book.publicationdate}"/><br/> 出版社:<input type="text" name="publication" value="${book.publication}"/><br/>价格:<input type="text" name="price" value="${book.price}"/><br/>封面图片:<input type="text" name="image" value="${book.image}"/><br/>详细描述:<textarea rows="6" cols="20" name="remark" >${book.remark}</textarea><br><input type="submit" value="提交"/></form></body></html>
启动类代码
阅读全文
1 0
- 第五节:SpringBoot的数据库CRUD
- 2015.1.8,第五节课Android SQLite数据库的操作
- C#的第五节课
- 第五节,正则的扩展
- 第五节:蜂鸣器的驱动程序
- 第五节 hive的安装
- 利用springboot对oracle中数据库表的增删改查crud
- 完整 简单的springboot crud操作
- 第五节:Quzrtz 的 线程池
- 第五节(Meta的网页跳转)
- 第五节cocos2dx的jni部分
- 第五节:精灵的使用介绍
- 第五章第五节-bean的范围
- js第五节-函数参数的传递
- 第五节:浏览器的基本操作
- Sql Server 数据库的CRUD
- ThinkPHP对数据库的CRUD
- MySQL数据库的CRUD操作
- C++文件操作——按行读取txt文本文件
- ES6神奇的import...from...命令
- android创建目录不成功
- multiset
- PAT-AL 1013. Battle Over Cities
- 第五节:SpringBoot的数据库CRUD
- 生产库,查询库和测试库的区别
- 基于深度学习的视频检测(一)
- DAN —— 人脸关键点
- Android 显示输入法中的emoji表情以及String字符串转码
- Android系统的ko模块加载
- delphi dbgrid行颜色改变
- hdu4975 A simple Gaussian elimination problem.正确解法 最大流+删边判环
- 【PAT】【Advanced Level】1089. Insert or Merge (25)