java的工具类
⑴ java开发者需要了解的开发工具
Java是世界上最强大的编程语言之一,很多开发人员和大型企业都偏爱Java,并且在各种应用场景中使用它。在本文中,java课程为大家介绍几种Java库来帮助开发人员解决编程中遇到的各种相关问题。
一、JAVA核心扩展
JAVA的标准库虽然提供了那些最基本的数据类型操作方法,但仍然对一些常见的需求场景派耐,缺少实用的工具类。而另一些则是JAVA标准库本身不够完善,需要第三方库去加以补充的。
1、ApacheCommonsLang
ApacheCommonsLang是Apache最着名的JAVA库,它是对java.lang的很好扩展,包含了大量非常实用的工具类,其中用的最多的有StringUtils,DateUtils,NumberUtils等。
除了ApacheCommonsLang,还有一些其他的Apache库也是对JAVA本身的很好补充,如ApacheCommonsCollection,ApacheCommonsIO,ApacheCommonsMath。
2、GoogleGuava
GoogleGuava包含了Google在自己的JAVA项目中所使用的一些核心JAVA库。包含了对:集合,缓存,并发库,字符串处理,I/O等各个方面的支持。另外Google开发的库总是以性能着称。
3、Joda-Time
JavaSE8之前的JAVA版本中对日期的支持是比较差的,Joda-Time被经常被使用来替换原有的日期系统,它能够支持更多的日历尘早春体系,并提供了很多非常方便的日期处理方法,而且它的性能也是非常出色的。
二、Web框架
Web框架是一个应用最核心的部分,因此我总是推荐使用那些最标准的,并且有良好社区支持的框架,比如Spring和Struts。
1、Spring
Spring是一个开源的应用框架,它包含很多子项目比如SpringMVC,SpringSecurity,SpringData,SpingBoot等等,几乎可以满足你项目上的所有需要。它也是我开发Web项目的首选后端框架。
2、Struts2
Struts2是Apache最有名的Web框架,它也是一个免费开源的MVC框架。Struts也能很好地支持REST,SOAP,AJAX等最新技术。
除了上面提到的两个最常见的Web框架之外,还有如GoogleWebToolkit,Tapestry,Strips等一些优秀的框架可供选择。
三、数据库(持久层)
持久层框架睁弊的选择对一个项目的成败同样非常关键,它会直接影响到系统的性能、质量、安全以及稳定性。
1、MyBatis
MyBatis是我最喜欢的数据库(持久层)框架,因为它完全是基于SQL语句的(通过SQL来提取数据并自动映射为所需的数据对象),能够为我带来足够的灵活性。
2、SpringJDBC/SpringData
SpringJDBC并不是独立的Spring子项目,而是一个整合在Spring核心库内,为JDBC操作提供基本封装处理的模块。通过简单的配置后,可以通过对Context中的jdbcTemplate进行调用来获得结果。
SpringData是Spring的一个子项目,提供了更加强大的持久层功能封装,和对象映射功能。它能与SpringMVC很好地整合。你可以利用JPA和CrudRepository来极大简化持久层的开发。
⑵ java工具类怎么定义
工具类的定义是以util或utils结尾,里面包含的变量和方法都必须要是静态的static方法,这样才能提供别人调用。
⑶ java分页工具类怎么用
下面是我的代码:
PageUtil.java
1 package util;
2
3 import java.util.Map;
4
5 /**
6 * 分页工具类
7 * @author lyh
8 *
9 */
10 public class PageUtil {
11 private int total; //总数
12 private int element; //每夜显示数
13 private String url; //访问的url
14 private Map<String,Object> keys; //记忆参数
15 private int p; //当前页数
16 private int page; //总页数
17
18 /**
19 * 构造传参数
20 * @param total
21 * @param element
22 * @param url
23 * @param keys
24 * @param p
25 */
26 public PageUtil(int total,int element,String url,Map<String,Object> keys,int p){
27 this.total = total;
28 this.element = element;
29 this.url = url;
30 this.keys = keys;
31 this.p = p;
32 if(this.total != 0 && this.total%this.element == 0){
33 this.page = this.total/this.element;
34 }else{
35 this.page = this.total/this.element+1;
36 }
37 }
38
39 /**
40 * 拼接分页访问的url
41 * @param p
42 * @param keys
43 * @return 拼接好的带参数url
44 */
45 private String createFullUrl(int p,Map<String,Object> keys){
46 StringBuffer buf = new StringBuffer(this.url);
47 buf.append("?p="+p);
48
⑷ Java中常用的类有哪些
一. System:
1.首先是System类,因为从一开始从接触java起,我们就无时无刻都在接触它,经常用它来向屏幕,向控制台打印输出一些信息,System.out.println(“hello world”);这个只是在控制台输出一条信息“hello world”,今天我们学到这里,才知道out只是System类中的一个字段,也就是一个成员变量,而且还是静态的,是一个对象的引用,即PrintStream,是标准的输出流,向标准的输出设备输出信息的,所以我们这里才调用了对象out的println()这个方法。所以类似与out字段的还有其他两个,如in是InputStream类的一个对象,那么in则是一个标准的输入对象,他可以读取或则也可以说从键盘或则其他输入设备接收或者读入一个信息,那么err也是PrintStream类的一个对象,则是标准的错误输出流,那其实这些所谓的标准的输入输出,他们功能实现底层是靠C语言和设备直接沟通的,java只是依赖C语言完成了这些功能。
2.老师说学习System这个类并不是说要去做太多的深入了解,而是希望我们能掌握一些查阅API,掌握这个类中常用的几个方法,在以后的开发中能够写出一些需要的小东西。
3.Java中System这个类中的属性和方法都是静态的,可以通过类名可以直接调用,而且它位于java默认的包中java.lang包中,一般情况下我们要使用它的方法和属性,是不需要做导入包的动作的,然后我们还发先这个类没有构造方法,所以这就说明我们不能创建一个System类的对象,只能通过类名来直接调用它的属性和方法了,注意,它还是一个final类型的修饰的类。那么我们来看看还有什么那些方法比较重要呢?
⑸ java常用工具类有哪些
纯复制:
String 字符串类
System 可得到系统信息
StringBuilder 字符串工具类
Thread 线程类
Math 与数学有关的工具类
ArrayList 底层用数组实现的集合
LinkedList 底层用链表实现的集合
HashMap 接口Map的一个实现类
HashSet 接口Set的一个实现类
Scanner 简单文本扫描器
Calendar 日期类
Date 日期类
File 目录或文件操作类
FileInputStream 输入流
FileOutputStream 输出流
PrintWriter
BufferedInputStream 具有缓冲的输入流
BufferedOutputStream 具有缓冲的输出流
BufferedReader 从字符输入流中读取文本,缓冲各个字符,
⑹ java.util有那些工具类
┌java.util.BitSet
│java.util.Calendar
│└java.util.GregorianCalendar
│java.util.Date
│java.util.Dictionary
│└java.util.Hashtable
│└java.util.Properties
│java.util.EventObject
│java.util.ResourceBundle
┌普通类┤├java.util.ListResourceBundle
││└java.util.PropertyResourceBundle
││java.util.Local
││java.util.Observable
││java.util.Random
││java.util.StringTokenizer
││java.util.Vector
││└java.util.Stack
Java.util┤└java.util.TimeZone
│└java.util.SimpleTimeZone
│┌java.util.Enumeration
├接口┤java.util.EventListener
│└java.util.Observer
│┌java.util.EmptyStackException
└异常类┤java.util.MissingResourceException
│java.util.NoSuchElementException
└java.util.TooManyListenersException
⑺ 你常用的Java工具库都有哪些
JavaSDK肯定是使用最广的库,所以本文的名单焦点是流行的第三方库。该列表可能并不完善,所以如果你觉得有什么应该出现在列表中的,请留下您的评论。非常感谢!
1、核心库
Apache Commons Lang:来自Apache的核心库,为java.lang API补充了许多常用的工具类,如字符串操作、对象的创建等。
Google Guava:来自谷歌的核心库,包括集合(Collection)、缓存(Caching)、支持原语(Primitives)等。(示例)
Jsoup:一个简化了的 HTML操作的库。(示例)
STaX:一组可以高效处理XML的API。 (示例)
Spring:Java平台上众所周知的开源框架和依赖注入容器。(示例)
Struts2:来自Apache的流行Web框架。 (示例)
GoogleWebToolkit:Google提供的开发工具库,主要用于构建和优化复杂的Web程序用。 (示例)
Strips:使用最新Java技术构建的Web程序框架,推荐使用。
Tapestry:面向组件的框架,用于使用Java创建动态、健壮、扩展性高的Web应用程序。
JFreeChart:用于创建如条形图、折线图、饼图等图表。
JFreeReport:创建于输出PDF格式的报表。
JGraphT:创建图像,其中只包含由线段连接的点集。
Swing:SDK提供的GUI库。(示例)
SWT:eclipse提供的GUI库。
EclipseRCP。(示例)
OpenNLP:来自Apache的自然语言处理库。 (示例)
StanfordParser:斯坦福大学提供的自然语言处理库。(示例)
EclipseJDT:由IBM提供的静态分析库,可以操作Java源代码。(示例)
WALA:可以处理jar包文件(即字节码)的工具库。(示例)
Jackson: 用于处理JSON数据格式的多用途的Java库。Jackson 旨在快速、准确、轻量、对开人员友好之间找到最好的平衡点。
XStream:一个简单用于对象和XML互相转换的库。
GoogleGson:一个专门用于Java对象和Json对象相互转换的工具库。(示例)
JSON-lib:用于beans、maps、collections、javaarrays、XML和JSON之间相互转换操作的工具库。
ApacheCommonsMath:提供数学计算和数值统计需函数的工具库。
ApacheLog4j:风行一时的日志记录操作库。(示例)
Logback:当前流行的log4j项目的继任者。
SLF4J(TheSimpleLoggingFacadeforJava): 各种日志框架的一个简单的外观或抽象(如java.util.logging 、logback、log4j等),允许用户在部署时加入需要的日志框架。
ApachePOI:利用其提供的APIs,可以使用纯Java代码操作各种基于微软OLE2合成文档格式的文档。
Docx4j:一个用于创建、操作微软公开的XML文件的库(支持Worddocx、 Powerpointpptx和Excelxlsx)。
Joda-Time:如有质量问题包退包换的Java日期和时间类。
Hibernate、EclipseLink、JPA
JDO
jOOQ
SpringJDBC、SpringData
ApacheDbUtils
Lambok: 旨在减少代码编写的Java开发库。
2、HTML、XML Parser
3、Web框架
请猛击这里查看以上面框架之间的比较。
4、图表、报表、图像
5、窗口
SWT与Swing的比较。
6.、GUI框架
7、自然语言处理
如果你是一名NLP专家,请猛击这里查看更多工具库介绍。
8、静态分析
9、JSON
10、数学
11、日志
12、Office
13、日期和时间
14、数据库
15、开发工具
⑻ java中有哪些类
如下:
String 字符串类
System 可得到系统信息
StringBuilder 字符串工具类
Thread 线程类
Math 与数学有关的工具类
ArrayList 底层用数组实现的集合
LinkedList 底层用链表实现的集合
HashMap 接口Map的一个实现类
HashSet 接口Set的一个实现类
Scanner 简单文本扫描器
Calendar 日期类
Date 日期类
File 目录或文件操作类
FileInputStream 输入流
FileOutputStream 输出流
BufferedInputStream 具有缓冲的输入流
BufferedOutputStream 具有缓冲的输出流
BufferedReader 从字符输入流中读取文本,缓冲各个字符
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。
Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。
⑼ java编程中,写一个工具类,命名时使用单数util还是使用复数utils好呢
没有绝对的标准,如果非要说标准就是按方便理解的标准来
虽然你写的源码基本上都是自己看,但即使是自己看也要知道你这个命名的意义是什么,比如你写一个类,命名为ABCD
可以吗?
当然可以,只誉李困是你光看名字不知道这个类是做什么用的,还必须得点开,然后看下代码才知道这个是干嘛的
而如果你的名字让你扰察看了以后就知道这个类是做什么 用的,就不需要看代码了,如果在代码比较少的情况 下没什么区别,无非是点一下而已,但是如果在工作中,一个类几千行代码,你还得一个个点进去看就非常麻烦
命名的意义是什么,就是你这个类要实现什么目的,比如你要做个五子棋,哪怕你不知道五子棋怎么用 英语表达,只写拼音,那么以后你看到这个类的时候庆念就 知道 ,这个是 自己做的一个五子棋游戏,而不用再点开看一遍代码