(自用)Java学习-5.8(总结,springboot)

news2025/5/14 18:36:44

一、MySQL 数据库

  1. 表关系

    • 一对一、一对多、多对多关系设计
    • 外键约束与级联操作
  2. DML 操作

    INSERT INTO table VALUES(...)
    DELETE FROM table WHERE...
    UPDATE table SET col=val WHERE...
    
  3. DQL 查询

    • 基础查询:SELECT * FROM table WHERE...
    • 聚合函数:COUNT()/SUM()/AVG()/MAX()/MIN()
    • 分组查询:GROUP BY + HAVING
    • 排序:ORDER BY col [ASC/DESC]
  4. 连接查询

    • 内连接:INNER JOIN(交集数据)
    • 外连接:LEFT/RIGHT JOIN(包含单边全数据)
  5. 子查询

    • 标量子查询(返回单个值)
    • 关联子查询(依赖外层查询)

二、前端基础

  1. HTML/CSS

    • 基础标签:<form> <input> <table>
    • 布局:盒模型、Flex 布局
    • 响应式设计:@media查询
  2. JavaScript 核心

    • DOM 操作:document.getElementById()
    • 事件处理:onclick/onsubmit
    • jQuery 核心:
      $(selector).click(function(){
        $.ajax({
          url: "...",
          success: function(data){...}
        })
      })
      


三、JDBC 编程

  1. 标准流程
    // 1. 加载驱动
    Class.forName("com.mysql.cj.jdbc.Driver");
    // 2. 获取连接
    Connection conn = DriverManager.getConnection(url,user,pwd);
    // 3. 事务管理
    try {
      conn.setAutoCommit(false);
      // 执行SQL操作
      conn.commit();
    } catch(Exception e) {
      conn.rollback();
    } finally {
      conn.close();
    }
    


四、Servlet 与 Spring MVC

  1. 核心注解

    • @RequestMapping:定义请求路径
    • @RequestParam:获取 URL 参数
    • @RequestBody:接收 JSON 数据
    • @ResponseBody:返回 JSON 数据
  2. 参数绑定

    // 基础类型绑定
    public String method(@RequestParam("id") int id)
    
    // 对象绑定(名称严格对应)
    public String method(User user)
    
  3. 返回类型

    • 视图解析:return "viewName"
    • 重定向:return "redirect:/path"
    • JSON 响应:需配合@ResponseBody


五、Spring 框架

  1. IoC 容器

    • 配置方式:
      // XML配置
      <bean id="..." class="..."/>
      
      // 注解配置
      @Component @Service @Repository
      
      // Java配置类
      @Configuration
      public class Config {
          @Bean
          public DataSource dataSource() {...}
      }
      
  2. 依赖注入

    • @Autowired(按类型优先)
    • @Resource(按名称优先)
  3. AOP 编程

    @Aspect
    @Component
    public class LogAspect {
        @Pointcut("execution(* com..service.*.*(..))")
        public void serviceLayer() {}
        
        @Around("serviceLayer()")
        public Object log(ProceedingJoinPoint pjp) {
            // 前置通知
            Object result = pjp.proceed();
            // 后置通知
            return result;
        }
    }
    


六、MyBatis

  1. 核心配置
    <!-- Mapper接口绑定 -->
    <mapper class="com.example.UserMapper"/>
    
    <!-- 动态SQL示例 -->
    <select id="findUsers" parameterType="map">
      SELECT * FROM users
      <where>
        <if test="name != null">AND name=#{name}</if>
        <if test="age != null">AND age > #{age}</if>
      </where>
    </select>
    


七、Spring Boot 核心

  1. YML 配置

    server:
      port: 8080
    spring:
      datasource:
        url: jdbc:mysql://localhost:3306/db
    custom:
      list:
        - item1
        - item2
      map: {key1: val1, key2: val2}
    
  2. 配置注入

    @Component
    @ConfigurationProperties(prefix = "custom")
    public class CustomConfig {
        private List<String> list;
        private Map<String,String> map;
        // Getters/Setters
    }
    
    @Value("${server.port}")
    private int port;
    
  3. 静态资源

    • 默认路径:/static /public /resources
    • 自定义配置:
      spring:
        web:
          resources:
            static-locations: classpath:/custom/
      
  4. Thymeleaf 模板

    <!-- 条件判断 -->
    <div th:if="${user.age > 18}">成年人</div>
    
    <!-- 循环遍历 -->
    <tr th:each="item : ${list}">
      <td th:text="${item.id}"></td>
    </tr>
    
    <!-- 路径处理 -->
    <script th:src="@{/js/main.js}"></script>
    


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2375577.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于 Spring Boot 瑞吉外卖系统开发(十三)

基于 Spring Boot 瑞吉外卖系统开发&#xff08;十三&#xff09; 查询套餐 在查询套餐信息时包含套餐的分类名&#xff0c;分类名称在category表中&#xff0c;因此这里需要进行两表关联查询。 自定义SQL如下&#xff1a; select s.* ,c.name as category_name from setmeal…

POSE识别 神经网络

Pose 识别模型介绍 Pose 识别是计算机视觉领域的一个重要研究方向&#xff0c;其目标是从图像或视频中检测出人体的关键点位置&#xff0c;从而估计出人体的姿态。这项技术在许多领域都有广泛的应用&#xff0c;如动作捕捉、人机交互、体育分析、安防监控等。 Pose 识别模型的…

力扣119题:杨辉三角II(滚动数组)

小学生一枚&#xff0c;自学信奥中&#xff0c;没参加培训机构&#xff0c;所以命名不规范、代码不优美是在所难免的&#xff0c;欢迎指正。 标签&#xff1a; 杨辉三角、滚动数组 语言&#xff1a; C 题目&#xff1a; 给定一个非负索引 rowIndex&#xff0c;返回「杨辉三角…

大疆无人机(全系列,包括mini)拉流至电脑,实现直播

参考视频 【保姆级教程】大疆无人机rtmp推流直播教程_哔哩哔哩_bilibili VLC使用教程&#xff1a; VLC工具使用指南-CSDN博客 目录 实现效果&#xff1a; 电脑端 ​编辑 ​编辑 无人机端 VLC拉流 分析 实现效果&#xff1a; (实验机型&#xff1a;大疆mini4kRC-N2遥控器、大…

uniapp-商城-54-后台 新增商品(页面布局)

后台页面中还存在商品信息的添加和修改等。接下来我们逐步进行分析和展开。包含页面布局和数据库逻辑等等。 1、整体效果 样式效果如下&#xff0c;依然采用了表单形式来完成和商家信息差不多&#xff0c;但在商品属性上多做了一些弹窗等界面&#xff0c;样式和功能点表多。 …

WebpackVite总结篇与进阶

模块化 Webpack Webpack 入口entry 分离app和第三方库入口 这是什么&#xff1f; 这是告诉 webpack 我们想要配置 2 个单独的入口点&#xff08;例如上面的示例&#xff09;。 为什么&#xff1f; 这样你就可以在 vendor.js 中存入未做修改的必要 library 或文件&#xff0…

【python】基础知识点100问

以下是Python基础语法知识的30条要点整理,涵盖数据类型、函数、控制结构等核心内容,结合最新资料归纳总结: 基础30问 一、函数特性 函数多返回值 支持用逗号分隔返回多个值,自动打包为元组,接收时可解包到多个变量 def func(): return 1, "a" x, y = func()匿…

SpringBoot--springboot简述及快速入门

spring Boot是spring提供的一个子项目&#xff0c;用于快速构建spring应用程序 传统方式&#xff1a; 在众多子项目中&#xff0c;spring framework项目为核心子项目&#xff0c;提供了核心的功能&#xff0c;其他的子项目都需要依赖于spring framework&#xff0c;在我们实际…

vscode_python远程调试_pathMappings配置说明

1.使用说明 vscode python 远程调试pathMappings 配置 launch.json "pathMappings": [{"localRoot": "本地代码目录","remoteRoot": "远程代码目录" # 注意不是运行目录, 是远程代码的目录}],2.测试验证 测试目的: 远程代…

遨游5G-A防爆手机:赋能工业通信更快、更安全

在工业数字化转型与5G-A商用进程加速的双重驱动下&#xff0c;中国防爆手机市场正迎来历史性发展机遇。作为“危、急、特”场景通信解决方案服务商&#xff0c;遨游通讯深刻洞察到&#xff1a;当5G-A网络以超高速率、海量连接和毫秒级时延重塑行业生态时&#xff0c;防爆手机这…

Profibus DP主站与Modbus RTU/TCP网关与海仕达变频器轻松实现数据交互

Profibus DP主站与Modbus RTU/TCP网关与海仕达变频器轻松实现数据交互 Profibus DP主站转Modbus RTU/TCP&#xff08;XD-MDPBm20&#xff09;网关在Profibus总线侧实现主站功能&#xff0c;在Modbus串口侧实现从站功能。可将ProfibusDP协议的设备&#xff08;如&#xff1a;海…

「华为」人形机器人赛道投资首秀!

温馨提示&#xff1a;运营团队2025年最新原创报告&#xff08;共210页&#xff09; —— 正文&#xff1a; 近日&#xff0c;【华为】完成具身智能赛道投资首秀&#xff0c;继续加码人形机器人赛道布局。 2025年3月31日&#xff0c;具身智能机器人头部创企【千寻智能&#x…

格雷希尔G10和G15系列自动化快速密封连接器,适用于哪些管件的密封,以及它们相关的特性有哪些?

格雷希尔G10和G15系列快速密封连接器&#xff0c;用于自动化和半自动化过程中的外部或内部密封&#xff0c;通过使用气压驱动来挤压内部的密封圈&#xff0c;创造一个适用于各种管件的无泄漏密封连接&#xff0c;连接器内部的弹性密封圈可以提供其他产品不能提供的卓越密封性能…

专栏特辑丨悬镜浅谈开源风险治理之SBOM与SCA

随着容器、微服务等新技术日新月异&#xff0c;开源软件成为业界主流形态&#xff0c;软件行业快速发展。但同时&#xff0c;软件供应链也越来越趋于复杂化和多样化&#xff0c;软件供应链安全风险不断加剧。 软件供应链安全主要包括软件开发生命周期和软件生存运营周期&#x…

vue3项目创建-配置-elementPlus导入-路由自动导入

目录 方法一&#xff1a;create-vue 方法二 &#xff1a;Vite Vue Vite.config.ts配置 引入element-plus 安装 如何在项目中使用 Element Plus 完整引入 按需导入 vue3vite中自动配置路由的神器&#xff1a;vite-plugin-pages 1. 安装 2、修改vite.config.js中配置…

MUSE Pi Pro 编译kernel内核及创建自动化脚本进行环境配置

视频讲解&#xff1a; MUSE Pi Pro 编译kernel内核及创建自动化脚本进行环境配置 今天分享的主题为创建自动化脚本编译MUSE Pi Pro的kernel内核&#xff0c;脚本已经上传到中 GitHub - LitchiCheng/MUSE-Pi-Pro-Learning: MUSE-Pi-Pro-Learning &#xff0c;有需要可以自行clon…

Innovus 25.1 版本更新:助力数字后端物理设计新飞跃

在数字后端物理设计领域&#xff0c;每一次工具的更新迭代都可能为项目带来巨大的效率提升与品质优化。今天&#xff0c;就让我们一同聚焦 Innovus 25.1 版本&#xff08;即 25.10 版本&#xff09;的更新要点&#xff0c;探寻其中蕴藏的创新能量。 一、核心功能的强势进 AI…

CodeBuddy 中国版 Cursor 实战:Redis+MySQL双引擎驱动〈王者荣耀〉战区排行榜

文章目录 一、引言二、系统架构设计2.1、整体架构概览2.2、数据库设计2.3、后端服务设计 三、实战&#xff1a;从零构建排行榜3.1、开发环境准备3.2、用户与战区 数据管理3.2.1、MySQL 数据库表创建3.2.2、实现用户和战区数据的 CURD 操作 3.3、实时分数更新3.4、排行榜查询3.5…

在线SQL转ER图工具

在线SQL转ER图网站 在数据库设计、软件开发或学术研究中&#xff0c;ER图&#xff08;实体-关系图&#xff09; 是展示数据库结构的重要工具。然而&#xff0c;手动绘制ER图不仅耗时费力&#xff0c;还容易出错。今天&#xff0c;我将为大家推荐一款非常实用的在线工具——SQL…

python高级特性

json.dumps({a:1,n:2}) #Python 字典类型转换为 JSON 对象。相当于jsonify data2 json.loads(json_str)#将 JSON 对象转换为 Python 字典 异步编程&#xff1a;在异步编程中&#xff0c;程序可以启动一个长时间运行的任务&#xff0c;然后继续执行其他任务&#xff0c;而无需等…