Spring Data JPA的使用

实体层

package com.littlepage.domain;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table; @Entity
@Table(name="city")
public class City {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
private String name;
public City() {
super();
}
public City(Integer id, String name) {
super();
this.id = id;
this.name = name;
}
public 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;
}
@Override
public String toString() {
return "City [id=" + id + ", name=" + name + "]";
}
}

Dao层只需要继承JPARepository就可以

package com.littlepage.dao;

import org.springframework.data.jpa.repository.JpaRepository;

import com.littlepage.domain.City;

public interface CityRepository extends JpaRepository<City, Integer> {

}

Service层的增删改查操作

package com.littlepage.service;

import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.littlepage.dao.CityRepository;
import com.littlepage.domain.City; @Service
public class CityService {
@Autowired
CityRepository cityDao; public List<City> findAll(){
return cityDao.findAll();
} public String add(City city) {
if(cityDao.existsById(city.getId())) {
return "添加失败";
}
cityDao.save(city);
return "添加成功";
} public String remove(Integer id) {
if(cityDao.existsById(id)) {
cityDao.deleteById(id);;
return "删除成功";
}
return "不存在";
} public String modify(City city) {
if(!cityDao.existsById(city.getId())) {
return "不存在";
}
cityDao.save(city);
return "修改成功";
}
}

application.properties

spring.datasource.url=jdbc:mysql://120.78.206.78:3306/world
spring.datasource.username=root
spring.datasource.password=Root123..

JSP的使用

<!-- https://mvnrepository.com/artifact/javax.servlet/jstl -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>

<!-- https://mvnrepository.com/artifact/org.apache.tomcat/tomcat-jasper -->
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jasper</artifactId>
<version>9.0.21</version>
</dependency>

添加依赖jasper和jstl

SpringBoot默认从main下寻址,在application.properties里面配一下前缀后缀

spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp

jsp中可以用jstl表达式取出scope域的内容

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
<body> <table> <tr>
<th>id</th>
<th>name</th>
</tr> <c:forEach items="${list}" var="item"> <tr>
<td>${item.id }</td>
<td>${item.name }</td> </tr> </c:forEach> </table>
</body>
</html>

controller代码

@Controller
@RequestMapping("city")
public class CityController { @Autowired
CityService citySrv; @RequestMapping("/jspp")
public String s(Model model) {
List<City> list=citySrv.findAll();
model.addAttribute("list",list);
return "list";
} }

显示截图

易错点:使用jsp一定要从maven中取消thymeleaf引擎,不然会报错误

最新文章

  1. VMware-存储断网之后无法添加vmx到清单
  2. 【GSM】GTM900C的应用——短信
  3. Python:eval的妙用和滥用
  4. PostgresSQL的安装与基本命令使用
  5. 微软CodeDom模型学习笔记(全)
  6. Caffe框架下的图像回归测试
  7. c基础回顾
  8. Socket 与 WebSocket
  9. Oracle 查询系统所有用户信息
  10. PHP创建缩略图造成图片质量低下的完美解决方法
  11. openstack排错
  12. 反射认识_03_改变成员变量Fields
  13. CURL使用
  14. 数据库SQLite应用
  15. Mysql DB2等数据库分页的实现
  16. 转:基于HTTP协议的轻量级开源简单队列服务:HTTPSQS
  17. [LeetCode]题解(python):058-Length of Last Word
  18. eclipse快捷键 自己使用简单总结
  19. 201521123061 《Java程序设计》第二周学习总结
  20. webpack配置接口路径

热门文章

  1. PHP基本语句
  2. eclipse subclipse svn 插件安装使用
  3. 二十:jinja2之加载静态文件
  4. Linux常用命令:修改文件权限chmod 754/744
  5. 【转】WEB技术发展简史
  6. eureka配置参数
  7. 运行RGB-DSLAM的一些报错及处理方法
  8. token防爆破?
  9. 滚动翻页vue
  10. websocket服务器推送 (node+express+vue+socket)