Mysql
低级小猿
这个作者很懒,什么都没留下…
展开
-
Canal工具的使用
准备: window 和 linux 都得有mysql, 创建相同结构名称的数据库和数据表哦。原创 2023-02-14 17:08:01 · 147 阅读 · 1 评论 -
线程二十四—— 线程池(完结)
注意: 通过线程池 来执行线程 最后记得用shutdown方法来关闭连接。package com.yyf.Gaoji;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;public class TestThreadPool { public static void main(String[] args) { ExecutorService servi.原创 2022-04-09 14:56:58 · 306 阅读 · 0 评论 -
线程二十三—— 观众和表演者的关系
注意: 表演者表演,观众观看。 利用wait 和notifyall来等待和唤醒。package com.yyf.Gaoji;public class TestProducerConsumer2 { public static void main(String[] args) { TV tv = new TV (); new Player (tv).start (); new Watcher (tv).start (); }}..原创 2022-04-09 14:56:21 · 338 阅读 · 0 评论 -
线程二十二—— 生产者和消费者的问题
注意:这里利用了一个缓冲区 来解决消费者没有东西消费的问题,生产者生产产品往缓冲区放,当缓冲区没有产品时,消费者等待,唤醒 生产者生产,生产者生产产品后等待,唤醒消费者消费注释写的很详细。package com.yyf.Gaoji;public class TestProducerConsumer { public static void main(String[] args) { SynContainer container = new SynContainer原创 2022-04-09 14:55:44 · 74 阅读 · 0 评论 -
线程十六——死锁的问题
注意:两个对象 镜子和口红 注意看makeup方法 两种选择分别将拿到的每一种对象的锁进行加锁,不然会产生死锁,如果将chioc==0分支里的两种选择就放在一个同步锁里那么就会产生死锁。死锁:: 多个线程互相抱着对方需要的资源,然后形成僵持,这样就形成了死锁package com.yyf.ThreadStatus;import sun.rmi.runtime.NewThreadAction;import java.util.Map;// 死锁: 多个线程互相抱着 对象需要的资源,然.原创 2022-04-03 14:06:17 · 222 阅读 · 0 评论 -
缓存的应用 : 缓存——工程思想的产物
缓存一词最初主要指 CPU 与内存之间的高速静态随机存取存储器(SRAM)。一 web中的缓存在做项目的过程中,不知道你们有没有感叹过,一个平平无奇的应用,涉及的点实在是太多了。各个点之间需要衔接,要衔接就会有两个层次的不均衡: 一是性能的不均衡,包括速率、吞吐量等,造成这种不均衡的原因包括软件、硬件、网络、协议、策略等、位置多个维度。 二是数据本身活跃性的不均衡,有些数据会被频繁传递,有些很久才被访问一次。基于这两个不平衡,诞生了各种缓存方案。比较常见的有以下几种:...原创 2022-03-28 15:51:41 · 1696 阅读 · 0 评论 -
自动代码生成器
代码如下: 代码自动生成器 ,自动的帮我们生成了pojo实体类,dao层 ,service层,极大的增加了我们开发软件的效率。package com.yyf;import com.baomidou.mybatisplus.annotation.DbType;import com.baomidou.mybatisplus.annotation.FieldFill;import com.baomidou.mybatisplus.annotation.IdType;import co...原创 2022-03-25 16:26:10 · 3234 阅读 · 0 评论 -
SpringMVC-07-拦截器
1.首先写一个登录页面<%@ page contentType="text/html;charset=UTF-8" language="java" %><html> <head> <title>$Title$</title> </head> <body> <h1> <a href="${pageContext.request.contextPath}/user/go原创 2021-11-02 16:06:45 · 55 阅读 · 0 评论 -
SpringMVC-06-文件上传及下载
1.首先在jsp页面写一个这样的表单 <form action="${pageContext.request.contextPath}/upload2" enctype="multipart/form-data" method="post"> <input type="file" name="file"/> <input type="submit"> </form>2.在springmvc配置文件中配置 <!-原创 2021-11-02 15:54:52 · 67 阅读 · 0 评论 -
SpringMVC-05-JSON
1,首先配置三个jar包@RestController 代表这个类下的所有的return不走视图解析器只会返回json字符串 前后端分离一般不走视图解析器,只会json字符串@ResponseBody 这个注解代表return返回的不走视图解析器,直接返回一个字符串<dependencies> <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind...原创 2021-11-02 15:29:56 · 170 阅读 · 0 评论 -
SpringMVC-04-RestFul风格及返回数据乱码问题
1.编写controllerpackage yyf.controller;//package com.yyf.controller;import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springframework.web.bind.annotation.PathVariable;import org.springframework.web.bind.a原创 2021-11-02 15:14:07 · 230 阅读 · 0 评论 -
SpringMVC-03-HelloMVC注解开发
1.首先写个controller请求@Controller注解 :交给spring管理,只要方法返回值是String 返回的是一个字符串则就交于视图解析器处理@@RequestMapping("/admin") :代表这个类下面的每一个请求都要先经过admin这个请求@return "hello"; //会被视图解析器解析 hello是一个返回的jsp界面 交给视图解析器去寻找package com.yyf.controller;import org.springframew...原创 2021-11-02 15:03:10 · 79 阅读 · 0 评论 -
SpringMVC-02-HelloMVC
1.编写springmvc.xml配置文件1.1 处理器映射器1.2 处理器适配器1.3 视图解析器<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="h.原创 2021-11-02 14:52:46 · 87 阅读 · 0 评论 -
SpringMVC-01-回顾servlet
1.首先编写一个helloServletpackage com.yyf.Servlet;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOException;public原创 2021-11-01 11:01:14 · 74 阅读 · 0 评论 -
Spring整合Mybatis 掺和 事务机制
事务是恢复和并发控制的基本单位。事务应该具有4个属性:原子性、一致性、隔离性、持久性。这四个属性通常称为ACID特性。原子性(atomicity)。一个事务是一个不可分割的工作单位,事务中包括的操作要么都做,要么都不做。一致性(consistency)。事务必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。隔离性(isolation)。一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。原创 2021-10-02 10:32:05 · 133 阅读 · 0 评论 -
Spring 代理模式 demo02
自定义类实现InvocationHandler 接口 重写里面的方法 实现代理模式1.自定义类package com.yyf.demo03;import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;import java.lang.reflect.Proxy;public class ProxyInvocationHandler implements InvocationHandler {..原创 2021-10-02 09:39:02 · 69 阅读 · 0 评论 -
Spring代理模式 demo01
列举房东和租客及中间插入一个中介的问题来展示代理模式的实现1.首先创建一个接口 来表现要租房这个行为package com.yyf.demo01;public interface Rcent { public void rcent();}2.创建房东类,来实现这个接口,因为房东租房肯定有这个行为package com.yyf.demo01;public class Host implements Rcent { @Override public..原创 2021-09-30 11:05:16 · 76 阅读 · 0 评论 -
Spring整合Mybatis (一)升级版
sqlsession的创建由继承SqlSessionDaoSupport类来直接调用getsqlsession方法来实现1 .实现类 2package com.yyf.mapper;import com.yyf.pojo.User;import org.mybatis.spring.support.SqlSessionDaoSupport;import java.util.List;public class userMapperImpl2 extends SqlSessionDaoS原创 2021-09-30 10:56:26 · 139 阅读 · 0 评论 -
Spring整合Mybatis (一)
简单的实现查询1.接口package com.yyf.mapper;import com.yyf.pojo.User;import java.util.List;public interface userMapper { public List<User> selectUser();}2.接口配置文件<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapper PUB原创 2021-09-30 10:49:58 · 55 阅读 · 0 评论 -
Spring 三层架构MVC注解
1. controller层package com.yyf.controller;import org.springframework.stereotype.Controller;@Controllerpublic class UserController {}2.dao层package com.yyf.dao;import org.springframework.stereotype.Repository;@Repositorypublic class Use.原创 2021-09-30 10:28:02 · 292 阅读 · 0 评论 -
Spring AOP实现方式三
使用注解的方式1.自定义注解类package com.yyf.div;import org.aspectj.lang.ProceedingJoinPoint;import org.aspectj.lang.Signature;import org.aspectj.lang.annotation.After;import org.aspectj.lang.annotation.Around;import org.aspectj.lang.annotation.Aspect;impor.原创 2021-09-30 10:02:09 · 55 阅读 · 0 评论 -
Spring AOP实现方式二
以自定义类的方式来实现AOP1.自定义类package com.yyf.div;public class DivPointCut{ public void before(){ System.out.println ("========方法执行前========="); } public void after(){ System.out.println ("========方法执行后=========="); }}2.配置原创 2021-09-30 09:56:51 · 50 阅读 · 0 评论 -
Spring AOP实现方式一
1.使用SpringAPI接口 业务接口及业务实现类package com.yyf.service;public interface Service { public void add(); public void delete(); public void update(); public void select();}package com.yyf.service;public class ServiceImpl implements Se..原创 2021-09-30 09:46:57 · 46 阅读 · 0 评论 -
当Spring去掉配置文件.xml,可以用配置类来代替配置文件
1.我们先构建一个配置类 1.1 此处的Configuration注解 代表我们以前用的.xml文件 2.2 ComponentScan 扫描某个包 3.3 Import注解 相当于配置文件里的Import 标签来引入其他的配置类 4.4. 这里的User 类 方法 user 就是 User的bean 返回的是一个User对象package com.yyf.config;import com.yyf.pojo.User;import...原创 2021-09-30 09:31:39 · 265 阅读 · 0 评论 -
Spring 普通的注解
样式类:package com.yyf.pojo;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.beans.factory.annotation.Qualifier;import javax.annotation.Resource;public class People { @Resource(name="dog11")// @Autowir原创 2021-09-27 17:32:57 · 154 阅读 · 0 评论 -
spring p命名空间 c命名空间
1. P命名空间 对普通属性直接 p:变量名=值 2.C命名空间 对象有参构造的注入,等同于 构造器 construct-args==c用法 c:有参变量名1 c:有参变量名2 。。。。。scope="singleton 单列模式prototype 原型模式 相对单列模式就比较耗资源 singleton 单列模式 两者对象是一样用hashcode就可以判断出3.引用类package com.yyf.pojo;public cl...原创 2021-09-27 16:47:17 · 146 阅读 · 0 评论 -
Spring 各种类型变量的注入
1。studentpackage com.yyf.pojo;import java.util.*;public class Student { private String name; private Address address; private String[] books; private List<String> hobby; private Map<String,String> card; private S原创 2021-09-27 16:39:30 · 320 阅读 · 0 评论 -
Spring 无参,有参构造的问题 和在配置文件里用 impor引入多个配置文件的问题。
1.有参构造package com.yyf.pojo;public class User { private String name; public User(String name){ System.out.println ("我是有参构造"+name); } public String getName() { return name; } public void setName(String name) {原创 2021-09-27 16:14:02 · 138 阅读 · 0 评论 -
简单的IOC控制反转实现
1。编写接口package com.yyf.dao;public interface UserDao { void getUser();}2.编写多个实现类package com.yyf.dao;public class UserDaoImpl implements UserDao{ @Override public void getUser() { System.out.println ("UserDao获取数据"); }}原创 2021-09-27 15:35:04 · 126 阅读 · 0 评论 -
Hello Spring 第一个Spring程序
package com.yyf.pojo;public class Hello { private String str; public String getStr() { return str; } public void setStr(String str) { this.str = str; } @Override public String toString() { return "H.原创 2021-09-27 15:15:28 · 54 阅读 · 0 评论 -
一级缓存,二级缓存,自定义缓存
一级缓存:mybatis中默认有一级缓存二级缓存:开启 在xml中开启 <cache type="org.mybatis.caches.ehcache"/>导入jar包自定义缓存ehcache jar包 <dependency> <groupId>org.mybatis.caches</groupId> <artifactId>mybatis-ehcach..原创 2021-09-27 15:08:10 · 97 阅读 · 0 评论 -
mybatis中update set的使用
接口 //更新数据 int updateBlog(Map map);接口配置文件 <update id="updateBlog" parameterType="map"> update mybatis.blog <set> <if test="title!=null"> title=#{title}, </if> <if test="au原创 2021-09-15 17:10:25 · 2452 阅读 · 0 评论 -
mybatis 一对多
接口及接口配置文件:package com.yyf.dao;import com.yyf.pojo.Teacher;import org.apache.ibatis.annotations.Param;public interface TeacherMapper { Teacher getTeacher(@Param ("tid") int id);}接口配置文件:<?xml version="1.0" encoding="UTF-8" ?><!DO原创 2021-09-15 16:38:53 · 55 阅读 · 0 评论 -
字段名不一致的问题,进行字段映射
若表实体类的字段名和数据库表中的字段名不一致时,要进行字段映射在xml文件中映射<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="com.yyf.dao.user原创 2021-09-15 16:12:48 · 846 阅读 · 0 评论 -
2021-08-07 C3P0的相关配置文件和代码测试
C3P0连接池配置文件.xml<?xml version="1.0" encoding="UTF-8"?><!-- c3p0的缺省(默认)配置如果在代码中 CombolPooledDataSource ds =new CombolPooledDataSource();这就表示使用的是C3P0默认配置--><c3p0-config> <default-config> <property name="driverC..原创 2021-08-07 21:10:32 · 140 阅读 · 0 评论 -
2021-08-07 事务
士大夫但是 士大夫事务的一些操作:1.关闭自动提交 2.事务的开启 3.sql的编译package com.kuang.lesson04;import com.kuang.lesson02.utils.jdbcUtils;import javax.sql.DataSource;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.S原创 2021-08-07 20:44:10 · 56 阅读 · 0 评论 -
2021-08-07 为防止SQL注入问题用PreparedStatement来先进行sql预处理
本文使用了PreparedStatement来创建对象,先进行sql预处理,在用set对value值进行设置值,来进行了增删改查数据。1.通过定义方法来查询某条数据package com.kuang.lesson03;import com.kuang.lesson02.utils.jdbcUtils;import java.sql.*;public class sqlZhuRu { public static void main(String[] args) {原创 2021-08-07 17:49:17 · 119 阅读 · 0 评论 -
2021-08-07 按条件来更新数据
更新数据:package com.kuang.lesson02;import com.kuang.lesson02.utils.jdbcUtils;import java.sql.Connection;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class TestUpdate { public static void main(String[]原创 2021-08-07 17:34:44 · 74 阅读 · 0 评论 -
2021-08-07 查询单条数据
查询某个单条数据:package com.kuang.lesson02;import com.kuang.lesson02.utils.jdbcUtils;import java.sql.Connection;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class TestSelect { public static void main(Stri原创 2021-08-07 17:33:42 · 68 阅读 · 0 评论 -
2021-08-07 插入数据
插入package com.kuang.lesson02;import com.kuang.lesson02.utils.jdbcUtils;import java.sql.*;public class TestInsert { public static void main(String[] args) { Connection con=null; Statement st=null; ResultSet rs=null;原创 2021-08-07 17:32:13 · 64 阅读 · 0 评论