java学习
java学习笔记
索拉里斯星的镇静剂
这个作者很懒,什么都没留下…
展开
-
java web-简单的验证码登录验证
java web-简单的验证码登录验证小结思路:编写login.jsp,登录页面展示,并且提交用户填的信息,调用资源Loginservlet进行判断,由于验证码每次刷新都是调用checkServlet进行随机创建,所以必须在一创建就传入session内部进行保存,共享资源,之后来到loginServlet里的逻辑判断,获取session下的验证码,先判断验证码,之后再判断数据库内的用户信息是否一...原创 2020-02-18 02:27:11 · 850 阅读 · 7 评论 -
java -Web-tomcat页面登录密码验证案例
文章目录Web登录检验案例1.准备工作:2.准备mysql数据库:3.写好src下的java类:4.使用Beanutils简化request接收到的数据的封装:Web登录检验案例1.准备工作:创建web项目,工具为idea,写好html登录页面,引入数据库连接池以及JDBCtemplate(spring)所需的jar包,把pro文件写好加入到src目录下,作为数据库连接池内部注册驱动连接数据...原创 2020-02-15 04:52:19 · 618 阅读 · 0 评论 -
java -xml约束与解析简介
1.xml的约束的种类:一般有dtd以及xsd,dtd对于元素的格式并无法规定,如格式而xsd对于要会读懂名称空间,看懂前缀即可。2.xml解析的方式:有dom以及sax,sax是逐行读取,然后会释放内存资源,所以不适合CRUD,通常用于移动端或者小型设备,优点是占内存少。dom即是前面javaScript的dom技术,把一颗dom树读取进内存,缺点内存占用大,优点crud方便,多用于服务...原创 2020-02-11 23:12:58 · 191 阅读 · 0 评论 -
java -浅析BeanPropertyRowMapper-转载
们在使用BeanPropertyRowMapper时,是给query()方法传递一个BeanPropertyRowMapper对象,让JdbcTemplate帮我们把查询结果集ResultSet的每一行结果都使用BeanPropertyRowMapper.mapRow()方法,转化成我们想要的Java类对象。从BeanPropertyRowMapper名称上也能够看出来,它是用来映射Java对象的...转载 2020-02-03 02:48:13 · 606 阅读 · 0 评论 -
java -jdbctemplate小例子
回顾上篇,知识总结:建好一个JDBCutils中Druid工厂类创建的数据源DataSource,即建好一个池子后,就翘起二郎腿,开始由template负责挑水打水,归还桶子,就是连接都不用引用,Statement也不用引用,甚至不用释放资源,全权由template负责。数据库:update方法/** * 这是一个实例,完成template操作小任务 * 顺便完成Junit单元测试的...原创 2020-02-03 02:40:14 · 251 阅读 · 0 评论 -
java--spring jdbc-template模板---(重要!!!)简化开发s
知识储备Spring框架对JDBC的简单封装。提供了一个JDBCTemplate对象简化JDBC的开发步骤:导入jar包创建JdbcTemplate对象。依赖于数据源DataSourceJdbcTemplate template = new JdbcTemplate(ds);调用JdbcTemplate的方法来完成CRUD的操作update():执行DML语句。增...原创 2020-02-03 01:45:36 · 248 阅读 · 0 评论 -
java -数据库连接池-c3p0/druid
CP30笔记:连接池 javax.sql.Datasource数据库连接池具体是实现由厂商提供,跟JDBC一样,必须导入jar包,这样以后就不用每次都有DriverManager创建连接了,而且这个连接池是针对这个数据库而定义的一个工厂,也就是必须初始化,注册驱动,添加路径,url用户名等等,可以理解为一口气多创几个连接。这里我们使用的是C3P0-v0.9.5.2来开始学习这个数据库连接池实...原创 2020-02-02 23:11:16 · 158 阅读 · 0 评论 -
java --关于jdbc的一点思考--DriverManager如何知道用哪个驱动
要理解的其实要把握Connection一直是一个接口,对象引用的实现类才是厂商实现的,DriverManager的调用是具体怎么样的?怎么知道用的是哪个驱动?查了一些博文,终于有点眉目了。以下皆为转载:======================================================DriverManager.getConnection()是怎么确定用哪个Drive...原创 2020-02-02 16:57:33 · 769 阅读 · 1 评论 -
java -IDEA连接使用JDBC连接数据库,并调用结果集,封装jdbcutils和结果对象集===不积跬步开发
实现连接数据库实例,并且改进后客户完成需求:需求:客户登录并验证,调用数据库内容工具:sqlyog数据库idea简介:1 jdbc由于每次在创建连接时和释放资源,都是重复工作,这在开发时是尽量要避免的,故编写了jdbcutils 工具类2 然后是调用的优化,不可能每次都得改代码取哪个库,所以使用了properties文件,直接把 数据库驱动调用 和 url 用户名 ...原创 2020-02-01 16:54:46 · 522 阅读 · 0 评论 -
java --对jdbc的理解与例子介绍
public class JdbcDemo1 { public static void main(String[] args) throws Exception { Class.forName("com.mysql.jdbc.Driver"); Connection conn = DriverManager.getConnection("jdbc:mysql...原创 2020-01-30 18:26:24 · 144 阅读 · 0 评论 -
java 字节码文件详解
从实例对象获取class类对象,再进行操作,是注解测试中常用的方法。原创 2020-01-24 16:00:02 · 104 阅读 · 0 评论 -
Java 8 function接口 jdk源码分析
default Function<T,V> andThen(Function<? super R,? extends V> after)返回一个组合函数,首先将该函数应用于其输入,然后将 after函数应用于结果。这是java9 api的描述,描述的有点拗口,返回的是一个组合函数?,不是先返回一个函数接口的实现类吗?return (T t) -> after...原创 2020-01-23 12:29:00 · 249 阅读 · 0 评论 -
java string stringbuffer stringbuilder
打开StringBuffer源码就会发现所有写操作都被synchronized修饰了,所以所有修改操作都是串行的。而StringBuilder的写操作则没有使用synchronized进行修饰,也不包含其他串行化修改的算法。String适用于少量的字符串操作的情况StringBuilder适用于单线程下在字符缓冲区进行大量操作的情况StringBuffer适用多线程下在字符缓冲区进行大量操...原创 2020-01-22 19:57:58 · 162 阅读 · 0 评论 -
java 本地模拟B\S服务器
模拟B\S服务器(扩展知识点)模拟网站服务器,使用浏览器访问自己编写的服务端程序,查看网页效果。package cn.itcats.demo;import java.io.*;import java.net.ServerSocket;import java.net.Socket;public class TCPServer{ public static void m...原创 2020-01-22 17:22:01 · 272 阅读 · 0 评论 -
java 网络编程 tcp实现文件传输
文件上传分析图解【客户端】输入流,从硬盘读取文件数据到程序中。【客户端】输出流,写出文件数据到服务端。【服务端】输入流,读取文件数据到服务端程序。【服务端】输出流,写出文件数据到服务器硬盘中。服务端实现:public class FileUpload_Server { public static void main(String[] args) throws IOExce...原创 2020-01-22 15:45:46 · 964 阅读 · 1 评论 -
java Lambda 表达式小结,用法和问题
import java.util.Arrays;public class Demo07ComparatorLambda { public static void main(String[] args) { Person[] array = { new Person("古力娜扎", 19), new Person("迪丽热巴"...原创 2020-01-17 15:58:02 · 138 阅读 · 0 评论 -
java 互斥同步--与操作系统理论的结合实践
先上代码 再分析package com.itheima.demo01.WaitAndNotify;/* 消费者(吃货)类:是一个线程类,可以继承Thread 设置线程任务(run):吃包子 对包子的状态进行判断 false:没有包子 吃货调用wait方法进入等待状态 true:有包子 吃货吃包子 吃货吃完包子 修改包子的状态为false没有 吃货唤醒包子铺线...原创 2020-01-17 15:56:06 · 155 阅读 · 0 评论 -
java Colections类工具类实例一个斗地主发牌洗牌看牌
package cn.itcats.demo;import java.text.DateFormat;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.*;public class Demo {public static void main(String[] args) ...原创 2020-01-17 15:51:27 · 153 阅读 · 1 评论 -
java 线程同步方法3--使用lock接口
分析:这是高手的写法1.注意看unlock的写法,放在finally里面,当ticket<=0时,线程就阻塞了,不会一直执行下去。2.注意输出的位置,当阻塞被意外地中断,异常了,不能正常睡眠,终止或者被调用?(可不可能被调用有待学习)时,应当对本次异常情况下,不再卖票。...原创 2020-01-15 22:38:42 · 122 阅读 · 0 评论 -
java 了解静态同步方法,中.class的思考与getClass
//定义一个多个线程共享的票源private static int ticket = 100;//设置线程任务:卖票@Overridepublic void run() { System.out.println("this:"+this);//this:com.itheima.demo08.Synchronized.RunnableImpl@58ceff1 //使用死循...原创 2020-01-15 18:18:39 · 309 阅读 · 0 评论 -
java数据类型,大概但是说不出来的误区
JAVA的基本数据类型和引用数据类型的区别:1、基本数据类型有:byte:Java中最小的数据类型;short:短整型;int:整型;long:长整型;float:浮点型;double:双精度浮点型;char:字符型;boolean:布尔类型。引用数据类型有:类、接口类型、数组类型、枚举类型、注解类型。2、基本数据类型在被创建时,在栈上给其划分一块内存,将数值直接存储在栈上。而引用数据类...原创 2020-01-11 15:12:30 · 116 阅读 · 0 评论 -
java 内部类,成员内部类,局部内部类 ----小结
这一部分内容有点多,有点绕,而且protected的规则还未了解,先梳理一下内部类内部类分为成员内部类和局部内部类(含匿名内部类)一 成员内部类.先说成员内部类:内部类方法可以随意使用外部类,而外部类使用内部类的方法等,一定要有内部类对象!!而外部类使用内部类的方法又可以分为直接和间接法,间接法就是通过外部类的方法调用创建实例再访问,直接法则在psvm方法里面创建即可,格式为:外部类访问...原创 2020-01-07 18:51:38 · 134 阅读 · 0 评论 -
java 笔记本电脑usb接口小例子,接口的基本使用,使用接口作为方法的参数,转型的例子
package cn.itcats.demo;public class Computer { public void powerOn(){ System.out.println("打开电脑"); } public void powerOff(){ System.out.println("关闭电脑"); } public v...原创 2020-01-06 17:24:44 · 341 阅读 · 0 评论 -
java 接口抽象类的区别
以上代码定义了三个接口分别是:Study,Eat,Sleep,以及两个类分别是Cat和Person。其中Cat类实现了两个接口分别是:Eat和Sleep,而Person实现了三个接口分别是:Study,Eat,Sleep。这是为什么呢?就是因为Cat并不需要学习,而Person需要学习,所以在Cat类中没有实现Study这个接口,而在Person中却是有的。那么显而易见,接口所阐述的是“有没有”的...原创 2020-01-04 23:49:13 · 95 阅读 · 0 评论 -
java 接口 静态私有默认抽象方法,要点重点学习
接口1.首先接口不是一种基本数据类型接口理解:接口不是被类继承了,而是要被类实现。接口支持多重继承。接口就像电脑的usb,其中静态方法就像usb有一个led启动灯,由usb直接启动无需对象,抽象方法就是定义了可以互相传输数据的方法,默认方法是usb升级了,添加了一个播放功能,那么此时,播放功能也可以由客户自定义化,就是运用了默认方法的可重写性!!2.接口同abstract类一样不可...原创 2020-01-04 23:12:03 · 422 阅读 · 0 评论 -
java 群主发红包系统--继承多态的运用应用
分为4个模块,test主函数,User为抽象类,QunZhu为群主类,有发红包的方法;Member为成员类,有拿红包的方法。public class Test { public static void main(String[] args){ QunZhu qz= new QunZhu("群主",600); Scanner sc = new Scan...原创 2020-01-04 14:44:11 · 296 阅读 · 0 评论 -
java类中泛型的运用
E代表泛型,即基本类型不可以使用,只可以用 String,自己定义的类等引用类。一般也称为包装类:原创 2020-01-02 23:02:56 · 135 阅读 · 0 评论 -
Java 笔记:打印数组,Arrays类的静态方法,与chars数组的一些细节
package cn.itcats.demo.father;import java.util.ArrayList;import java.util.Arrays;import java.util.Random;import java.util.Scanner;public class Extends { public static void main(String[] args...原创 2020-01-03 18:55:34 · 266 阅读 · 0 评论 -
java 静态代码块
静态代码块唯一一次调用,在以后的项目中应用广泛原创 2020-01-03 18:20:55 · 116 阅读 · 0 评论 -
Java static的中成员,方法,静态方法的调用于区分
**注释1**:首先static无规定private还是public ,默认为default,一般public可以跨类跨包,private只能由对象本身访问,而protected可以在本类和子类下跨包,default可以实现同一个包内可以访问。还有此处静态的idCounter的调用方法注意一下public class Student { private int id;...原创 2020-01-03 17:34:46 · 314 阅读 · 0 评论 -
java Sting类中concat的运用以及charAt,indexOf的运用
concat说明1.concat的使用public String concat(String str)将指定字符串连接到此字符串的结尾。如果参数字符串的长度为 0,则返回此 String 对象。否则,创建一个新的 String 对象,用来表示由此 String 对象表示的字符序列和参数字符串表示的字符序列连接而成的字符序列。示例:“cares”.concat(“s”) returns “...原创 2020-01-03 01:15:20 · 236 阅读 · 0 评论 -
java String字符串常量池中:引用类的比较
java String字符串常量池中:引用类的比较首先只要是“”中的字符串都在字符串常量池中,对于基本类型来说,==是对于数值的比较;而对于引用类型来说,是对于【地址值】的比较;明确1.“abc”类型的不是一种基本类型,已经默认构造了一个实例对象,即相当于new过,在堆中有地址,如下0x666,但是存储的位于常量池中。2.而char数组的内容,一开始还没new,数组也是保存在堆当中,...原创 2020-01-02 23:43:45 · 240 阅读 · 0 评论 -
String类的4中构造方法
String类的构造方法:首先明确字符串的特点:1.字符串为常量,不可更改,但是可以重新指向堆里面的不同地址2.可被共享3.string的底层构造实现其实是由char数组,查api文档可知:String类的4中构造方法1 String(char[] value)分配一个新的 String,使其表示字符数组参数中当前包含的字符序列。2 String()初始化一个新创建的 St...原创 2020-01-02 23:25:45 · 158 阅读 · 0 评论 -
java: 无法从静态上下文中引用非静态 方法
Error:(11, 9) java: 无法从静态上下文中引用非静态 方法 printArraylist(java.util.ArrayList<java.lang.String>)解决办法有2个:①:把调用的printArrayList的方法改为静态,在public后加static②:创建一个实例,对原printArraylist进行调用,如下即解决了问题...原创 2020-01-02 23:06:52 · 12182 阅读 · 4 评论
分享