SpringBoot使用JSP

1.创建一个webapp子项目

2.导入依赖

<!--
配置springboot的父节点依赖,之后引入就不需要添加version配置了!
springboot会自动选择最合适的版本进行添加依赖
-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.1.RELEASE</version>
</parent> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<!--指定JDK版本 我们使用的是1.8,不配置默认环境是1.6 -->
<java.version>1.8</java.version>
</properties> <dependencies>
<dependency>
<!-- spring-boot-starter-web是为我们提供了包括mvc,aop等需要的一些jar -->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<!-- 因为我们已经配置了 parent 中的version 所以这里不需要指定version了 -->
</dependency> <!-- Spring-boot-devtools -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
<!-- 配置servlet需要的依赖 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
</dependency>
<!-- 配置jstl标签库需要的依赖 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency> <!-- 添加tomcat的支持 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
</dependencies>

3.创建一个application.yml文件

spring:
mvc:
view:
suffix: .jsp
prefix: /jsp/

4.编辑Controller

@Controller
@RequestMapping("/jsp")
public class JSPController {
@RequestMapping("/first")
public String jsp(Model model){
model.addAttribute("name","张三");
return "index";
}
}

5.创建一个jsp文件

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>hehe</title>
</head>
<body>
<h2>呵呵,欢迎:${name}1234</h2>
</body>
</html>

6.启动运行

SpringBoot使用thymeleaf

1.pom文件中增加thymeleaf的依赖和版本号

<!-- 添加thymeleaf模版的依赖 -->

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-thymeleaf</artifactId>

</dependency>

<thymeleaf.version>3.0.0.RELEASE</thymeleaf.version>

<thymeleaf-layout-dialect.version>2.0.0</thymeleaf-layout-dialect.version>

2.application.yml文件中新增thymeleaf配置

 3.在resources中创建templates文件夹

并且创建一个index.html

4.创建一个entity  Student实体类

public class Student {
private Integer id;
private String name;
}

5.编写Controller控制器

@Controller
public class thyController {
@RequestMapping("/thy")
public String thy(Model model){
List<Student> list = new ArrayList<>();
Student stu1 = new Student(1,"张三");
Student stu2 = new Student(2,"李四");
Student stu3 = new Student(3,"王大爷是弟弟,垃圾"); list.add(stu1);
list.add(stu2);
list.add(stu3); model.addAttribute("stulist",list);
return "index";
}
}

6.书写index.html中的代码

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.w3.org/1999/xhtml">
<head>
<meta charset="UTF-8">
<title>temples</title>
</head>
<body>
<table border="1">
<tr>
<td>学生编号</td>
<td>学生姓名</td>
</tr>
<tr th:each="stu:${stulist}">
<td th:text="${stu.id}"></td>
<td th:text="${stu.name}"></td>
</tr>
</table>
</body>
</html>

7.运行效果

SpringBoot 与JPA

1. 实现数据的增删改查

  1.1:在pom文件中引入需要的依赖

   

  <!--  引入mysql需要的依赖  -->

    <dependency>  

            <groupId>mysql</groupId>  

            <artifactId>mysql-connector-java</artifactId>  

   </dependency>  

    <!--  引入spring data jpa需要的依赖  -->

    <dependency>  

            <groupId>org.springframework.boot</groupId>  

            <artifactId>spring-boot-starter-data-jpa</artifactId>  

   </dependency>

2.创建resources文件夹创建application.yml文件进行编写

##数据库四大连接参数
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql:///springdatajpa
username: root
password: 123456
##jpa表的生成策略
jpa:
hibernate:
ddl-auto: update

3.编写entity

@Entity
public class Grade {
@Id
@GeneratedValue(strategy= GenerationType.AUTO)
private Integer grade_id;
private String grade_name; public Integer getGrade_id() {
return grade_id;
} public void setGrade_id(Integer grade_id) {
this.grade_id = grade_id;
} public String getGrade_name() {
return grade_name;
} public void setGrade_name(String grade_name) {
this.grade_name = grade_name;
}
}

4.编写dao层

/**
* CrudRepository<实体,主键数据类型>
*/
@Repository
public interface IGradeMapper extends CrudRepository<Grade,Integer> {
}

5.编写增删改查的方法service

public interface IGradeService {
public Grade insertGrade(Grade grade); public Grade updateGrade(Grade grade); public void deleteGrade(Integer id); public Iterable<Grade> getAll();
}

6.编写实现类

@Service("iGradeService")
public class IGradeServcieImpl implements IGradeService {
@Resource
private IGradeMapper iGradeMapper; @Override
public Grade insertGrade(Grade grade) {
return iGradeMapper.save(grade);
} @Override
public Grade updateGrade(Grade grade) {
return iGradeMapper.save(grade);
} @Override
public void deleteGrade(Integer id) {
iGradeMapper.delete(id);
}
@Override
public Iterable<Grade> getAll() {
return iGradeMapper.findAll();
}
}

7.创建Controller层进行编写

@RestController
@RequestMapping("/IGradeController")
public class IGradeController {
@Resource
private IGradeService iGradeService; //新增数据
@RequestMapping("/insertGrade")
public Grade insertGrade(){
Grade grade=new Grade();
grade.setGrade_name("Y2");
return iGradeService.insertGrade(grade);
}
  //修改数据
@RequestMapping("/updateGrade")
public Grade updateGrade(){
Grade grade=new Grade();
grade.setGrade_id(2);
grade.setGrade_name("S3");
return iGradeService.updateGrade(grade);
}
  //删除数据
@RequestMapping("/deleteGrade")
public void deleteGrade(){
iGradeService.deleteGrade(1);
}
//查看数据
@RequestMapping("/getAllGrade")
public Iterable<Grade> getAllGrade(){
return iGradeService.getAll();
}
}

8.运行查看效果

这里已经添加成功了我们可以看一下数据库

现在我们来看一下修改

可以看到现在编号为3的数据值为S2

访问http://localhost:8080/IGradeController/updateGrade

接下来进行删除

访问http://localhost:8080/IGradeController/deleteGrade

接下来进行查看

springboot(二)的更多相关文章

  1. spring-boot(二)

    学习文章来自:http://www.ityouknow.com/spring-boot.html web开发 spring boot web开发非常的简单,其中包括常用的json输出.filters. ...

  2. 初涉springboot(二)

    概述 1.环境说明 2.HelloWorld项目细节   3.小结 一. 关于环境补充 在上一篇的HellWorld项目中,我们构建SpringBoot项目,采用的是jdk1.8版本,springbo ...

  3. springboot(二十二)-sharding-jdbc-读写分离

    前面我们使用sharding-jdbc配置了分库分表.sharding-jdbc还有个用法,就是实现读写分离. 什么时候需要或者可以使用读写分离? 当我们的项目所使用的数据库查询的访问量,访问频率,及 ...

  4. springboot(二).springboot整合logback用于日志输出

    springboot整合logback用于日志输出 我们项目的基本框架已经完成,http请求已经可以访问,现在给我们的框架添加日志记录的功能并能将每天的记录记录到文件中去 在这里,我们使用logbac ...

  5. SpringBoot(二) -- SpringBoot配置

    一.配置文件 SpringBoot可以使用两种类型的配置文件(文件名固定): application.properties application.yml 配置文件的作用就是来修改SpringBoot ...

  6. springboot(二):web综合开发

    上篇文章介绍了spring boot初级教程:spring boot(一):入门篇,方便大家快速入门.了解实践Spring boot特性:本篇文章接着上篇内容继续为大家介绍spring boot的其它 ...

  7. Springboot(二):Spring Boot 之 HelloWorld

    关于项目的创建不再解释,需要了解的请参考: Springboot(一):使用Intellij中的Spring Initializr来快速构建Spring Boot工程 目录结构: 首先我们在上一项目的 ...

  8. SpringBoot(二):设置springboot同一接口程序启动入口

    根据上一篇文章中搭建了一个springboot简单工程,在该工程中编写HelloWordController.java接口类,并在该类中写了一个main函数,做为该类的接口服务启动入口.此时如果新增多 ...

  9. Spring-boot(二)yml文件的使用

    上一章创建了一个简单的springboot项目,配置可以说非常的简单. 不过,在实际开发中不可能都用默认的配置,还是需要根据自己的实际项目需求有自定义的配置的. 比如:端口号需要变更,模板引擎的缓存开 ...

  10. 转:springboot(二):web综合开发

    web开发 spring boot web开发非常的简单,其中包括常用的json输出.filters.property.log等 json 接口开发 在以前的spring 开发的时候需要我们提供jso ...

随机推荐

  1. 测试函数——python编程从入门到实践

    测试函数 学习测试,得有测试的代码.下面是一个简单的函数: name_function.py def get_formatted_name(first, last): ""&quo ...

  2. Linux基础(09)aio高级编程

    1.出于安全性 Linux有一个机制 应用层和内核层是无法互相直接读取内存的, 他们要互相读取数据是有一个拷贝过程的, 如: 应用层要读取内核层的数据就调用read(), 内核就会先把数据copy到一 ...

  3. 网格搜索与K近邻中更多的超参数

    目录 网格搜索与K近邻中更多的超参数 一.knn网格搜索超参寻优 二.更多距离的定义 1.向量空间余弦相似度 2.调整余弦相似度 3.皮尔森相关系数 4.杰卡德相似系数 网格搜索与K近邻中更多的超参数 ...

  4. nmon2influxdb+grafana:服务监控可视化部署

    在工作中,无论是定位线上问题,还是性能优化,都需要对前端.后台服务进行监控.而及时的获取监控数据,能更好的帮助技术人员排查定位问题. 前面的博客介绍过服务端监控工具:Nmon使用方法及利用easyNm ...

  5. ArcGIS加载数据中常用的File文件方法总结

    在介绍ArcGIS中各种数据的打开方法时,我们用到了许多对于File文件的操作,在此做一个常用用法的总结.例如, 介绍ArcGIS中各种数据的打开方法——mxd(地图文档) 以方法一为例:运用Load ...

  6. Java自学-类和对象 构造方法

    怎么使用 Java 构造方法? 通过一个类创建一个对象,这个过程叫做实例化 实例化是通过调用构造方法(又叫做构造器)实现的 步骤 1 : 什么是构造方法 方法名和类名一样(包括大小写) 没有返回类型 ...

  7. 微信小程序项目开发实战:用WePY、mpvue、Taro打造高效的小程序》(笔记4)支持React.js语法的Taro框架

    Taro本身实现的情况类似于mpvue,mpvue的未来展望中也包含了支付宝小程序,现在的版本中,也可以使用不同的构建命令来构建出百度小程序的支持,如第10章所示,但是现在Taro先于mpvue实现了 ...

  8. JavaWeb 之 Listener:监听器

    一.概述 1.事件监听机制 事件:        一件事情 事件源:    事件发生的地方 监听器:    一个对象 注册监听: 将事件.事件源.监听器绑定在一起. 2.监听器概念 当事件源上发生某个 ...

  9. python检测远程udp端口是否打开的代码

    研发过程,把开发过程较好的代码收藏起来,如下的代码内容是关于python检测远程udp端口是否打开的代码,希望对各朋友有较大帮助. import socketimport threadingimpor ...

  10. idea安装与注册码破解

    idea安装与注册码破解 https://www.cnblogs.com/jajian/p/7989032.html