![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA
文章平均质量分 96
最长的电影!
这个作者很懒,什么都没留下…
展开
-
Mybatis所用的模式和缓存
Mybatis的一级缓存和二级缓存一.设计模式分析InputStream in = Resources.getResourceAsStream("SqlMapConfig.xml"); //2.创建SqlSessionFactory工厂 SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();//创建工厂mybatis使用了构建者模式 SqlSessionFactory fa原创 2020-11-21 20:39:06 · 247 阅读 · 1 评论 -
数据库连接池
数据库连接池1.数据库连接池基本概述1.1概念1.2好处1.3实现2.C3P02.1使用步骤1.数据库连接池基本概述1.1概念其实就是一个容器(集合),存放数据库连接的容器。当系统初始化以后偶,容器被创建,容器中会申请连接对象,当用户访问数据库时,从容器中连接对象,用户访问完之后,会将连接对象归还给容器。1.2好处1.节约资源2.高效1.3实现1.标准接口:DataSource javax.sql包下的。方法:getConnnection()归还连接:Connection.close()原创 2020-07-08 21:46:38 · 237 阅读 · 0 评论 -
JDBC控制事务
1.事务:如果一个包含多个步骤的业务操作,被事务管理,那么这些操作要么同时成功,要么同时失败。2.操作:开启事务:start transaction;回滚:rollback;提交:commit;3.使用Connection来管理事务开启事务:void setAutoCommit(boolean autoCommit) :调用该方法设置参数为false,即开启事务。提交事务:void commit()回滚事务:void rollback()package com.wcy.demo1.jdbc原创 2020-07-07 21:48:18 · 197 阅读 · 0 评论 -
JDBC事务管理
接着上面一篇文章讲,你们觉得代码写的好吗???上面那个练习其实写的垃圾!!!假如你的代码放到网站上去了,我们来玩一玩,试试看,我先随便输入个账号,再输入个密码,也能登陆成功!!!以上操作是不是很危险???那么这个问题称为SQL注入问题1.输入用户名随便,输入密码:a’ or ‘a’='a2.sql:select * from user where username='wedwedewd’and password=‘a’ or ‘a’='a’当我们把上面sql语句执行查询的时候会发现,它会查出所原创 2020-07-07 21:13:55 · 126 阅读 · 0 评论 -
JDBC登录练习
需求:1.通过键盘输入用户名和密码2.判断用户是否登录成功步骤:1.创建数据库表user2.创建一个类1.首先写好工具类:JDBCUtilspackage JDBCUtils;import java.io.IOException;import java.io.InputStream;import java.sql.*;import java.util.Properties;/** * JDBC工具类 */public class JDBCUtils { privat原创 2020-07-06 21:09:32 · 125 阅读 · 0 评论 -
JDBC
JDBC1.JDBC基本概念2.快速入门3.详解各个对象3.1 DriverManager:驱动管理对象3.2 Connection:数据库连接对象3.3 Statement:执行SQL的对象3.4 ResultSet:结果集对象3.5 PreparedStatement:执行SQL的对象4.JDBC工具类:JDBCUtils4.1目的1.JDBC基本概念概念:Java DataBase Connectivity Java 数据库连接,Java语言操作数据库。JDBC本质:其实是官方(sun)定义的原创 2020-07-05 21:53:46 · 209 阅读 · 0 评论 -
Java注解
1.什么是注解?首先什么是注释?注释:用文字描述程序的。给程序员看的注解:说明程序的。给计算机看的概念描述:1.JDK1.5之后的新特性 2.说明程序的 3.使用注解:@注解名称2.作用分类①编写文档②代码分析③编译检查3.JDK中预定义的一些注解1.@Override:检测被该注解标注的方法是否继承自父类(接口)的。2.@Deprecated:将该注解标注的内容,已过时。3.@SuppressWarnings:抑制编译器警告的。一般传递参数all。用...原创 2020-06-29 22:24:11 · 160 阅读 · 0 评论 -
反射的实质性作用
半成品框架需求:写一个“框架”,不能改变该类的任何代码的前提下,可以帮我们创建任意类对象,并且执行其中任意方法。实现:1.配置文件2.反射步骤:1.将需要创建的对象的全类名和需要执行的方法定义在配置文件中。2.在程序中加载读取配置文件3.使用反射技术加载类文件进内存4.创建对象5.执行方法1.创建Person对象package reflect;public class Person { private String name; private int age原创 2020-06-28 21:16:07 · 138 阅读 · 0 评论 -
Junit单元测试与反射
1.Junit单元测试测试分类:1.黑盒测试:不需要写代码,看不到程序执行的过程,输入一些参数,是否能看到预期的结果。2.白盒测试:需要写代码,可以看到程序执行的过程,输入一些参数,是否能看到预期的结果。Junit使用:白盒测试首先看一个例子:package com.wcy.demo1.Junit;/* 计算器类 */public class Calculator { /** * 加法 * @param a * @param b *原创 2020-06-27 14:57:06 · 260 阅读 · 0 评论 -
两种获取Stream流的方式
java.util.stream.Stream是jdk8加入的最常用的流接口。1.所有的Collecton集合都可以通过stream默认读取流2.stream的接口的静态方法of可以获取相对应的流package com.wcy.demo1.Stream;import java.util.*;import java.util.stream.Stream;public class demo2Stream { public static void main(String[] args)原创 2020-06-26 17:18:16 · 776 阅读 · 0 评论 -
Stream流
流式思想概述1.当需要对多个元素进行操作(特别是多步操作)的时候,考虑到性能及便利性,我们应该首先拼好一个“模型”步骤方案,然后再按照方案去执行它。备注:“Stream流”其实是一个集合元素的函数模型,它并不是集合,也不是数据结构,其本身并不存储任何元素(或其地址值)。Stream(流)是一个来自数据源的元素队列元素是特定类型的对象,形成一个队列。Java中的Stream并不会存储元素,而是按需计算。数据源 流的来源,可以是集合,数组等,和以前的Collection操作不同。Stream操作还有两个原创 2020-06-26 16:55:01 · 178 阅读 · 0 评论 -
常用函数式接口
主要的函数接口都放在java.util.function中。那么介绍一下常见的函数式接口。Supplier接口1.认识Supplier接口java.util.function.Supplier<T>接口中包含了一个无参的方法:T get()。Supplier接口被称之为生产型接口,指定接口的泛型是什么类型,那么接口中的get方法就会生产什么类型的数据。package com.wcy.demo4.Supplier;import java.util.function.Supp原创 2020-06-26 14:11:32 · 198 阅读 · 0 评论 -
使用Lambda作为参数和返回值
1.使用Lambda作为参数java.lang.Runnable就是接口就是一个函数式接口,假设有一个startThread方法使用该接口作为参数,那么就可以使用Lambda进行传参,这种情况其实和Thread类的构造方法参数Runnable没有根本区别。package com.wcy.demo3.LambdaTest;/* 例如java.lang.Runnable就是接口就是一个函数式接口, */public class demo1Runnable { //定义一个方法star原创 2020-06-26 13:02:55 · 3240 阅读 · 0 评论 -
函数式编程
Lambda的延迟执行注:日志可以帮助我们快速定位问题,记录运行过程中的情况,以便项目的监控和优化。认识函数式接口(定义)package com.wcy.demo1.functioninterface;/* 函数接口:有且只有一个抽象方法的接口 */@FunctionalInterfacepublic interface MyFunctioninterface { //定义一个抽象方法 public abstract void method();}packag原创 2020-06-25 22:40:30 · 114 阅读 · 0 评论 -
ArrayList基础2
如果希望集合ArrayList当中存储基本类型数据,必须使用基本类型对应的包装类基本类型 包装类(应用类型。包装类都位于java.lang包下)byte Byteshort Shortint Integer 记住这个float Floatdouble Doublechar Character 这个boolean...原创 2020-04-24 15:14:01 · 91 阅读 · 0 评论 -
ArrayList基础
ArrayList常用方法:1.public boolean add(E e);向集合当中添加元素,参数的类型和泛型一致,返回值是否添加成功。备注:对于ArrayList而言,add的添加动作一定是成功的,所以返回值可用可以不用2.public E get(int index);从集合中获取元素,参数是索引编号,返回值就是对应的位置元素3.public E remove(int index...原创 2020-04-23 21:37:58 · 113 阅读 · 0 评论 -
用java获取本月日历表
用Java获取本月日历表这张日历表应该怎么打印出来?首先,获取本月,获取本天,创建本地日期类对象。 LocalDate date=LocalDate.now(); int month=date.getMonthValue();//获取本月 int today=date.getDayOfMonth();//获取本天 2.创建一个周期对象。 ...原创 2019-11-16 16:31:07 · 1104 阅读 · 0 评论 -
用Java实现猜数字小游戏
用Java实现猜数字小游戏在现实生活中,你肯定玩过这样一个游戏:同学A向同学B同学发起挑战说: 我们玩一个游戏,我说一个0到100之间的一个数你猜一下这个数是多少?猜大了,我会给你说你猜大了,猜小了,我会提醒你猜小了。谁用的次数最少猜出,谁就赢了,怎么样?如果你要是输了,下午放学请吃辣条哈。我要是输了,下午放学请你吃辣条。B同学一听,可以啊,还有得辣条吃,那感情好,于是应了一句:不许耍...原创 2019-11-15 22:48:06 · 1128 阅读 · 4 评论 -
java二维数组的创建及其应用
java二维数组的创建及其应用问题描述代码如下问题描述统计二维整数数组中,横向或纵向连续3个相邻元素的最大和。输入说明:数组行数m列数n,二维整数数组中元素;输出说明:此数组中横向或纵向连续3个相邻元素的最大和。代码如下/**************************************************//******************************...原创 2019-11-05 17:01:57 · 501 阅读 · 2 评论