当前位置: 首页 > news >正文

什么是高端网站建设成都编程培训机构排名前十

什么是高端网站建设,成都编程培训机构排名前十,网站建设的客户,网页设计的岗位叫什么基于SpringBoot开发一个Restful接口 前言一、什么是SpringBoot#xff1f;二、实战---基于SpringBoot开发一个Restful接口1.开发前的准备工作1.1 添加相关依赖 #xff08;pom文件#xff09; 1.2 创建相关数据库和表1.3 数据库配置文件 2.实战开发---代码逻辑2.1 实体类2.2… 基于SpringBoot开发一个Restful接口 前言一、什么是SpringBoot二、实战---基于SpringBoot开发一个Restful接口1.开发前的准备工作1.1 添加相关依赖 pom文件 1.2 创建相关数据库和表1.3 数据库配置文件 2.实战开发---代码逻辑2.1 实体类2.2 Dao层代码逻辑2.3 Service 层逻辑层2.4 Controller 控制层代码逻辑2.5 Application 主程序 三、测试总结 前言 什么是Restful风格接口 Restful(Representational State Transfer)风格的API是一种软件架构风格设计风格而不是标准只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁更有层次更易于实现缓存等机制。 在Restful风格中用户请求的url使用同一个url而用请求方式getpostdeleteput…等方式对请求的处理方法进行区分这样可以在前后台分离式的开发中使得前端开发人员不会对请求的资源地址产生混淆和大量的检查方法名的麻烦形成一个统一的接口。 Restful风格接口的规定如下 GETSELECT从服务器查询可以在服务器通过请求的参数区分查询的方式。POSTCREATE在服务器新建一个资源调用insert操作。 PUTUPDATE在服务器更新资源调用update操作。 PATCHUPDATE在服务器更新资源客户端提供改变的属性。 DELETEDELETE从服务器删除资源调用delete语句。 提示以下是本篇文章正文内容下面案例可供参考 一、什么是SpringBoot Spring Boot是由Pivotal团队提供的全新框架其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置从而使开发人员不再需要定义样板化的配置。假如我们想简单的开发一个对外的接口那么只需要以下代码就可以了。 一个主程序启动springBoot----核心 SpringBootApplication public class Application {public static void main(String[] args) {SpringApplication.run(Application.class, args);} }控制层代码 RestController public class HelloController {RequestMapping(/hello)public String hello() { return Hello World;}}成功启动主程序之后编写控制层然后在浏览器输入 http://localhost:8080//hello 便可以查看信息。 二、实战—基于SpringBoot开发一个Restful接口 1.开发前的准备工作 1.1 添加相关依赖 pom文件 ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersionparentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion2.3.2.RELEASE/versionrelativePath/ !-- lookup parent from repository --/parentgroupIdcom.springboot/groupIdartifactIdspringbootdemo/artifactIdversion0.0.1-SNAPSHOT/versionnamespringbootdemo/namedescriptionDemo project for Spring Boot/descriptionpropertiesproject.build.sourceEncodingUTF-8/project.build.sourceEncodingjava.version1.8/java.version/propertiesdependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-thymeleaf/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-data-jpa/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-devtools/artifactIdoptionaltrue/optional/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactIdscopetest/scope/dependency!-- Spring Boot Mybatis 依赖 --dependencygroupIdorg.mybatis.spring.boot/groupIdartifactIdmybatis-spring-boot-starter/artifactIdversion1.2.0/version/dependency!-- MySQL 连接驱动依赖 --dependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion5.1.39/version/dependency/dependenciesbuildplugins!--运用SpringBoot 插件 使用spring-boot-devtools模块的应用,当classpath中的文件有改变时会自动重启--plugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactIdconfigurationforktrue/fork/configuration/plugin/plugins/build /project1.2 创建相关数据库和表 首先需要在MySql中创建一个数据库和一张数据库的名称为jdbc表名称为 user建表语句脚本如下: CREATE TABLE user (id int(11) NOT NULL AUTO_INCREMENT COMMENT ID,email varchar(255) NOT NULL COMMENT 邮箱,password varchar(255) NOT NULL COMMENT 密码,username varchar(255) NOT NULL COMMENT 姓名,PRIMARY KEY (id),UNIQUE KEY email (email) USING BTREE ) ENGINEInnoDB AUTO_INCREMENT2 DEFAULT CHARSETutf8;表中插入数据 INSERT INTO user VALUES (1, 1qq.com, 123456, 张三); INSERT INTO user VALUES (2, 2qq.com, 234567, 李四); INSERT INTO user VALUES (3, 3qq.com, 345678, 王五);1.3 数据库配置文件 接着需要使用application.properties进行一些自定义的配置例如数据源的连接配置等等。我这里的配置文件如下 ## 数据源配置 spring.datasource.urljdbc:mysql://localhost:3306/jdbc?useUnicodetruecharacterEncodingutf8 spring.datasource.usernameroot spring.datasource.password123456 spring.datasource.driver-class-namecom.mysql.jdbc.Driver## Mybatis 配置 # 配置为 com.pancm.bean 指向实体类包路径。 mybatis.typeAliasesPackagecom.springboot.bean # 配置为 classpath 路径下 mapper 包下* 代表会扫描所有 xml 文件。 mybatis.mapperLocationsclasspath\:mapper/*.xml2.实战开发—代码逻辑 成功创建好数据库、数据表以及下载好相应jar包、配置文件等这些准备工作之后。接下来正式进行SpringBoot项目的开发。 2.1 实体类 前面在数据库中创建了一张user表这里先创建一个bean包然后该包下创建一个对应该表的User实体类里面的字段对应user表的字段代码如下 package com.springboot.springbootdemo.bean;public class User {private long id;private String email;private String password;private String username;public long getId() {return id;}public void setId(int id) {this.id id;}public String getEmail() {return email;}public void setEmail(String email) {this.email email;}public String getPassword() {return password;}public void setPassword(String password) {this.password password;}public String getUsername() {return username;}public void setUsername(String username) {this.username username;}}2.2 Dao层代码逻辑 在dao层的逻辑hibernate和mybatis一般都有两种方式实现数据库的CRUD: 第一种是xml的mapper配置。 第二种是使用注解Insert、Select、Update、Delete 这些来完成。 首先新建一个dao包并在dao包下新建一个接口命名为UserDao代码如下 package com.springboot.springbootdemo.dao;import com.springboot.springbootdemo.bean.User; import org.apache.ibatis.annotations.*;import java.util.List;/**在接口上添加了这个注解表示这个接口是基于注解实现的CRUD**/ Mapper public interface UserDao {/*** 新增数据*/Insert(insert into user(id,email,password,username) values (#{id},#{email},#{password},#{username}))void addUser(User user);/*** 修改数据*/Update(update user set username#{username},password#{password} where id#{id})void updateUser(User user);/*** 删除数据*/Delete(delete from user where id#{id})void deleteUser(int id);/*** 根据id查询数据**/Select(select id,email,password,username from user where username#{userName})User findByName(Param(userName) String userName);/*** 查询所有数据*/Select(select id,email,password,username FROM user)ListUser findAll(); }说明 mapper : 在接口上添加了这个注解表示这个接口是基于注解实现的CRUD。 Results: 返回的map结果集property 表示User类的字段column 表示对应的数据库的字段。 Param:sql条件的字段。 Insert、Select、Update、Delete:对应数据库的增、查、改、删。 2.3 Service 层逻辑层 接着新建一个service包然后在service包下新建一个userservice接口和UserServiceImpl类实现userservice接口代码分别如下代码如下 UserService接口 package com.springboot.springbootdemo.service;import com.springboot.springbootdemo.bean.User;import java.util.List;public interface UserService {/*** 新增用户* param user* return*/boolean addUser(User user);/*** 修改用户* param user* return*/boolean updateUser(User user);/*** 删除用户* param id* return*/boolean deleteUser(int id);/*** 根据名字查询用户信息* param userName*/User findUserByName(String userName);/*** 查询所有数据* return*/ListUser findAll(); }UserServiceImpl实现类 package com.springboot.springbootdemo.service;import com.springboot.springbootdemo.bean.User; import com.springboot.springbootdemo.dao.UserDao; import org.springframework.beans.factory.annotation.Autowired;import java.util.List;public class UserServiceImpl implements UserService {Autowiredprivate UserDao userDao;Overridepublic boolean addUser(User user) {boolean flagfalse;try{userDao.addUser(user);flagtrue;}catch(Exception e){e.printStackTrace();}return flag;}Overridepublic boolean updateUser(User user) {boolean flagfalse;try{userDao.updateUser(user);flagtrue;}catch(Exception e){e.printStackTrace();}return flag;}Overridepublic boolean deleteUser(int id) {boolean flagfalse;try{userDao.deleteUser(id);flagtrue;}catch(Exception e){e.printStackTrace();}return flag;}Overridepublic User findUserByName(String userName) {return userDao.findByName(userName);}Overridepublic ListUser findAll() {return userDao.findAll();} }2.4 Controller 控制层代码逻辑 新建一个controller包然后新建一个usercontroller类具体代码如下 package com.springboot.springbootdemo.controller; import com.springboot.springbootdemo.bean.User; import com.springboot.springbootdemo.service.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController;import java.util.List;RestController RequestMapping(value /do/user) public class UserController {Autowired private UserService userService;RequestMapping(value /user, method RequestMethod.POST)public boolean addUser(RequestBody User user) {return userService.addUser(user);}RequestMapping(value /user, method RequestMethod.PUT)public boolean updateUser(RequestBody User user) {return userService.updateUser(user);}RequestMapping(value /user, method RequestMethod.DELETE)public boolean delete(RequestParam(value userId, required true) int userId) {return userService.deleteUser(userId);}RequestMapping(value /user, method RequestMethod.GET)public User findByUserName(RequestParam(value userName, required true) String userName) {return userService.findUserByName(userName);}RequestMapping(value /userAll, method RequestMethod.GET)public ListUser findByUserAge() {return userService.findAll();} }说明: RestController默认类中的方法都会以json的格式返回。 RequestMapping: 接口路径配置。 method : 请求格式。 RequestParam: 请求参数。 RequestBody该注解用于定义请求正文内容类型将参数自动解析成该类的一个实例。 2.5 Application 主程序 在创建springboot项目的时候下面的代码就默认生成 package com.springboot.springbootdemo;import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;SpringBootApplication MapperScan(com.springboot.springbootdemo.dao) public class SpringbootdemoApplication {public static void main(String[] args) {SpringApplication.run(SpringbootdemoApplication.class, args);} } 说明 SpringApplication从main方法启动Spring应用的类。 默认它会执行以下步骤 1.创建一个合适的ApplicationContext实例 取决于classpath。 2.注册一个CommandLinePropertySource以便将命令行参数作为Spring properties。 3.刷新application context加载所有单例beans。 4.激活所有CommandLineRunner beans。直接使用main启动该类SpringBoot便自动化配置了。该类的一些注解说明 SpringBootApplication开启组件扫描和自动配置。 MapperScan: mapper 接口类扫描包配置 三、测试 开发完上述代码之后进行下代码测试看是否实现了效果。先启动启动Application类然后这里使用postman工具进行接口的测试就不写前端代码了在实际的开发过程中现在很多的项目都是实现了前后端分离所以一般前后端分开开发通常后台的逻辑就需要自己进行接口测试一般我们则使用postman。 敲黑板首先启动postman然后新建一个一个url地址将测试地址输入进去。 【测试一】先来验证查询所有的数据逻辑 http://localhost:8080/do/user/userAll【测试二】 接下来测试删除数据 http://localhost:8080/do/user/user?id3id为3的数据已经被删除了 【测试三】测试根据姓名查询数据 http://localhost:8080/do/user/user?userName张三【测试四】测试更新数据 http://localhost:8080/do/user/user数据库中id为2的数据已被更新 【测试五】测试新增数据 http://localhost:8080/do/user/user 数据库中新增了id为3的数据 总结 以上就是springboot如何开发一个具有Restful风格的接口的全部内容最后如果觉得本文写得不错就点下赞和再看推荐给更多的人呗。
http://www.hkea.cn/news/14279889/

相关文章:

  • 免费论坛网站建设网络热词
  • 做网站用eclipse吗怎么建立公司网站平台
  • p2p网站设计2022拉新推广赚钱的app
  • 做气球装饰可以上哪些网站如何进行搜索引擎优化 简答案
  • ip对网站作用二手交易平台 网站开发
  • 移动4G网站建设编程机构
  • 分类信息网站平台有哪些路桥区高质量营销型网站建设
  • 表单大师 做网站手机端网站建设哪家好
  • 阿里云服务器网站备份衡阳城乡建设局网站
  • 商城网站的psd模板免费下载东莞做网站公司多少钱
  • 怀化网站排名优化wordpress要装iis吗
  • 给公司创建网站流程外销网站建设
  • 做网站的保证承诺wordpress关注公众号可见
  • 东昌府聊城做网站公司河北省住房和城乡建设部网站
  • app网页设计网站网络营销推广的研究方向
  • 深圳石岩做网站命理网站开发
  • 淘客类网站如何做排名wordpress 添加控件
  • 网站建设基础实验1实名认证的重要性
  • c#如何做公司网站如何将vs做的网站备份出来6
  • 网站怎么做伪静态页面门户模板
  • 温州建网站wordpress 图片居中
  • 怎么做网站界面分析aliyun wordpress
  • 网站运营与管理实验报告连云港企业网站建设
  • 安阳企业网站优化外包建设电动摩托车官网
  • seo网站推广怎么收费成都网站建设 工作室
  • 河北建设银行石家庄分行招聘网站网站域名ip查询
  • 凤冈县住房和城乡建设局网站佛山 品牌设计
  • 淮北做网站规模以上工业企业个数
  • 张家港网站建设培训网站后台网址忘记了 php
  • 做五金行业的外贸网站西安楼市最新房价