Java中级
文章平均质量分 66
Java中级
果果要努力了
间接性踌躇满志,持续性混吃等死
展开
-
Java-Swing五种常见的布局器
Swing五种常见的布局器标签使用JLabel显示图片按钮复选框单选框按钮组下拉框对话框文本框密码框文本域进度条文件选择器JAVA的图形界面下有两组控件,一组是awt,一组是swing。一般都是使用swing标签Label用于显示文字package gui;import java.awt.Color;import javax.swing.JFrame;import javax.swing.JLabel;public class Text { public static void原创 2021-02-13 19:43:46 · 701 阅读 · 2 评论 -
Java-SWING五种常见的布局器
SWING五种常见的布局器绝对定位FlowLayoutBorderLayoutGridLayoutsetPreferredSizeCardLayout布局器是用在容器上的。 用来决定容器上的组件摆放的位置和大小绝对定位绝对定位就是指不使用布局器,组件的位置和大小需要单独指定package gui; import javax.swing.JButton;import javax.swing.JFrame; public class TestGUI { public static v原创 2021-02-03 14:30:48 · 850 阅读 · 1 评论 -
Java-SWING 的容器 JFRAME和JDIALOG
Java-SWING 的容器 JFRAME和JDIALOGJFrameJDialog模态JDialog窗体大小不可变化java的图形界面中,容器是用来存放 按钮,输入框等组件的。窗体型容器有两个,一个是JFrame,一个是JDialogJFrameJFrame是最常用的窗体型容器,默认情况下,在右上角有最大化最小化按钮package gui;import javax.swing.JButton;import javax.swing.JFrame;public class JFrame原创 2021-02-03 13:47:30 · 351 阅读 · 2 评论 -
Java-SWING 如何进行事件监听
如何进行事件监听按钮监听键盘监听鼠标监听适配器按钮监听ActionListener 按钮监听创建一个匿名类实现ActionListener接口,当按钮被点击时,actionPerformed方法就会被调用package gui;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.ImageIcon;import javax.swing.JButton;imp原创 2021-02-01 17:45:16 · 668 阅读 · 0 评论 -
Java-图形界面 Hello Swing练习
图形界面 Hello Swing练习在上次关闭位置启动窗口在上次关闭位置启动窗口比如这次使用这个窗口,导致窗口被移动到了右下角。 关闭这个窗口,下一次再启动的时候,就会自动出现在右下角。思路提示:启动一个线程,每个100毫秒读取当前的位置信息,保存在文件中,比如location.txt文件。启动的时候,从这个文件中读取位置信息,如果是空的,就使用默认位置,如果不是空的,就把位置信息设置在窗口上。读取位置信息的办法: f.getX() 读取横坐标信息,f.getY()读取纵坐标信息。注:这个练习原创 2021-02-01 14:45:21 · 233 阅读 · 0 评论 -
Java-图形界面 Hello Swing
图形界面 Hello Swing简单的例子GUI - Graphic User Interface 图形用户界面简单的例子JFrame是GUI中的容器JButton是最常见的组件- 按钮注意:f.setVisible(true); 会对所有的组件进行渲染,所以一定要放在最后面package gui;import javax.swing.JButton;import javax.swing.JFrame;public class SWINGText { public static v原创 2021-02-01 14:09:31 · 120 阅读 · 0 评论 -
Java-数据库连接池
数据库连接池数据库连接池原理-传统方式数据库连接池原理-使用池ConnectionPool构造方法和初始化测试类数据库连接池原理-传统方式当有多个线程,每个线程都需要连接数据库执行SQL语句的话,那么每个线程都会创建一个连接,并且在使用完毕后,关闭连接。创建连接和关闭连接的过程也是比较消耗时间的,当多线程并发的时候,系统就会变得很卡顿。同时,一个数据库同时支持的连接总数也是有限的,如果多线程并发量很大,那么数据库连接的总数就会被消耗光,后续线程发起的数据库连接就会失败。数据库连接池原理-使用池原创 2021-01-30 20:09:19 · 166 阅读 · 0 评论 -
Java-基于JDBC设计DAO的实例
基于JDBC设计DAO的实例DAO接口HeroDAO主函数DAO=Data Access Object数据访问对象实际上就是运用了练习-ORM中的思路,把数据库相关的操作都封装在这个类里面,其他地方看不到JDBC的代码DAO接口package JDBCText;import java.util.List;public interface DAO { //增加 public void add(Hero hero); //修改 public void update(原创 2021-01-30 19:08:31 · 285 阅读 · 0 评论 -
Java-使用JDBC做一个ORM例子
使用JDBC做一个ORM例子ORM根据id返回一个Hero对象ORMORM=Object Relationship Database Mapping对象和关系数据库的映射简单说,一个对象,对应数据库里的一条记录根据id返回一个Hero对象提供方法get(int id)返回一个Hero对象package JDBCText;public class Hero { public int id; public String name; public float hp;原创 2021-01-30 16:35:01 · 195 阅读 · 1 评论 -
Java-如何在JDBC中使用事务
如何在JDBC中使用事务不使用事务的情况使用事务MYSQL 表的类型必须是INNODB才支持事务不使用事务的情况没有事务的前提下:假设业务操作是:加血,减血各做一次,结束后英雄的血量不变而减血的SQL不小心写错写成了 updata(而非update)那么最后结果是血量增加了,而非期望的不变package jdbc; import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;原创 2021-01-30 16:12:27 · 227 阅读 · 0 评论 -
Java-JDBC获取自增长ID以及表的元数据
JDBC获取自增长ID以及表的元数据获取自增长id获取表的元数据获取自增长id在Statement通过execute或者executeUpdate执行完插入语句后,MySQL会为新插入的数据分配一个自增长id,(前提是这个表的id设置为了自增长,在Mysql创建表的时候,AUTO_INCREMENT就表示自增长)CREATE TABLE hero ( id int(11) AUTO_INCREMENT, ... ...}但是无论是execute还是executeUpdate都不会返回原创 2021-01-30 14:44:36 · 589 阅读 · 0 评论 -
Java-JDBC中使用预编译STATEMENT 以及它的优点
JDBC中使用预编译STATEMENT 以及它的优点PreparedStatementPreparedStatement优点优点一:代码的可读性和可维护性优点二:尽最大可能提高性能优点三:防止SQL注入式攻击PreparedStatement和 Statement一样,PreparedStatement也是用来执行sql语句的与创建Statement不同的是,需要根据sql语句创建PreparedStatement除此之外,还能够通过设置参数,指定相应的值,而不是Statement那样使用字符串拼原创 2021-01-30 14:04:11 · 403 阅读 · 0 评论 -
Java-JDBC execute与executeUpdate的区别
execute与executeUpdate的区别相同点不同点相同点execute与executeUpdate的相同点:都可以执行增加,删除,修改package jdbc;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.sql.Statement;public class TestJDBC { public static void main(原创 2021-01-30 13:19:53 · 247 阅读 · 0 评论