自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(63)
  • 收藏
  • 关注

原创 java死锁

public class Test { public static void main(String[] args) { Makeup g1=new Makeup(0,"灰姑凉"); Makeup g2=new Makeup(1,"白雪公主"); g1.start(); g2.start(); }}//口红class Lipstick{}//镜子class Mirror{}class Mak...

2021-06-14 18:52:00 1159 1

原创 解决线程之间的通信问题(java)

解决线程之间的通信问题:解决方式一:测试生产者消费者代码模型–>利用缓冲区解决 ( 管程法 ) ://测试:生产者消费者模型-->利用缓冲区解决:管程法//生产者,消费者,产品,,缓冲区public class text{ public static void main(String[] args) { SynContainer container=new SynContainer(); new Product(contain...

2022-05-09 20:33:06 131

原创 集合(java)

集合1.集合概念:对象的容器,实现了对对象常用的操作和数组的区别:数组长度固定,集合不固定数组可以存储基本类型和引用类型,集合只能存储引用类型Collection体系:2.List子接口:特点:特序,有下标,元素可以重复.常用(ArrayList,LinkedList),(Vector).ArrayList (重点) :数组结构实现,必须要连续空间,查询快,增删慢.JDK1.2版本,运行效率快,线程不安全.源码分析:默认容量: privat

2022-05-02 10:51:35 176

原创 P1803 凌乱的yyy / 线段覆盖(java)

import java.util.*;public class Main { class Student implements Comparable<Student>{ private int a,b; public Student(int a, int b) { super(); this.a = a; this.b = b; } @Override public int compareTo(Student o) { return Integ.

2022-03-16 14:34:04 192

原创 全排列(java)

洛谷题目:P1088 [NOIP2004 普及组] 火星人题目描述:人类终于登上了火星的土地并且见到了神秘的火星人。人类和火星人都无法理解对方的语言,但是我们的科学家发明了一种用数字交流的方法。这种交流方法是这样的,首先,火星人把一个非常大的数字告诉人类科学家,科学家破解这个数字的含义后,再把一个很小的数字加到这个大数上面,把结果告诉火星人,作为人类的回答。火星人用一种非常简单的方式来表示数字――掰手指。火星人只有一只手,但这只手上有成千上万的手指,这些手指排成一列,分别编号为 1,2,3,\cdo

2022-03-12 14:12:09 841

原创 安装配置Apache服务器

1、下载Apache(下载地址:添加链接描述)2、安装Apache解压后打开conf文件夹下httpd.conf文件①修改成自己的Apache目录地址在conf/extra文件里面找到这个两个文件夹打开修改端口号(“443"全部修改成"444"或者"442”)以管理员身份运行cmd,找到Apache下的bin文件夹下,执行命令若出现这个报错修改端口号修改没成功:(重新安装)步骤在最下面启动Apache找到这个文件打开点击start启动启动成功访问 http://loc

2022-03-01 19:00:00 244

原创 最大区间和(DP)

试题 算法提高 最大区间和提交此题 评测记录资源限制时间限制:1.0s 内存限制:256.0MB问题描述给定n个数A1,A2,A3……An,求两个数l,r满足l<=r并最大化Al+A(l+1)+……Ar,输出这个最大值输入格式第一行一个数n,接下来一行有n个用空格隔开的数,第i个数表示Ai输出格式输出仅一行,即最大区间和样例输入4-1 -2 -3 4样例输出4数据规模和约定每个数绝对值不超过2^30;  n<=1000000public class Mai

2022-02-27 14:42:25 296

原创 最长公共子序列(DP)

解题思路: ****以二维数组的方式遍历两个字符串,行和列要加一,方便计算, 当遍历的两个字符相同时,就代表他两个字符串中都有这个字符, 就让这个位置等于左上角的数字加一,dp[i][j] = dp[i-1][j-1] + 1;**** **当两个字符不相等时,让他等于之前记录的公共串,此位置等于, 上面和左边两个数中大的那

2022-02-27 13:02:55 290

原创 二维数组遍历

public static void main(String[] args) { int[][] arr=new int[5][5]; //初始化二维数组 for(int i=0;i<arr.length;i++) {//行 for(int j=0;j<arr[0].length;j++) {//列 arr[i][j]=i*j; } } System.out.println("第一中遍历"); //第一种遍历 for(int i=0;i<ar

2021-10-23 15:45:26 67

原创 二分查找(java)

package C2;public class array { public static void main(String[] args) { //二分查找 int[] arr= {1,2,3,4,5,6,7,8,9}; int target=5;//目标元素 int left=0;//记录开始位置 int end=arr.length-1;//记录结束位置 int mid=(left+end)/2;//记录中间的位置 int index=-1;//记录目标位置

2021-10-23 13:27:14 87

原创 java位运算

package C1;public class Test { public static void main(String[] args) { int num=86; //位运算判断奇偶数 System.out.println(num+"num是:"+(((num&1)==0)?"偶数":"奇数")); //获取二进制位是0或1(两种解决方法) System.out.println("=====获取二进制位是0或1======"); System.out.println

2021-10-15 22:35:15 60

原创 创建赫夫曼树

Node:package demo8;public class Node implements Comparable<Node>{ int value; Node left; Node right; public Node(int value) { this.value=value; } @Override public int compareTo(Node o) { return this.value-o.value; } @Override publ

2021-10-10 20:45:58 56

原创 堆排序 (HeapSort)

堆排序动态图:测试代码:package demo3;import java.util.Arrays;public class HeapSort { public static void main(String[] args) { int[] arr=new int[] {9,6,8,7,0,1,10,4,2}; heapSort(arr); System.out.println(Arrays.toString(arr)); } public static void hea

2021-10-07 11:29:26 86

原创 基数排序 (RadixSort)

基数排序动态图:测试代码:package demo3;import java.util.Arrays;public class RadixSort { public static void main(String[] args) { int[] arr=new int[] {5,89,13,468,235,352,544,150,447,66,81}; radixSort(arr); System.out.println(Arrays.toString(arr)); } //

2021-10-04 21:23:07 102

原创 归并排序 (MergeSort)

归并排序动态图:测试代码:package demo3;import java.util.Arrays;public class MergeSort { public static void main(String[] args) { int[] arr=new int[]{1,3,5,2,4,6,8,9}; System.out.println(Arrays.toString(arr)); mergeSort(arr,0,arr.length-1); System.out.p

2021-10-03 14:52:09 91

原创 希尔排序(Shell Sort)

希尔排序动态图:测试代码:package demo3;import java.util.Arrays;public class ShellSort { public static void main(String[] args) { int[] arr=new int[] {1,8,6,0,4,2,3,8,7}; shellSort(arr); System.out.println(Arrays.toString(arr)); } //希尔排序 public static

2021-10-02 22:14:47 66

原创 快速排序(Quick Sort)

快速排序动态图:测试代码:package demo3;import java.util.Arrays;public class QuickSort { public static void main(String[] args) { int[] arr=new int[] {3,9,5,8,3,4,5,1,2}; quickSort(arr,0,arr.length-1); System.out.println(Arrays.toString(arr)); } //快速排序

2021-10-02 22:13:07 77

原创 插入排序(Insertion Sort)

插入排序动态图:测试代码:package demo3;import java.util.Arrays;public class InsertSort { public static void main(String[] args) { int[] arr=new int[] {5,9,4,6,8,2,1,0,5}; insertSort(arr); System.out.println(Arrays.toString(arr)); } //插入排序 public sta

2021-10-02 22:11:55 62

原创 选择排序(Selection Sort)

选择排序动态图:测试代码:package demo3;import java.util.Arrays;public class SelectSort { public static void main(String[] args) { int[] arr=new int[] {5,4,2,8,9,3,0,1}; selectSort(arr); System.out.println(Arrays.toString(arr)); } //选择排序 public stati

2021-10-02 22:10:11 58

原创 冒泡排序(Bubble Sort)

package demo3;import java.util.Arrays;public class BubbleSort {public static void main(String[] args) {int[] arr= {7,5,3,4,6,9,8,2};System.out.println(Arrays.toString(arr));bubbleSort(arr);System.out.println(Arrays.toString(arr));}//冒泡排序public s.

2021-10-02 22:00:15 96

原创 汉诺塔问题

测试游戏网址:https://zhangxiaoleiwk.gitee.io/h.html测试代码:package demo2;public class TestHanoi { public static void main(String[] args) { hanoi(3,'A','B','C'); } /** * @param n 共有N个盘子 * @param from 开始的柱子 * @param in 中间的柱子 * @param to 目标的

2021-09-22 16:27:10 497

原创 AOP实现方式

配置总applicationContext.xml:<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"

2021-09-15 12:57:54 44

原创 静态代理模式

角色分析:1.抽象角色:一般会使用接口或抽象类来解决2.真实角色:被代理的角色3.代理角色:代理真实角色,代理真实角色后,我们一般会做一些附属操作4.客户:访问代理对象的人!代码步骤:1.接口//租房public interface Rent { public void rent();}2.真实角色:public class Host implements Rent{ @Override public void rent() { Syst

2021-09-12 21:00:06 40

原创 分页(Limit+RowBounds)

使用Limit分页分页减少数据的处理量使用Mybatis实现 核心SQL1.接口 //分页 List<User> getUserByLimit(Map<String,Integer> map);2.Mapper.xml<!-- 分页--> <select id="getUserByLimit" resultMap="UserMap" parameterType="map" resultType="user">

2021-09-04 14:08:28 107

原创 log4j日志

什么是Log4j?1·Log4j是Apache的一个开源项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台.文件GUl组件2·我们也可以控制每一条日志的输出格式;3·通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。4·通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。一.先导入log4j包<dependencies> <dependency> <groupId>log4j&lt

2021-09-03 22:34:30 60

原创 CRUD(实现)

一.select选择查询语句;1.id:就是对应的namespace中的方法名2.resultType:sql语句执行的返回值!3.parameterType:参数类型!1.编写接口 //根据ID查询用户 User getUserById(int id);2.编写对应的mapper中的sql语句 <select id="getUserById" parameterType="int" resultType="com.Rain.Pojo.User"> s

2021-09-02 20:45:35 141

原创 Mybatis配置

maven导入jar包<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache

2021-09-02 19:30:43 50

原创 二分查找法

package demo1;import java.util.Arrays;public class he { public static void main(String[] args) { //目标数组 int[] arr=new int[] {1,2,3,4,5,6,7,8,9}; //目标元素 int target=9; //记录开始位置 int begin=0; //记录结束位置 int end=arr.length-1; //记录中间的位置

2021-08-29 21:43:24 109

原创 验证码实现(Response)

public class ImageServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //如何让浏览器3秒刷新一次; resp.setHeader("refresh","3"); //在内存中创建一

2021-08-19 23:58:29 71

原创 JSON的使用

1.1、什么是 JSONJSON (JavaScript Object Notation) 是一种轻量级的数据交换格式。 易于人阅读和编写。同时也易于机器解析和生成。 它基于 JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999 的一个子集。 JSON 采用完全独立于语言的文本格式,但是也使用了类似于 C 语言家族的习惯(包括 C, C++, C#, Java,JavaScript, Perl, Pyt

2021-08-17 22:07:55 2268

原创 ThreadLocal的使用

ThreadLocal 的作用,它可以解决多线程的数据安全问题。ThreadLocal它可以给当前线程关联一个数据(可以是普通变量,可以是对象,也可以是数组,集合)ThreadLocal 的特点:1、ThreadLocal可以为当前线程关联一个数据。(它可以像Map一样存取数据,key为当前线程)2、每一个 ThreadLocal对象,只能为当前线程关联一个数据,如果要为当前线程关联多个数据,就需要使用多个ThreadLocal对象实例。3、每个ThreadLocal对象实例定义的时候,一般都是s

2021-08-16 23:13:58 2163

原创 Filter过滤器

1.什么是Filter过滤器1.Filter过滤器它是javaweb的三大组件之一,三大组件分别是:servlet程序,listener监听器,Filter过滤器2.Filter过滤器它是javaEE的规范.也就是接口3.Filter过滤器它的作用是: 拦截请求,过滤响应.拦截请求常见的应用场景有: 权限检查 , 日记操作 , 事务管理 …等等2.Filter过滤器使用1.编写一个类去实现Filter接口2.实现过滤方法doFilter()3.到web.xml中配置Filter()的拦截路径

2021-08-16 18:00:50 63

原创 浏览器和session之间的关联

在这里插入图片描述

2021-08-14 11:53:43 153

原创 文件下载的实现

1.准备一张图片2.编写Download类public class Download extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //1.获取要下载的文件名 String downloadFileName="1.jpg"

2021-08-07 15:42:23 209

原创 JSTL标签库遍历

遍历1<%--1.遍历1到10,输出begin属性设置开始的索引end属性设置结束的索引var属性表示循环的变量for(int i=1;i<10;i++)--%><table border="1"> <c:forEach begin="1" end="10" var="i"> <tr> <td>第${i}行</td> </tr> &

2021-08-05 23:17:52 385

原创 mysql连接druid

配置文件druid-1.1.9.jarmysql-connector-java-8.0.25.jarurl=jdbc:mysql://localhost/book?serverTimezone=UTCdriverClassName=com.mysql.cj.jdbc.Driverusername=rootpassword=123456initialSize=10maxActive=30public class JdbcUtils { private static DataS

2021-08-01 15:20:34 170

原创 mysql连接jdbc

Druid纯代码方式连接//先添加jar包druid-1.1.9.jarmysql-connector-java-8.0.25.jar public static void main(String[] args) throws Exception { //数据源配置 DruidDataSource dataSource = new DruidDataSource(); dataSource.setUrl("jdbc:mysql://localhos

2021-08-01 09:27:25 100

原创 servlet请求重定向

请求重定向的第一种方案:准备两个servlet程序Response1public class Response1 extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { System.out.println("Hello Response1")

2021-07-31 12:15:46 249

原创 servlet请求分发处理

public class HelloServlet implements Servlet { private String message; //servlet生命周期 //第一,二是在第一次访问,的时候创建servlet程序 public HelloServlet() { System.out.println("1--构造器方法"); } //初始化 @Override public void init(Servl

2021-07-29 10:40:47 164

原创 2021-07-16

操作DOM对象核心浏览器网页就是一个DOM数形的结构!1.更新: 更新DOm节点2.遍历Dom节点: 得到Dom节点3.删除: 删除一个Dom节点4.添加:添加一个新的节点要操作一个Dom节点, 就必须要先获得这个节点Dom节点<div id="father"> <h1>标题一</h1> <p id="p1">p1</p> <p class="p2">p2</p>&l

2021-07-16 22:48:57 95

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除