- 博客(25)
- 收藏
- 关注
原创 Java连接数据库
在Resultset中看到next()方法,一定用到Iterator迭代器,这个迭代器可以用next();java面向接口,提供了数据库的相关接口,每个不同的数据库厂家根据接口开发方法。Java使用数据库,调用对应接口的实现。注意:java 只出规范,其他的应用按照规范去开发,java在每一个规范中都有反射去找到相关的类。(6)根据mysql的数据类型与java 的数据类型的对应关系,使用对应的get方法,得出结果.在数据方法中,Connection中有方法close(),close()关闭。
2023-12-01 17:30:48 1173
原创 数据库事务管理
insert into user(username,sex,position,age,password,is_delete) values("赵五","男","杭州",20,"123456",0), ("赵五","男","杭州",20,"123456",0),("赵五","男","杭州",20,"123456",0);内存中值:数据新值, 修改数据赋予一个新值,数据库的值旧值, 发出修改操作,把内存和数据库的值做对比,一致,允许修改,不一致就不允许修改.数据库删除就变成更新的问题。
2023-11-29 17:16:24 405
原创 java的进程和反射射
如果抢票,程序开线程的,出现重票,线程启动时间不同,两个线程同时执行一个操作,同时进行tickets减1操作。,线程进入程序后,为程序加锁,其他线程进入不了这个程序,等待这个程序执行结束,才会继续执行,这种技术:线程不安全。数据传输过程中,可以出现同时取一条数据。Run() run重写run, 在线程中处理的问题逻辑。对于文件,执行一边读,一边写,读和写是同时进行的。计算机运行的单位,每一个程序就是一个进程。多个用户运行程序,线程 Thread。start()进程开始。线程安全,自动处理并发。
2023-11-27 17:24:29 605
原创 Java的字符流和字节流
这里报错,New Writer里面传File,File没有路径是做不了的.相当于剪切必须知道剪切到哪里.实际操作是不知道路径的,就必须有一个路径先有效,后期把路径覆盖.。list()--à列出当前目录的所有文件或文件夹,返回值String[] ,返回只有文件名,路径可以拼接。Buffer,使用缓存,write后一定flush(),如果关闭,自动flush()不执行flush(),数据在缓存中,flush()之后数据变成实际的文件。剪切,复制对文字是100%有效,字符流更好保证了剪切,复制,粘贴。
2023-11-27 17:22:52 496
原创 java的IO流(2)
最后修改时间与日志记录文件的用户最后修改时间,如果用户允许操作,这个用户不允许操作,这个用户是攻击用户。遍历文件(遍历指定目录下所有文件,文件判断是否是图片,是图片,移动到某个目录去保存,输出文件修改时间。获取项目目录,获取项目目录(需要项目文档文件,word,excel数据文件) 获取内容 get。文件的拷贝,复制,剪切,粘贴都是对文件内容进行操作。应用处理图片,只有图片文件符合要求,获取文件名字。createNewFile创建新的文件(空文件)返回的目录和文件,带路径,返回的是文件数组。
2023-11-23 17:40:35 271
原创 java IO流
Next()接收字符串很稳定,付出代码需要用数组来存储数据,进行转化,转化效率低,字符串底层就是字符数组. 只接收字符数组第一位.char在内存中只用一个字节存储.实例化的类不想总实例化,用静态,必须接口中的静态必须实现,再则静态方法中的全局变量是静态变量,静态类不需要面向接口.工具类需要在内存中,工具类是程序中用到算法.While(true)中出现try----catch,很难控制菜单循环问题,try后面的内容就相当于函数一样,理解自己的保护.常用的文件就是没有格式的文件,这个文件只是文件。
2023-11-22 16:33:01 190
原创 Java集合使用实战
(思路:把商品按商品编号去重,不能按商品的全部信息去重,保证编号和商品对应,这里有两个对应关系:编号---à对应--à商品,解决对应关系,key就是编号,value就是商品 ,HashMap的key自动去重 )或者类(属性,方法)-à类属性--à值 ,把属性封装, 封装后私有化,某些属性可以getter,setter。后台: 商品管理(上传商品,删除商品-à上架,秒杀,打折à售卖价格,提供丰富的查询) 订单管理 支付管理)需要商家输入上架商品的内容,这里获取内容,必然有参数,参数就是商品类。
2023-11-21 19:02:23 115
原创 java的集合
实际的处理中,往往把线性结构和链式结构合在一起。读取使用线性结构,保存数据使用链表结构。引入一个结点类型Node,有三部分,前指针prev,后指针next,内容item。通过算法计算线性表的存储,当线性表出现冲突,采用链表。器,判断迭代器是否有下一个元素,如果有直接输出下一个元素。链表,读取效率低,但是添加/修改/删除效率高。互联网处理的信息都是值对信息,获取相关的信息。值对,Map就是典型的值对数据的类型,的顺序,对列表中的重复数据不去重。的顺序,对列表中的重复数据不去重。ArrayList是线性结构。
2023-11-20 17:45:27 178 1
原创 java:ArrayList列表
打印列表的变量名称时,输出列表中所有的元素。因为数组是定长,这里删除应该新的数组,这里只把元素做移动,官方做移动的原理还是数组的拷贝,移动前后的数组本来是两个数组,如果名称一致是一个数组,前面数组参数。本来扩容了10个元素的数组,只有一部分有值,没有值就是null,官方源码中有一个rangCheck(),方法不允许访问数组中的空元素.初始容量为10,把空数组扩容,扩容到10个元素,**********remove del(删)*********get(索引值)---查。********Add方法(增)
2023-11-17 14:52:05 189
原创 java字符串使用(2)
StringBuilder里面的replace特点,可以指定开始位置和结尾位置进行替换,String里面的replace特点,从字符串开始到字符串结尾遍历查找,查找到调用StringBuilder来替换。如果使用到字符的替换,使用StringBuilder中的替换代替String中的替换,方法很有效率。concat 开辟一个两个字符长度的空间,把两个字符串连接在一起。只有一种情况:替换的字符串在字符串中不知道位置。1、所有的修改字符串操作都是不能替换原串的,开始,第二个是结束,第一个替换的字符串。
2023-11-17 14:49:18 305
原创 java字符串的使用
Java的String是一个final类,不能被继承,同时定义的每一个字符串Java在后台会变成char型数组保存,这个char型数组是final的,final定义的值不能在程序的执行过程中改变的.这两个串是否相等,使用==号,比较的是地址。new String(“a”)相当于产生一个对象a,a底层就是char[],final,不能改变值,最后连接的ab一定不是地址,最后产生的ab一定也是一对象.根据字符串类的源码,得出字符串类中有一个final的char型数组,这是final,在运算过程中不能改变值.
2023-11-16 09:33:38 119 1
原创 java面向接口的程序设计
(3)对于算法类或者工具类,没有必要实例化,把类加上static相当静态类,静态类不需要实例化,直接使用类名.方法来访问。有抽象方法就是抽象类,类也由abstract来修饰,如果类是抽象类不能被实例化,类中方法不能被调用。实例方法中可以存在静态变量,在操作上允许,但是开发中不允许,方法中静态,就把实例方法变在静态方法。面向过程-----------à面向对象的开发 -----à 面向接口的开发。最后算法类或者工具类设计成类中的静态方法,静态的关键字是。静态的特点,保证运算速度,在内存上最先执行的。
2023-11-16 09:26:31 54 1
原创 java面向对象的程序设计(4)
属性:购物车存放多个商品,存放多个数据的只能是数组,数组是定长,规定只放5个商品,属性类型是数组,数组中存放的是每一个商品,数组中每个元素的类型就是商品类。在自己的订单中,少了这个状态,少这个状态没有办法做定单关闭.解决立即购买和加入购物车之间的切换问题,理解订单的状态.需要订单类中多加一个属性status.订单结束,用户购买行为结束,(一般行为,形成订单后,不付款,在一定时间内订单关闭,订单可以不支付)不能转化的原因是mycart是一个购物车的类,类中有数组,需要调用类中的数组。
2023-11-16 09:21:15 113 1
原创 java面向对象程序设计(3)
在出现的对话框中出现所有的变量选择,根据需求,除了big_pic,其它都是get和set都需要的方法,连续选择的变量使用shift键配合鼠标操作,如果是不连续选择的变量,使用ctrl键配合鼠标操作.封装: 把方法或属性放在类中,某些方法和属性需要用户访问,这里可以使用public ,某些方法或属性只属于当前的类调用,不会为其它类服务,这里可以使用private。在出现的菜单中,有专门的getter方法,setter方法,还有getter和setter方法.根据修改的Goods,先改Pay和Order。
2023-11-14 17:47:12 110
原创 java面向对象的程序设计(2)
在调用模块中可能出现某个子类在父类中没有的属性,直接把父类的属性去掉,在子类中构建构造函数,构造函数没有返回值,可以自己实现,可以使用编辑工具自动产生。需要找一个属性名最多的类实例化,也就是实例化继承链最底端的类,保证只有一个地址,这个实例在整个程序中有效,需要在main当中进行实例化。重写:父类定义方法,子类实现这个方法,子类继承了父类的方法,但父类方法满足不了子类的需求,需要重写。,父类中定义这个方法,不实现方法中的代码,由子类去重写,重写的关键字是。方法只有子类去重写父类,只有继承后才可能发生重写。
2023-11-14 17:38:12 128
原创 Java面向对象的程序设计
首页:显示所有商品,必须有main函数,main函数中是所有商品的显示,商品是具体的实例,原来商品是抽象的概念,在首页上知道内容,首页上是商品实例对象的显示.首页代码,new商品类的对象,让用户选择浏览哪一个商品.。这里的订单,需要继承goods的类,把类中所有内容取出来,用到订单中.继承后就是子类和父类,子类具备父类的所有属性和方法.继承的关键字是extends,生成订单是功能,生成订单后才能支付,还要计算用户的钱,有商品价格,商品的数量,商品的名称。写面向对象的方法时,把static的静态去掉。
2023-11-08 17:35:48 187 1
原创 java-数组
二分查找需要超始的索引,和终止的索引.二分查找特点需要查找的值>中间值,在后面找,起始的索引变化,同样,如果需要查找的值<中间值,在前面找,终止的索引变化,不管哪一个轮次,两两比较,大数沉底 ,轮次就是循环的量,轮次的索引值为0,每个轮次进行比较,比较的取多次数是n-1,减去一个比较完的数。数组之间的赋值相当于把地址赋值给数组,不是数据,也就是两个数组变量指向了同一个地址,这个地址中的数据都是一样的,这种变量叫引用变量.左游标 停在12的位置上,,最后基数位置和12的位置换掉。
2023-11-07 15:45:00 117
原创 java简单游戏算24
/数字可能出现11 12 13,出现11 12 13转换J Q K,把变量接收,判断是否是11 12 13。//采用这个内容,不满足表达式一定报错,借助于ScriptEngine中的异常,现在不能抛,去try。//表达式可能有J,Q,K,可以自动去做计算,把J,Q,K换成1,使用replace替换。//可以简单化,直接输出数字到屏幕,输出4遍随机,这里可以用循环,确定循环次数。//nextLine()用户会输入一堆空格,没有用户名,直接回车,这种情况违法。
2023-11-03 16:30:25 220
原创 进阶的java循环(2)
(规定:游戏类退出一般都是主角生命值或者用户的某种操作决定,否则一直在游戏中)通过1-100的和特点,循环外设置变量累积和,这里在循环记录表达式结果的值。3、由电脑计算算式的结果是否正确,如果正确,继续出4个数字,可以用户确认发牌作为循环控制量,如果循环发牌变量为n,可以退出.这两种方式的编程,必须把变量控制的逻辑理清楚,才能控制流程。根据上一步来的,每一步都会有新的算式,找到循环变量,循环变量还需要初始化,判断出循环条件。根据流程(结合1+2+3+。2、用户输入算式,算式结果是24。
2023-11-02 17:46:11 216 1
原创 进阶的java循环
把需要循环放在循环体里,确定好循环的条件,确定循环次数使用for,不确定循环次数使用while,可以效仿class文件,所有的循环都用for解决。现在再改,如果j==i,打印完当次结果,就没有必要再进入循环体,再进入循环体也就是判断退出,把j==i条件放在打印的后面.最麻烦的”” ,在java编程中,单引号和双引号都有特殊意义,双引号内部输出双引号,可以使用转义\,加上一个引号。{1,2}大括号里面的1,2,小数点后面的位数只能1位或者是2位,如果对于数字限定位数,就用大括号。循环变量循环条件;
2023-11-01 17:34:41 313 1
原创 简单的java循环
在后台,系统随机产生价格数字,由用户通过平台猜,猜出一个数字后,系统机器人通知你信息,大了,小了。System.out.println(username+",欢迎进入游戏空间,现在请选择的价格猜猜猜商品的类别");//考虑一下,用户在while没有出来过,做一个规定,如果用户输入0或者负数,直接退出猜价格。System.out.println("1------家电(1000-2000)");System.out.println("2------文具(1-100)");
2023-10-31 17:01:10 561 1
原创 石头剪刀布java
System.out.println("玩家:"+player_name+",出拳:"+player_choice_name+"平局");System.out.println("玩家:"+player_name+",出拳:"+player_choice_name+"赢");System.out.println("玩家:"+player_name+",出拳:"+player_choice_name+"输");System.out.println("****请玩家选择出拳的代表数字*********");
2023-10-30 17:39:08 204 1
原创 趣味测试入门java程序2
System.out.println("学号:" + no + ",姓名:" + name + ",成绩为:" + sum);System.out.println("学号:" + no + ",姓名:" + name + ",成绩为:" + sum);System.out.println("你选择了退出考试,没有参加任何一门课程的考试");System.out.println(" 1--------------数学");System.out.println(" 2--------------英语");
2023-10-27 17:52:09 173 1
原创 趣味测试入门java程序
/如果是郭靖和黄蓉,则100%,这里需要用到if,同时符合(与 && and,),如果两个条件成一个是或(|| or),等号一定是双等(=)// (3) 系统算姻缘指数(随机值) Math数学类 randInt(选定空间) randInt(100)//(1) 输入男生名字 : 需要Scanner,只需要一个Scanner,接下来接收,next()if (boy.equals("郭靖") && girl.equals("黄蓉")){// (2) 输入女生名字 :完成接收。
2023-10-26 16:41:47 103
原创 java的安装
出现的界面选择activation code,输入文件夹中的激活码,点击activation按钮激活。所需软件:JDK1.8 IntelliJ IDEA2021。ja-netfilter-all,拷贝到路径中不出现中文。用记事本打开文件,直接把新建文本文档中的内容拷贝过来。开发工具 IntelliJ IDEA2021。安装成功后直接关闭。接下来的桌面直接“install”下载后双击jdk1.8的文件。这里可以更改目录更改安装路径。复制“新建文本文档”的代码。然后双击桌面快捷图标。
2023-10-25 17:08:36 132 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人