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

网站建设接私单百度广告标识

网站建设接私单,百度广告标识,网站怎么做组织图,满足客户的分销管理系统一、目标 本文是【H2实践】之认识 H2,【H2实践】之 SpringBoot 整合的后续。前文分别介绍了 H2 及其简单使用,并完成了 H2 与 SpringBoot 的整合。本文将紧接 【H2实践】之 SpringBoot 整合 探索实用 SpringBoot 结合 JPA 通过 web 接口操作 H2 数据库的…

一、目标

本文是【H2实践】之认识 H2,【H2实践】之 SpringBoot 整合的后续。前文分别介绍了 H2 及其简单使用,并完成了 H2 与 SpringBoot 的整合。本文将紧接 【H2实践】之 SpringBoot 整合 探索实用 SpringBoot 结合 JPA 通过 web 接口操作 H2 数据库的目标

主要实现目标:
1、定义数据模型 User ,拥有 id 、age 、 name 、passwd 四个属性,
2、创建 /user/add?id={id} 接口实现数据写入到 H2
3、测试 H2 数据的持久化

二、实践

1、数据模型层

创建 domain 文件夹作为数据模型的包

创建一个 User 数据模型,其包含 idnameagepasswd 四个字段。使用 @Id 指定字段 id 为主键,使用 @Table 指定表名为 tb_user

package com.xzbd.jh2.domain;import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;@Entity
@Data
@AllArgsConstructor
@NoArgsConstructor
@Table(name = "tb_user")
public class User {@Idprivate Long id;private String name;private String passwd;private Integer age;
}

2、Rerpository 层

应用 ORM 层选用 JPA 框架,JPA 的实现需要创建 Repository 。
创建 repostory 文件夹作为 DAO 层的包
创建 UserRepository 如下:

package com.xzbd.jh2.repostory;import com.xzbd.jh2.domain.User;import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;@Repository
public interface UserRepository extends JpaRepository<User,Long> {}

3、Service 层

创建 service 文件夹作为业务层的包

创建 UserServiceUserServiceImpl 如下所示:

package com.xzbd.jh2.service;import com.xzbd.jh2.domain.User;public interface UserService {User add(User user);
}
package com.xzbd.jh2.service;import com.xzbd.jh2.domain.User;
import com.xzbd.jh2.repostory.UserRepository;import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;@Service
public class UserServiceImpl implements UserService{@Autowiredprivate UserRepository userRepository;@Overridepublic User add(User user) {return userRepository.save(user);}}

4、Controller 层

创建 controller 文件夹作为控制层的报名

在控制层下创建 UserController ,代码如下:

package com.xzbd.jh2.controller;import com.xzbd.jh2.domain.User;
import com.xzbd.jh2.service.UserService;import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import net.bytebuddy.utility.RandomString;@RestController
@RequestMapping("user")
public class UserController {@Autowiredprivate UserService userService;@RequestMapping("/add")public User add(Long id) {User user = new User();user.setId(id);user.setAge(12 + Integer.valueOf("" + id));user.setName("name-" + id);user.setPasswd(id + "" + RandomString.make(5));User u = userService.add(user);return u;}
}

为了测试方便,提供的一个简单的接口 /user/add?id={id} 。该接口可以在浏览器中直接访问,只需要带上简单的id参数。

三、测试

1、运行应用 jh2

启动应用程序,此处使用的是 VS Code ,按 “F5” 即可启动,效果如下。
在这里插入图片描述
从启动日志中可以看出,hibernate 检测到新的数据模型 User 类,并创建了响应的数据表。其生成的创建SQL的语句为:

create table tb_user (id bigint not null, age integer, name varchar(255), passwd varchar(255), primary key (id))

使用的方言为: org.hibernate.dialect.H2Dialect

2、访问接口

访问 http://localhost:8080/user/add?id=1 ,浏览器结果如下图所示。
在这里插入图片描述
应用日志
在这里插入图片描述
其中有两句 SQL

Hibernate: select user0_.id as id1_0_0_, user0_.age as age2_0_0_, user0_.name as name3_0_0_, user0_.passwd as passwd4_0_0_ from tb_user user0_ where user0_.id=?
Hibernate: insert into tb_user (age, name, passwd, id) values (?, ?, ?, ?)

讨论问题 insert 语句可以理解,为什么会有 select 语句呢 ?是不是因为调用了 repository 的 save 方法?

再依次访问下面连接,添加 id 为 2 - 5 的 user 数据。
http://localhost:8080/user/add?id=2
http://localhost:8080/user/add?id=3
http://localhost:8080/user/add?id=4
http://localhost:8080/user/add?id=5

3、登录 H2 web 客户端查看数据

登录方式见 【H2实践】之 SpringBoot 整合,登陆后发现 TB_USER 表已经存在。再 SQL 编辑区中输入 SQL SELECT * FROM TB_USER 执行后,效果如下:
在这里插入图片描述

四、总结

文章是 SpringBoot 整合 H2 实践的关键部分。采用标准的 MVC 分层模式构建了项目,完成了目标需求设计。结合第三部分测试,验证了 SpringBoot 与 H2 数据库整合成功。

系列文章

1、【H2实践】之认识 H2
2、【H2实践】之 SpringBoot 整合

http://www.tj-hxxt.cn/news/7531.html

相关文章:

  • 哈尔滨网站建设培训产品运营推广方案
  • 网站登录按钮点击没反应什么原因廊坊网站设计
  • 淘宝网做网站网站权重查询接口
  • wordpress lover主题单词优化和整站优化
  • 砀山做网站的公司搜索网站排名
  • 做360手机网站快速排百度搜索关键词推广
  • 卖营销软件的网站珠海做网站的公司
  • 郑州微信小程序开发哪家好wp博客seo插件
  • 建湖做网站需要多少钱销售
  • wordpress大主题seopc流量排名官网
  • 哪家做的网站有利于百度推广平面设计培训班学费一般多少
  • 帮妈妈做家务作文网站西安百度网站快速排名
  • 北京快速建站模板百度总部公司地址在哪里
  • 网站两边的悬浮框怎么做百度指数排名
  • 如何申请域名网站注册长沙服务好的网络营销
  • 哈尔滨建站模板厂家seo薪资seo
  • 上线了自助建站百度文库官网
  • 网站无法打开的原因成都seo招聘
  • 汽车网站和移动端建设方案有免费推广平台
  • 网站建设公司推荐上海外贸网站seo
  • 新兴街做网站公司保定seo网站推广
  • 金融投资网站 php源码百度信息流怎么投放
  • 仿站网站源码下载竞价推广代运营公司
  • 德州疫情最新消息今天新增病例商品seo优化是什么意思
  • 2017如何做企业网站seo外包顾问
  • 上海免费做网站优化设计六年级上册数学答案
  • 梅州网站建设拼多多关键词排名在哪里看
  • 雅虎网站优化怎么做整合营销包括哪些内容
  • 公司官网在哪找seo课程培训班
  • 微信公众号做特效的网站品牌宣传推广文案