Spring学习笔记 - Part3
Spring 学习笔记 - Part3 学习资源来自B站黑马程序员: https://www.bilibili.com/video/BV1Fi4y1S7ix/?p=20&share_source=copy_web&vd_source=c76bb3d6e0326c966bf1bf32db90eb22 注解开发 注解开发定义bean 1. 直接在类名上面添加注解, 使用 @Component() 定义 bean 1234567@Component("bookDao")public class BookDaoImpl implements BookDao{ @Override public void save() { System.out.println("book dao save"); }} 2. 配置文件增加context命名空间,用命名空间扫描对应类的package 1234567891011121314151617<?xml...
Spring学习笔记 - Part2
Spring 学习笔记 - Part2 学习资源来自B站黑马程序员: https://www.bilibili.com/video/BV1Fi4y1S7ix/?p=20&share_source=copy_web&vd_source=c76bb3d6e0326c966bf1bf32db90eb22 Spring 管理第三方数据源 在pom.xml 导入依赖 123456789101112131415161718192021222324252627<dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.2.10.RELEASE</version> </dependency> ...
Spring学习笔记 - Part1
Spring 学习笔记 - Part1 学习资源来自B站黑马程序员: https://www.bilibili.com/video/BV1Fi4y1S7ix/?p=20&share_source=copy_web&vd_source=c76bb3d6e0326c966bf1bf32db90eb22 IoC入门 123456<!--步骤1:导入Spring坐标--><dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.2.10.RELEASE</version></dependency> 1234567891011//步骤2:定义Spring管理的类(接口)public interface BookService{ void...
MyBatis 学习笔记
MyBatis 学习笔记 Mybatis官方参考网址:https://mybatis.org/mybatis-3/zh/ MyBatis 是一款持久层框架,用于简化 JDBC 开发。 将硬编码写道配置文件,繁琐操作自动完成。 免除了几乎所有的 JDBC 代码,以及设置参数和获取结果集的工作。 快速入门 已有数据库 1234567891011mysql> use mybatisDatabase changedmysql> select * from tb_user;+----+----------+----------+--------+------+| id | username | password | gender | addr |+----+----------+----------+--------+------+| 1 | zhangsan | 123 | 男 | 北京 || 2 | 李四 | 234 | 女 | 天津 || 3 | 王五 | 11 | 男 | 西安...
JDBC学习笔记
JDBC 学习笔记 学习参考链接: https://www.bilibili.com/video/BV1Qf4y1T7Hx/?p=30&share_source=copy_web&vd_source=c76bb3d6e0326c966bf1bf32db90eb22 简介 简单来说,JDBC是一种规范,可以通过同一套代码,配合不同数据库驱动实现数据库的操作。 快速入门 123456789101112131415161718192021222324// 注册驱动Class.forName("com.mysql.jdbc.Driver");// 获取连接String url = "jdbc:mysql://localhost:3306/itheima";String username = "root";String password = "123456";Connection conn = DriverManager.getConnection(url, username,...
MySQL学习笔记-Part3
MySQL 学习笔记 Part3 学习链接来自黑马程序员: https://www.bilibili.com/video/BV1Kr4y1i7ru/?p=22&share_source=copy_web&vd_source=c76bb3d6e0326c966bf1bf32db90eb22 函数 字符串函数 数值函数 例子 生成一个六位数的随机验证码 123-- 生成一个六位数的随机验证码select lpad(floor(rand() * 1000000),6,"0"); 日期函数 流程函数 约束 例子 12345678910create table user( id int primary key auto_increment comment '主键', name varchar(10) not null unique comment '姓名', age int check ( age > 0 and age <= 120 ) comment...
MySQL学习笔记-Part2
MySQL 学习笔记 Part2 学习链接来自黑马程序员: https://www.bilibili.com/video/BV1Kr4y1i7ru/?p=22&share_source=copy_web&vd_source=c76bb3d6e0326c966bf1bf32db90eb22 创建一个表 123456789create table emp( id int comment "编号", workno varchar(10) comment "工号", name varchar(10) comment "姓名", gender char(1) comment "性别", age tinyint unsigned comment "年龄", idcard char(18) comment "身份证号", entrydate date comment "入职时间")...
Java基础补充-2
集合 ArrayList 适合元素个数不确定,且要增删查改的场景 ArrayList < E > : 约束类型 ArrayList常用方法 20230309-1 Object类常用方法 toString() 默认返回的是地址。可以重写输出功能 equals() 默认比较地址。可以重写比较规则 例如: 1234567891011121314151617181920public class Student { String name; int age; @Override public String toString() { return "Student name is " + name + ", age is " + age; } @Override public boolean equals(Object obj) { // 判断o是不是学生类型 if(obj instanceof Student){ Student s2 =...
生产者消费者问题-管程法
管程法-生产者消费者问题 可参见:Java多线程笔记-2 | Whiskey&Cola (whiskeycola.cn) 在此为二次解释 管程法 先得有一个缓冲区,这个缓冲区容量有限 缓冲区定义存入,取出功能函数 分别定义生产者、消费者类 主程序,创建缓冲区,缓冲区当作参数,传入生产者消费者类的定义,创建线程 创建产品 12345678class Product{ final String name = "laptop"; int id; public Product(int id) { this.id = id; }} 创建缓冲区 12345678910111213141516171819202122232425262728293031323334353637383940414243444546class Buffer{ final int bufferSize = 10; // 创建一个容器,此容器可放10个产品 List<Product>...
《C++ Primer 第五版》学习笔记
《C++ Primer 第五版》学习笔记 以下为 Chapter1、Chapter2 C++是如何工作的 源文件-> 编译器-> 链接-> 可执行程序 每一个源文件在编译后都会生成.obj文件 ,通过链接就可以将所有obj文件生成一个可执行文件。 例如#include <iostream>,#符号后面跟的都是预处理语句。 预处理语句是在实际编译之前处理。 #include 实际上就是寻找一个文件,将此文件内容拷贝到现在文件中,这就是 头文件 项目中的每个cpp文件都会被编译,但头文件不会被编译。编译器会给每个cpp文件生成对应的obj文件,链接器将他们合并成一个exe文件。 C++编译器是如何工作的 预处理阶段编译器会遍历所有的预处理语句并对其处理,常用的预处理语句有include if ifdef pragma。 .obj文件是二进制的机器码,如果我们想查看对应的汇编代码,可以在VS的项目属性里,C/C++ --> Output File --> Assembler Output --> Assembly-Only...