云监控(华为) | 实训学习day2(10)
创始人
2024-12-28 16:33:30
0

spring boot基于框架的实现

简单应用 - 用户数据显示

  • 开发步骤

 第一步:文件-----》新建---à项目

 第二步:弹出的对话框中,左侧选择maven,右侧不选任何内容.

  

 第三步,选择maven后,下一步

第4步  :出现对话框中填写项目名称

第5步:填写后完成

 第6步:把pom.xml打开

 第7步:填写模块的软件版本 

附:查版本

到远程仓库,进入仓库查询mysql8.0的版本

最终依赖包文件如下

把包输入后,使用maven的重新加载项目

除了上述的修改,还有一个lombok插件(java bean)

安装后“确定”即可

使用java开发注重项目架构(文件夹)

  1. Mvc开发模式
  2. Java开发必须有一个顶层的软件包(com)
  3. Model数据
  4. 数据库操作 dao-àmybatis实现java类到数据库表之间的关系-pojo  

业务: (转帐)包含多数据库操作  service

控制:逻辑实现 controller

结构是通过在java中右键,新建---“软件包”实现

Java解决问题的思路

  1. 先有表,探讨表的结构
  2.  有java bean
  3. Pojo层数据库操作
  4. Service层逻辑(一般service和pojo代码相似)
  5. Controller封装逻辑
  6. 前端界面

结构理顺,用户登录和注册

第一步:有用户表

进入到mysql数据库

   

创数据库,打开数据库,创建表,插入数据。

第二步:有java bean

注意类名尽量与表名一致。

第三步:有dao层方法(pojo层的方法)

注意:springboot把pojo都变成接口,创建时选择interface

Interface不能写具体代码,代码被mybatis实现

在MyUser的java bean加入@Data的lombok注解

接口作用是不能被实现

代码如下

代码mybatis实现.,定义成interface

第四步:有service层,调用mapper层的类的方法,这一层有事务.

注意:@Service注解,@Autowired注入UserMapper

 第五步:有controller层,在这层中,调用service

Controller层新建UserController类 的代码

第六步:前端页面 :

springboot前端要求必须有一个文件夹。文件夹在resources文件夹下,文件夹名字必须是templates

在templates文件夹下创建前端HTML文件

文件名与Controller中返回的字符串名称一致。

这里没一致,改一下

HTML代码后面完善

根据java流程架构图

Spring boot框架

  1. 配置文件

三部分内容

 数据库连接

 Mybatis 配置sql语句的位置

前端模板

 名称只能是application.yml

Yml文件是键和值组成,形成数据库参数和值的对应关系

文件内容

数据库的驱动

Mysql5.X 驱动 com.mysql.jdbc.Driver

Mysql8.0驱动 com.mysql.cj.jdbc.Driver       

Mysql5.X 地址

jdbc:mysql://localhost:3306/mygaussdb?characterEncoding=utf8&useSSL=false

mysql8.0地址

jdbc:mysql://localhost:3306/mygaussdb?characterEncoding=utf8&useSSL=false&serverTimezone=UTC
 

数据库密码是123456,写password: ‘123456’

  1. myBatis的mapper文件xml

 

建立的文件名与pojo接口文件名一致

Xml文件注意的地方:

 根据查询结果,修改pojo接口文件

对应Service结果的改变,UserService代码

前端的网页文件改如下:  

UserController文件改如下

运行程序

写一个主程序,主程序只能在顶层的包里写,这里是com包

提示后回车

SpringBoot的主程序

报错

把右边maven项打开

把依赖项展开,是否有冲突项

去一个

把pom.xml文件改一下

排除后更新

更新后,只有一个

运行成功显示

显示数据在浏览器器中输入

基本结构成功。

第一种: 从架构理解

第二种从开发上理解

目标:把表数据变成网页显示

两条线:

后端线:表------àController控制层实现

  1. 先有表,探讨表的结构
  2. 有java bean,,类结构与表一致

(3)Pojo层数据库操作,这是接口文件,实现由mybatis配合xml增删改查实现。 

  1. Service层逻辑(一般service和pojo代码相似),这是java类
  2. Controller封装逻辑,返回前端页面和数据

前端线

  1. 页面使用thymeleaf模板
  2. 接收前端数据${前端变量名 }   ,th:each做循环
  3. 显示的是java bean当中的每一个属性值

详细代码

package com.bean;  import lombok.Data;  @Data public class MyUser {     private int id;     private String username;     private String password; } 
package com.controller;  import com.bean.MyUser; import com.service.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping;  import java.util.ArrayList; import java.util.List;  @Controller @RequestMapping("/user") public class UserController {     @Autowired     private UserService userservice;     @RequestMapping("/list")     public String ListUser(Model model) {         List users = userservice.selectUser();         System.out.println("users");         model.addAttribute("myusers", users);         return "myuser";     } } 
package com.pojo;  import com.bean.MyUser; import org.apache.ibatis.annotations.Mapper; import java.util.List;  @Mapper public interface UserMapper {     public List selectUser();      public void addUser(MyUser user); } 
package com.service;  import com.bean.MyUser; import com.pojo.UserMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service;  import java.util.List;  @Service public class UserService {     @Autowired     private UserMapper usermapper;     public List selectUser(){         return usermapper.selectUser();     } } 
package com;  import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;  @SpringBootApplication public class Mymain {     public static void main(String[] args) {         SpringApplication.run(Mymain.class);     } }  
                          insert into myuser values (#{id},#{username},#{password})      
            显示用户   
id 用户名 用户密码
spring:   thymeleaf:     prefix: classpath:/templates/     suffix: .html   datasource:     driver-class-name: com.mysql.cj.jdbc.Driver     url: jdbc:mysql://localhost:3306/myguassdb?characterEncoding=utf8&useSSL=false&serverTimezone=UTC     username: root     password: '123456'  mybatis:   mapper-locations: classpath:mybatis/*.xml

相关内容

热门资讯

3分钟了解!皮皮辅助器(辅助挂... 3分钟了解!皮皮辅助器(辅助挂)确实是有挂(详细辅助技巧);玩家必备必赢加哟《136704302》。...
推荐十款!蜀山四川怎么提高胜率... 推荐十款!蜀山四川怎么提高胜率(辅助挂)都是真的是有挂(详细辅助详细教程);1.蜀山四川怎么提高胜率...
我来教大家"余干中至... 我来教大家"余干中至小程序辅助器免费"余干中至小程序辅助器免费(好像是真的有挂)1、余干中至小程序辅...
第十分钟了解!佛手在线十三道辅... 此外,数据分析德州(佛手在线十三道辅助器)辅助神器app还具备辅助透视行为开挂功能,通过对客户佛手在...
今日科普!新道游正版辅助(辅助... 今日科普!新道游正版辅助(辅助挂)最初是有挂(详细辅助辅助教程);新道游正版辅助软件透明挂更新新赛季...
重大通报"牵手跑的软... 重大通报"牵手跑的软件"牵手跑的软件(竟然有挂);1、重大通报"牵手跑的软件"牵手跑的软件(竟然有挂...
2分钟了解!一个软件传送屋激k... 2分钟了解!一个软件传送屋激k可以作弊吗(辅助挂)竟然是真的有挂(详细辅助app)1、许多玩家不知道...
科技介绍!衢州都莱有没有辅助器... 科技介绍!衢州都莱有没有辅助器(辅助挂)总是存在有挂(详细辅助插件教程);玩家必备必赢加哟《1367...
大家学习交流"微信小... 大家学习交流"微信小程序锄大地辅助"微信小程序锄大地辅助(一直是真的有挂);一、微信小程序锄大地辅助...
一分钟了解!山西打锅子技巧(辅... 一分钟了解!山西打锅子技巧(辅助挂)真是是有挂(详细辅助插件)1、不需要AI权限,帮助你快速的进行山...