
JAVA基础
文章平均质量分 70
记录Java基础知识学习,基础不牢,地动山摇
要做了不起的人Zzzcg
仰望星空,脚踏实地
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
一个基于Servlet的在线商城
onlineMallServlet 介绍 基于Servlet实现的在线商城 只是一个小demo很多细节还需要打磨,比如账号密码格式验证等,主要用来学习Servlet和MVC开发模式,以后使用框架开发时再打磨细节。 代码 gitee仓库 环境 1.JDK11 2.tomcat 9.0.50 3.mysql 8.0.25 表结构见最后 管理工具 maven 4.0.0 需求分析 1.用户登录注册(商家和用户) 2.用户浏览购物商城页面 3.购买物品 4.商家管理商品(增删改查) 5.买家查看购买记录 6.卖家查原创 2021-10-15 16:04:38 · 807 阅读 · 0 评论 -
使用数据库连接池报异常too many connection
背景 用servlet+jsp+mysql开发一个练手项目在线商城,dao层选用HikariDP连接池作为数据源,网页前端点一点,刷新几次之后,即进行几次数据库操作之后,就会报错too many connection 解决思路 报这个错误意思是连接数过多,我们都知道,连接数据库获取的连接数是有上限的,虽然上限可以设置,但是就我这么小的小项目,mysql不至于顶不住啊?另外,所有的获取连接操作,我都是try-with-resource代码块实现的,也就是说,所有获取的connection,在使用之后都正常释原创 2021-10-15 15:31:49 · 3230 阅读 · 1 评论 -
Spring之IoC使用
IOC简介 概念、优点网上一大堆,我只说下自己的见解。所谓控制反转IoC就是在开发过程中,不需要手动的new对象,而是把对象都交给Spring的IOC容器,由Spring容器来创建和注入到需要的相应对象的位置。 不使用SpringIoC的情况下举个例子:在传统的MVC模型中,用户Controller类会调用用户Service类,用户Service类调用用户Dao类,如果实现一个注册功能,需要有以下流程: Controller需要调用Service中的方法,所以Controller类中必须创建Service对原创 2021-10-12 18:49:27 · 393 阅读 · 0 评论 -
5.Jave反射
反射是一种可以不通过对象,而直接对内存进行操作的特殊手段,本质是越过了“对象”实例,而是通过类似于指针直接去访问内存,反射破坏了Java的封装特性。原创 2021-09-26 14:33:33 · 146 阅读 · 0 评论 -
2.Java核心类与常用工具类
String 1.String在Java中的特殊地位 String是字符串类型由于字符串类型实在太常用了,因此Java对String做了特殊处理,以提升性能。String在JVM中有一个单独的存储空间专门存储String,防止大量重复的new String对象浪费内存,一个String一旦被定义,就不能修改其内容,这样的好处就是不会有重复的String在内存中。 2.String内容不可变 String对象实际上是一个常量,一旦被创建,首先会在字符串常量池中搜索字符串是否存在,如果存在,则将对象地址直接指向原创 2021-09-24 17:21:37 · 185 阅读 · 0 评论 -
3.Java容器框架
集合框架 Collection public void add(E e)添加元素 public void clear()清空 public boolean contains(Object o) 是否包含某元素 public boolean containsAll(Collection<?> c)是否包含集合c中的所有元素 public boolean equals(Object o)判断两个集合是否相等 public boolean isEmpty()判断是否为空 public remove(原创 2020-09-13 10:54:07 · 305 阅读 · 0 评论 -
1.Java中常见的重写
重写toString()、equals()、hashcode()、compareTo() 接下来将从两方面分析 为什么要重写这几个方法? 怎么重写这几个方法? toString() public class Student { String name; int age; String address; public Student() { } public Student(String name, int age, String address) {原创 2020-09-12 20:21:29 · 468 阅读 · 0 评论 -
4.熟悉HashMap底层原理
熟悉HashMap 参考https://blog.youkuaiyun.com/c139352227/article/details/47861815 一、概述 HashMap基于Map接口,键值都允许存在null,由于键不能重复,所以键中只能有一个Null。而且它的插入顺序和存放顺序未必一致,不能相同。HashMap是线程不安全的。 基本属性 static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; // 默认容量 static final i原创 2020-09-12 20:19:27 · 138 阅读 · 0 评论 -
JAVA实例锁和类锁
Java中的实例锁(Synchronized)和类锁(Static Synchronized) 锁的作用 对于多线程同时访问共享变量时,就会产生线程安全问题。锁的作用就是对共享的变量进行加锁,当有线程在访问变量时,其他线程必须要等锁释放才可以访问,解决线程安全问题。 线程安全问题 直接上代码,下面是模拟10个线程对同时卖票的场景。 public class ThreadSecurtiy implements Runnable{ int ticket = 100; @Overrid原创 2020-09-11 19:54:41 · 1454 阅读 · 0 评论