幻灯片 1:
学习回顾
jsdtn2310
卢义俊(男,1985年出生) 15195940522(手机)
幻灯片 2:
jsdtn2310使用的开发工具版本
IntelliJ IDEA 2022.3.3 (Ultimate Edition)
Build #IU-223.8836.41, built on March 10, 2023
幻灯片 3:
开发工具License许可证
Licensed to signup scooter
您有此版本的永久回退许可证。
订阅有效期至 2025年8月1日。
幻灯片 4:
开发工具运行环境
Runtime version: 17.0.6+1-b653.34 amd64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
GC: G1 Young Generation, G1 Old Generation
Windows 10 10.0
Memory: 1024M
Cores: 4
幻灯片 5:
开发工具插件
Non-Bundled Plugins:
Batch Scripts Support (1.0.13)
com.intellij.zh (223.360)
CMD Support (1.0.5)
org.intellij.gitee (2022.3.8)
Kotlin: 223-1.8.0-release-345-IJ8836.41
幻灯片 6:
开发工具书写的编码
InputStreamReader isr=new InputStreamReader(fis);
int data=isr.read();
while(data!=-1){
System.out.print((char)data);
data=isr.read();
}
}
}
import java.io.*;
public class Exercise {
public static void main(String[] args) throws Exception {
File file=new File(".");
System.out.println(file.getAbsolutePath());
FileInputStream fis=new FileInputStream(file.getAbsolutePath().split("_03spring")[0]+"_03spring/src/test/java/"+"04MyBatis笔记.md");
幻灯片 7:
开发工具Console控制台
print 不换行输出
System.out.print
println 换行输出
System.out.println
幻灯片 8:
开发工具compile编译
C:\Users\1\.jdks\openjdk-21.0.1\bin\java.exe "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2022.3.3\lib\idea_rt.jar=59477:C:\Program Files\JetBrains\IntelliJ IDEA 2022.3.3\bin" -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -classpath C:\Development\jsd2310\04-jsd2310-ssm\_03spring\target\test-classes;C:\Development\jsd2310\04-jsd2310-ssm\_03spring\target\classes;C:\Development\MavenRepo\org\springframework\spring-context\5.3.24\spring-context-5.3.24.jar;C:\Development\MavenRepo\org\springframework\spring-aop\5.3.24\spring-aop-5.3.24.jar;C:\Development\MavenRepo\org\springframework\spring-beans\5.3.24\spring-beans-5.3.24.jar;C:\Development\MavenRepo\org\springframework\spring-core\5.3.24\spring-core-5.3.24.jar;C:\Development\MavenRepo\org\springframework\spring-jcl\5.3.24\spring-jcl-5.3.24.jar;C:\Development\MavenRepo\org\springframework\spring-expression\5.3.24\spring-expression-5.3.24.jar Exercise
幻灯片 9:
C:\Development\jsd2310\04-jsd2310-ssm\_03spring\.
上面是下面两条语句输出的信息
File file=new File(".");
System.out.println(file.getAbsolutePath());
幻灯片 10:
下面是*.md文件的格式输出
[toc]
## SSM框架
### 1 SSM框架说明
* Spring
指 `Spring Framework`,是Spring家族的核心。
幻灯片 11:
* Spring MVC
`SpringMVC` 是 `Spring Framework` 的核心子项目,提供了一系列功能,使得开发者能够快速开发灵活、易于维护的Web应用程序。
幻灯片 12:
* MyBatis
`MyBatis` 是基于 Java 的持久层框架,用于和数据库映射;
幻灯片 13:
`MyBatis` 避免了几乎所有的JDBC代码和手动设置参数以及获取结果集的工作;
JDBC:连接数据库的术语
结果集ResultSet:数据库查询结果
幻灯片 14:
`MyBatis` 通过注解方式或者xml配置文件的方式来配置SQL和映射关系,灵活性非常高。
注解的符号+Words:@Component,@Repository,...
幻灯片 15:
### 2 SpringBoot
幻灯片 16:
#### 2.1 SpringBoot简述
幻灯片 17:
Spring Boot是一个Java软件开发框架(**脚手架**);
幻灯片 18:
设计目的:简化项目的初始搭建以及开发过程,该框架机制使开发人员不再需要大量的手动依赖管理。
幻灯片 19:
#### 2.3 SpringBoot核心特性
幻灯片 20:
* 起步依赖
幻灯片 21:
创建项目时,会默认添加基础依赖,简化我们自己查找依赖的过程。
幻灯片 22:
* 嵌入式服务(Tomcat)
幻灯片 23:
SpringBoot工程支持内嵌的web服务,可以将tomcat这样的服务直接嵌套到web依赖中。
幻灯片 24:
### 3 创建SpringBoot工程
幻灯片 25:
#### 3.1 创建SpringBoot工程
幻灯片 26:
1. 创建工程 **_04MYBATIS**
幻灯片 27:
* 创建SpringBoot工程时需要将地址改为:https://start.spring.io https://start.springboot.io
幻灯片 28:
* 选择SpringBoot来创建工程:**Spring Initalizr**
幻灯片 29:
![image-20230612190023245](./images/image-20230612190023245.png)
*.md文件对图片的文本表示
幻灯片 30:
2. **Spring Boot版本为2.7.17**
幻灯片 31:
**勾选依赖项:MyBatis Framework 和 MySQL Driver**
幻灯片 32:
![image-20230718073053060](./images/image-20230718073053060.png)
幻灯片 33:
#### 3.2 创建工程失败排查
幻灯片 34:
* 创建完工程后,查看Build页卡中是否显示了绿色的对钩
幻灯片 35:
![image-20230421092823099](./images/image-20230421092823099.png)
幻灯片 36:
* 如果没有显示绿色对钩而是红色报错,解决方案如下
幻灯片 37:
* 检查maven配置
幻灯片 38:
![image-20230420184116832](./images/image-20230420184116832.png)
幻灯片 39:
* 刷新maven
幻灯片 40:
![image-20230421093025690](./images/image-20230421093025690.png)
幻灯片 41:
* 如果刷新之后还没有成功
幻灯片 42:
检查Maven配置是否正确,检查 .m2 目录下是否包含 settings.xml 文件
幻灯片 43:
## MyBatis框架-注解管理
幻灯片 44:
### 1 概述
幻灯片 45:
Mybatis是一个优秀的持久层框架,底层基于JDBC实现与数据库的交互;
幻灯片 46:
使用此框架程序员只需要通过注解或者修改xml配置文件的方式配置好需要执行的SQL语句,MyBatis框架会根据SQL语句生成对应的JDBC代码并对数据库中数据进行增删改查操作。
幻灯片 47:
Mybatis框架的简单应用架构,如图所示:
幻灯片 48:
![](./images/mybatis.png)
一图胜千言
幻灯片 49:
### 2 数据初始化
幻灯片 50:
#### 2.1 概述
幻灯片 51:
该项目是一款社交媒体应用,用户可以在平台上发表短文等信息,分享自己的想法、心情和生活。共设计3张表。
幻灯片 52:
#### 2.2 数据初始化
幻灯片 53:
* 数据表说明
幻灯片 54:
* 用户表user:存储微博用户信息;
幻灯片 55:
* 微博表weibo:存储用户所发布的微博信息内容;
幻灯片 56:
* 评论表comment:存储每条微博的所有评论。
幻灯片 57:
* 表关系说明
幻灯片 58:
* 用户表和微博表:一对多,一个用户可以发布多条微博,一条微博只能归属于一个用户;
幻灯片 59:
* 用户表和评论表:一对多,一个用户可以发布多条评论,一条评论只能归属于一个用户;
幻灯片 60:
* 微博表和评论表:一对多,一条微博下可以有多条评论,一条评论只能归于与一条微博。
幻灯片 61:
* 初始化数据表
幻灯片 62:
```mysql
幻灯片 63:
DROP DATABASE IF EXISTS blog;
幻灯片 64:
CREATE DATABASE blog CHARSET=UTF8;
幻灯片 65:
USE blog;
幻灯片 66:
CREATE TABLE user(
幻灯片 67:
id BIGINT PRIMARY KEY AUTO_INCREMENT,
幻灯片 68:
username VARCHAR(50),
幻灯片 69:
password VARCHAR(50),
幻灯片 70:
nickname VARCHAR(50),
幻灯片 71:
created TIMESTAMP
幻灯片 72:
)CHARSET=UTF8;
幻灯片 73:
CREATE TABLE weibo(
幻灯片 74:
id BIGINT PRIMARY KEY AUTO_INCREMENT,
幻灯片 75:
content VARCHAR(255),
幻灯片 76:
created TIMESTAMP,
幻灯片 77:
user_id INT
幻灯片 78:
)CHARSET=UTF8;
|