随笔分类 -  Java

1 2 3 4 5 ··· 8 下一页
摘要:本来String类已经能够完成字符串操作的所有功能,为何Java又提供了专门的StringBuffer和StringBuilder呢?这要从String类的设计说起了,查看String的源码,发现其内部采用字符数组保存字符串,如下所示: private final char value[]; 可是问 阅读全文
posted @ 2022-07-14 09:47 pinlantu 阅读(81) 评论(0) 推荐(0) 编辑
摘要:日期时间是Java一个重要的数据类型,常见的日期时间格式通常为“yyyy-MM-dd HH:mm:ss”,但是计算机中存储的日期时间并非字符串形式,而是长整型的时间戳。因为字符串又占用空间又难以运算,相比之下,长整型只占用四个字节,普通的加减乘除运算更是不在话下,所以时间戳是最佳的日期时间存储方案。 阅读全文
posted @ 2020-07-25 11:37 pinlantu 阅读(4004) 评论(0) 推荐(0) 编辑
摘要:Java开发经常要把当前时间转为字符串,比如“2020-07-08 22:59:48”这样,此时会用到格式化工具SimpleDateFormat,该工具通过下列字符表示不同的时间单位:小写的yyyy:表示四位年份数字,如1949、2017等等。大写的MM:表示两位月份数字,如01表示一月份,12表示 阅读全文
posted @ 2020-07-09 16:29 pinlantu 阅读(508) 评论(0) 推荐(0) 编辑
摘要:梦里寻她千百度,千呼万唤始出来。从决定开始写这本书,到最终出版上市,数数已经是第三个夏天了。今年疫情有点紧,各行各业都受到影响,多亏出版社各位老师东奔西走,总算排除了万般艰难险阻,这才有了《好好学Java 从零基础到项目实战》的顺利上市。又是一本600页的编程书籍,拿在手中沉甸甸的,感觉两年的辛劳和 阅读全文
posted @ 2020-07-03 13:19 pinlantu 阅读(438) 评论(0) 推荐(0) 编辑
摘要:C3P0连接池自诞生以来在Java Web领域反响甚好,业已成为hibenate框架推荐的连接池。谁知人红是非多,C3P0在大型应用场合中暴露了越来越多的局限性,包括但不限于下列几点:1、C3P0管理池内连接时没有采取LRU排队规则(最久未使用算法),意味着C3P0未能将数据库性能调到最优。2、在处 阅读全文
posted @ 2019-09-18 19:40 pinlantu 阅读(2998) 评论(0) 推荐(0) 编辑
摘要:JDBC既制定统一标准兼容了多种数据库,又利用预报告堵上了SQL注入漏洞,照理说已经很完善了,可是人算不如天算,它在性能方面不尽如人意。问题出在数据库连接的管理上,按照正常流程,每次操作完数据库,都要关闭连接,无论是代码里手工关闭,还是由try语句自动关闭。如果没有及时关闭数据库连接,就会长时间占用 阅读全文
posted @ 2019-09-16 09:51 pinlantu 阅读(673) 评论(0) 推荐(0) 编辑
摘要:前面介绍了各种SQL语句的调用过程,虽然例子代码写死了每个SQL串,但是完全可以把查询条件作为方法参数传进来。比如现在想删除某个课程的教师记录,那么在编写删除方法时,就把课程名称作为该方法的一个输入参数。据此编写的方法代码示例如下: 接着外部准备调用上面的deleteRecord方法,第二个课程参数 阅读全文
posted @ 2019-09-11 20:07 pinlantu 阅读(332) 评论(0) 推荐(0) 编辑
摘要:前面介绍了通过JDBC如何管理数据库,当时提到Statement专门提供了executeQuery方法用于查询操作,为什么查询操作这么特殊呢?这是因为其它语句跑完一次就了事了,顶多像insert、update、delete再返回受影响的记录数量,但select命令跟它们不一样,查询语句可能会返回多条 阅读全文
posted @ 2019-09-09 20:40 pinlantu 阅读(1232) 评论(0) 推荐(0) 编辑
摘要:前面介绍了如何通过JDBC获取数据库连接,可是Connection对象不能直接执行SQL语句,需要引入Statement报告对象才能操作SQL。Statement对象由Connection的createStatement方法获得,它主要提供了下列两个方法:executeUpdate:执行数据库的管理 阅读全文
posted @ 2019-09-07 11:00 pinlantu 阅读(443) 评论(0) 推荐(0) 编辑
摘要:关系数据库使得海量信息的管理成为现实,但各家数据库提供的编程接口不尽相同,就连SQL语法也有所差异,像Oracle、MySQL、SQL Server都拥有自己的开发规则,倘若Java针对每个数据库单独做一套方法,这些数据库操作方法将变得又庞大又冗余。为了解决不同数据库各自为政的问题,Java设计了统 阅读全文
posted @ 2019-09-04 19:24 pinlantu 阅读(441) 评论(0) 推荐(0) 编辑
摘要:前面介绍了FXML的基本格式及其控制器的用法,算是打通了FXML方式的编码流程。程序界面通常保持固定尺寸,不过有时也允许用户拖曳窗口大小,不拖不打紧,一拖就可能坏事。像之前的登录窗口,没拖的时候界面如下图所示。 现在开始慢慢把窗口拖长,拖到一半停下来,此时登录界面如下图所示。 乍看过去,界面上的各控 阅读全文
posted @ 2019-09-02 19:03 pinlantu 阅读(2136) 评论(0) 推荐(0) 编辑
摘要:前面介绍了如何通过fxml文件编排界面布局,可是光有静态界面根本没法处理业务,必须另外书写业务逻辑的代码,方能响应各按钮的单击事件,并将业务结果即使呈现到界面上。显然,fxml内部写不了Java代码,同时入口程序已经把控件都托管给了fxml文件,也无法在Application代码中干预控件的操作。既 阅读全文
posted @ 2019-08-31 11:07 pinlantu 阅读(2267) 评论(0) 推荐(0) 编辑
摘要:前面介绍了JavaFX的常见控件用法,虽然JavaFX控件比起AWT与Swing要好用些,但是一样通过代码编写控件界面,并没有提高什么开发效率。要想浏览界面的展示效果,都必须运行测试程序才能观看,即使只是微调控件的大小,也得重新运行程序查看效果,显然既费时又费力。为此JavaFX提供了另一种给界面排 阅读全文
posted @ 2019-08-28 22:05 pinlantu 阅读(4117) 评论(0) 推荐(0) 编辑
摘要:JavaFX的对话框主要分为提示对话框和文件对话框两类,其中提示对话框又分作消息对话框、警告对话框、错误对话框、确认对话框四种。这四种对话框都使用Alert控件表达,并通过对话框类型加以区分,例如AlertType.INFORMATION表示消息对话框,AlertType.WARNIN表示警告对话框 阅读全文
posted @ 2019-08-26 22:25 pinlantu 阅读(5137) 评论(0) 推荐(2) 编辑
摘要:下拉框只有在单击时才会弹出所有选项的下拉列表,这固然节省了有限的界面空间,但有时候又需要把所有选项都固定展示到窗口上。像这种平铺的列表控件,Swing给出的控件名称是ListBox,而JavaFX提供了列表视图ListView。在具体编码运用上,ListView的用法几乎跟ComboBox一模一样, 阅读全文
posted @ 2019-08-24 10:42 pinlantu 阅读(7123) 评论(0) 推荐(0) 编辑
摘要:与Swing一样,JavaFX依然提供了三种选择框,它们是复选框CheckBox、单选按钮RadioButton、下拉框ComboBox,分别说明如下: 一、复选框CheckBox复选框允许同时勾选多个,已勾选的时候在方框内部打个勾,未勾选的时候显示空心方框。查看CheckBox的源码,发现它与Bu 阅读全文
posted @ 2019-08-21 21:02 pinlantu 阅读(3905) 评论(0) 推荐(0) 编辑
摘要:循着Swing的旧例,JavaFX仍然提供了三种文本输入框,分别是单行输入框TextField、密码输入框PasswordField、多行输入框TextArea。这些输入框都由抽象类TextInputControl派生而来,因此拥有共同的编辑方法,常用的主要有下列两个:setEditable:设置输 阅读全文
posted @ 2019-08-19 21:07 pinlantu 阅读(8808) 评论(0) 推荐(0) 编辑
摘要:前面介绍了JavaFX标签控件的用法,其中提到Label文本支持中文字体,那么它到底支持哪些中文字体呢?自然要看当前的操作系统都安装了哪些字体才行,对于中文的Windows系统,默认安装了黑体“SimHei”、宋体“NSimSun”、仿宋“FangSong”与楷体“KaiTi”。在AWT与Swing 阅读全文
posted @ 2019-08-17 14:14 pinlantu 阅读(1002) 评论(0) 推荐(0) 编辑
摘要:前面介绍了JavaFX的窗口框架,其中舞台、场景、窗格都能与AWT/Swing体系的相关概念一一对应,不仅如此,JavaFX的常见控件也能在Swing中找到相应的控件。比如JavaFX的按钮控件名叫Button,对应Swing的JButton,两种按钮提供的方法也类似,下面是Button控件的常用方 阅读全文
posted @ 2019-08-14 21:18 pinlantu 阅读(2447) 评论(0) 推荐(0) 编辑
摘要:虽然Java自诞生之初就推出了AWT,紧接着第二版又推出升级后的Swing,打算在桌面开发这块大展拳脚;可是后来Java在服务器开发上大放异彩,在桌面开发上反而停滞不前,可谓失之J2SE收之J2EE。至于手机开发方向的J2ME,也因为安卓的异军突起而逐渐凋零,尽管安卓开发仍以Java语言为主,但谷歌 阅读全文
posted @ 2019-08-12 18:58 pinlantu 阅读(1641) 评论(0) 推荐(0) 编辑

1 2 3 4 5 ··· 8 下一页