提交 6216ee4f 编写于 作者: W wizardforcel

2020-06-17 22:28:53

上级 14e66a2b
......@@ -160,7 +160,7 @@ try (var mongoClient = MongoClients.create("mongodb://localhost:27017")) {
```
`MongoClient`类用于连接到 MongoDB 服务器。 它是通过`MongoClients.create()`方法调用创建的。 27017 是 MongoDB 服务器听的默认端口。
`MongoClient`类用于连接到 MongoDB 服务器。 它是通过`MongoClients.create()`方法调用创建的。 27017 是 MongoDB 服务器听的默认端口。
```java
MongoDatabase database = mongoClient.getDatabase("testdb");
......
......@@ -771,7 +771,7 @@ http://maven.apache.org/xsd/maven-4.0.0.xsd">
```
`pom.xml`文件中,我们排除了`spring-boot-starter-logging`依赖性,并添加了`spring-boot-starter-log4j2`依赖性
`pom.xml`文件中,我们排除了`spring-boot-starter-logging`依赖项,并添加了`spring-boot-starter-log4j2`依赖项
`log4j2.xml`
......
......@@ -112,7 +112,7 @@ Figure: First Play application
默认情况下,应用在端口 9000 上进行听。 请注意,由于应用是动态编译的,因此存在一些延迟。
默认情况下,应用在端口 9000 上进行听。 请注意,由于应用是动态编译的,因此存在一些延迟。
现在,我们将对应用进行一些修改。
......
......@@ -17,8 +17,8 @@ Spark 应用包含一组路由。 路由将 URL 模式映射到 Java 处理器
路由包含三个部分:
* 动词,包括获取,发布,放置,删除,开头,跟踪,连接和选项
* 诸如/ first 或/ hello /:name 之类的路径
* 回调(请求,响应)-> {}
* 诸如`/first``/hello/:name`之类的路径
* 回调`(request, response) -> {}`
## 首个应用
......@@ -78,7 +78,7 @@ public class FirstSpark {
```
应用将“ First Spark 应用消息”返回到 GET 请求。 当我们运行应用时,Spark 将启动嵌入式 Jetty Web 服务器。
应用将“First Spark 应用消息”返回到 GET 请求。 当我们运行应用时,Spark 将启动嵌入式 Jetty Web 服务器。
```java
get("/first", (req, res) -> "First Spark application");
......@@ -107,7 +107,7 @@ First Spark application
```
我们使用`curl`工具将 GET 请求发送到服务器。 内置嵌入式 Jetty 服务器默认情况下听端口 4567。
我们使用`curl`工具将 GET 请求发送到服务器。 内置嵌入式 Jetty 服务器默认情况下听端口 4567。
## 你好应用
......@@ -344,7 +344,7 @@ Hello Peter
```
NetBeans 的内置 Tomcat 听端口 8084。
NetBeans 的内置 Tomcat 听端口 8084。
## 模板引擎
......
......@@ -14,7 +14,7 @@
资源包还支持方言。 例如`words_es_AR`用于阿根廷使用的西班牙语,而玻利维亚使用`words_es_BO`
`ResourceBundle`是一个抽象类,具有两个子类:`PropertyResourceBundle``ListResourceBundle``PropertyResourceBundle`从属性文件加载数据。 属性文件是包含可翻译文本的纯文本文件。 属性文件不是 Java 源代码的一部分,它们只能包含 String 值。 `ListResourceBundle`通过方便的列表管理资源; 它从类文件中获取数据。 我们可以将任何特定于语言环境的对象存储在`ListResourceBundle`中。
`ResourceBundle`是一个抽象类,具有两个子类:`PropertyResourceBundle``ListResourceBundle``PropertyResourceBundle`从属性文件加载数据。 属性文件是包含可翻译文本的纯文本文件。 属性文件不是 Java 源代码的一部分,它们只能包含`String`值。 `ListResourceBundle`通过方便的列表管理资源; 它从类文件中获取数据。 我们可以将任何特定于语言环境的对象存储在`ListResourceBundle`中。
为了获得适当的`ResourceBundle`,我们调用`ResourceBundle.getBundle()`方法。 这是一种寻找`ListResourceBundle`的工厂方法,如果找不到,将寻找`PropertyResourceBundle`。 如果找不到资源束,则抛出`MissingResourceException`
......@@ -702,7 +702,7 @@ System.out.println(messageSource.getMessage("w1",
```
我们使用`getMessage()`方法在德语语言环境中得到单词 w1
我们使用`getMessage()`方法在德语语言环境中得到单词`w1`
```java
...
......@@ -715,4 +715,4 @@ oceán
这是应用的输出。
在本教程中,我们介绍了 Java `ResourceBundle`。 我们创建了两个 Java 控制台应用,一个 Swing 应用和一个 Spring Boot 应用。 您可能还需要查看相关的教程: [Spring MessageSource 教程](/spring/messagesource/)[Java Swing 教程](/tutorials/javaswingtutorial/)[Java 教程](/lang/java/)[在 Java 教程中显示图像[](/java/displayimage/)
\ No newline at end of file
在本教程中,我们介绍了 Java `ResourceBundle`。 我们创建了两个 Java 控制台应用,一个 Swing 应用和一个 Spring Boot 应用。 您可能还需要查看相关的教程: [Spring `MessageSource`教程](/spring/messagesource/)[Java Swing 教程](/tutorials/javaswingtutorial/)[Java 教程](/lang/java/)[Java 图像显示教程](/java/displayimage/)
\ No newline at end of file
......@@ -698,7 +698,7 @@ This is the output of the application.
```
`pom.xml`文件中,我们具有以下依赖`spring-boot-starter``spring-web``jtwig-spring-boot-starter``slf4j-simple`
`pom.xml`文件中,我们具有以下依赖`spring-boot-starter``spring-web``jtwig-spring-boot-starter``slf4j-simple`
`MyController.java`
......@@ -747,6 +747,6 @@ Figure: Spring Boot web example
Spring Boot 启动一个嵌入式 Tomcat 服务器,听端口 8080。
Spring Boot 启动一个嵌入式 Tomcat 服务器,听端口 8080。
本教程专门针对 Jtwig 模板引擎。 您可能也对相关教程感兴趣: [FreeMarker 教程](/java/freemarker/)[Java 教程](/lang/java/)[游戏简介](/java/play/)[Spark 简介](/java/spark/)[Stripes 介绍](/java/stripes/)
\ No newline at end of file
本教程专门针对 Jtwig 模板引擎。 您可能也对相关教程感兴趣: [FreeMarker 教程](/java/freemarker/)[Java 教程](/lang/java/)[游戏简介](/java/play/)[Spark 简介](/java/spark/)[Stripes 介绍](/java/stripes/)
\ No newline at end of file
......@@ -84,7 +84,7 @@ src
```
这是 Maven POM 文件。 `javax.servlet-api`提供 Servlet API。 `provided`范围使依赖项在编译时可用,并指示其在运行时已可用。 In 已包含在 Servlet 容器(如 Jetty)中。
这是 Maven POM 文件。 `javax.servlet-api`提供 Servlet API。 `provided`范围使依赖项在编译时可用,并指示其在运行时已可用。 已包含在 Servlet 容器(如 Jetty)中。
`maven-war-plugin`负责收集 Web 应用的所有工件依赖项,类和资源,并将它们打包到 Web 应用存档中。 `jetty-maven-plugin`允许我们与`mvn jetty:run`一起运行嵌入式 Jetty 服务器。
......
......@@ -2,7 +2,7 @@
原文:http://zetcode.com/java/socket/
Java 套接字教程展示了如何使用套接字在 Java 中进行网络编程。 套接字编程是低级的。 本教程的目的是介绍包括这些低级详细信息的网络编程。 有些高级 API 可能更适合实际任务。 例如,Java 11 引入了 HttpClient,而 Spring 具有 Webclient
Java 套接字教程展示了如何使用套接字在 Java 中进行网络编程。 套接字编程是低级的。 本教程的目的是介绍包括这些低级详细信息的网络编程。 有些高级 API 可能更适合实际任务。 例如,Java 11 引入了`HttpClient`,而 Spring 具有`Webclient`
## Java 套接字
......@@ -80,7 +80,7 @@ try (var socket = new Socket(hostname, port)) {
```
流客户端套接字已创建。 它连接到命名主机上的指定端口号。 使用 Java 的 try-with-resources 语句自动关闭套接字。
流客户端套接字已创建。 它连接到命名主机上的指定端口号。 使用 Java 的`try-with-resources`语句自动关闭套接字。
```java
try (var reader = new InputStreamReader(socket.getInputStream())) {
......@@ -106,7 +106,7 @@ System.out.println(output);
## Java 套接字 Whois 客户端
Whois 是基于 TCP 的面向事务的查询/响应协议,被广泛用于向 Internet 用户提供信息服务。 它用于查询域名或 IP 地址块所有者等信息。
Whois 是基于 TCP 的面向事务的查询/响应协议,被广泛用于向互联网用户提供信息服务。 它用于查询域名或 IP 地址块所有者等信息。
**Note:** Most whois servers provide only limited information (for instance only for selected domain names) and the information about owners is often anonymized by domain registrars.
......@@ -416,7 +416,7 @@ try (var socket = listener.accept()) {
```
`accept()`方法听与此套接字建立的连接并接受它。 该方法将阻塞,直到建立连接为止。
`accept()`方法听与此套接字建立的连接并接受它。 该方法将阻塞,直到建立连接为止。
```java
try (var pw = new PrintWriter(socket.getOutputStream(), true)) {
......@@ -518,7 +518,7 @@ public class ReverseServer {
```
`ReverseServer`将反向字符串发送回客户端。 一次仅与一个客户端通信。 它必须首先与客户端断开连接才能与另一个客户端通信。 它从客户端收到一个 bye 命令以关闭连接。
`ReverseServer`将反向字符串发送回客户端。 一次仅与一个客户端通信。 它必须首先与客户端断开连接才能与另一个客户端通信。 它从客户端收到一个`bye`命令以关闭连接。
```java
try (var reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
......@@ -618,7 +618,7 @@ do {
```
我们从控制台读取输入,并将其发送到服务器。 当我们发送 bye 命令时,while 循环完成,该命令通知服务器可以关闭连接。
我们从控制台读取输入,并将其发送到服务器。 当我们发送`bye`命令时,`while`循环完成,该命令通知服务器可以关闭连接。
## Java `DatagramSocket`示例
......@@ -713,6 +713,6 @@ System.out.println(quote);
我们将接收到的字节转换为字符串并打印。
在本教程中,我们创建了带有套接字的网络 Java 程序。 您可能也对相关教程感兴趣: [Java HTTP GET / POST 请求教程](/java/getpostrequest/)[Java InputStreamReader 教程](/java/inputstreamreader/)[Java Servlet 教程](/java/servlet/)[Java 教程](/lang/java/)
在本教程中,我们创建了带有套接字的网络 Java 程序。 您可能也对相关教程感兴趣: [Java HTTP GET/POST 请求教程](/java/getpostrequest/)[Java `InputStreamReader`教程](/java/inputstreamreader/)[Java Servlet 教程](/java/servlet/)[Java 教程](/lang/java/)
列出[所有 Java 教程](/all/#java)
\ No newline at end of file
......@@ -11,9 +11,9 @@
1. [FreeMarker 模板引擎](#free)
2. [控制台应用](#cons)
3. [FreeMarker 指令](#dire)
4. [带 Servlet 的 FreeMarker](#serv)
5. [带有 Spark 的 FreeMarker](#spark)
6. [带有 Spring](#spring) 的 FreeMarker
4. [Servlet 和 FreeMarker](#serv)
5. [Spark 和 FreeMarker](#spark)
6. [Spring 和 FreeMarker](#spring)
......@@ -47,7 +47,7 @@ FreeMarker 不仅限于 HTML 页面的模板; 它可以用于生成电子邮
```
在 Maven `pom.xml`文件中,我们指定 FreeMarker 依赖
在 Maven `pom.xml`文件中,我们指定 FreeMarker 依赖
### FreeMarker 插值
......@@ -675,7 +675,7 @@ public class MyServlet extends HttpServlet {
```
`index.ftl`文件位于`src/main/webapp`目录中。 使用`#list`指令,我们显示了 cars 系列的所有元素。
`index.ftl`文件位于`src/main/webapp`目录中。 使用`#list`指令,我们显示了`cars`系列的所有元素。
![FreeMarker servlet example](img/f28a591873d59ccec7214baf76754306.jpg)
......@@ -1086,7 +1086,7 @@ Spring 是流行的 Java 应用框架。 Spring Boot 是通过最小的努力来
```
在 spring servlet 上下文 XML 文件中,我们定义了两个 bean:`freemarkerConfig``viewResolver`。 这些是 FreeMarker 的配置 bean。 spring-servlet.xml 位于`WEB-INF`中。
在 spring servlet 上下文 XML 文件中,我们定义了两个 bean:`freemarkerConfig``viewResolver`。 这些是 FreeMarker 的配置 bean。 `spring-servlet.xml`位于`WEB-INF`中。
```java
<context:component-scan base-package="com.zetcode" />
......@@ -1413,6 +1413,6 @@ Figure: Spring Boot web example
Spring Boot 启动一个嵌入式 Tomcat 服务器,听端口 8080。
Spring Boot 启动一个嵌入式 Tomcat 服务器,听端口 8080。
本教程专门针对 FreeMarker 模板引擎。 您可能也对相关教程感兴趣: [Servlet FreeMarker JDBCTemplate 教程](/articles/servletfreemarker/)[Spring Boot Groovy CLI 教程](/springboot/groovycli/)[Jtwig 教程](/java/jtwig/)[Java 教程](/lang/java/)[游戏简介](/java/play/)[Spark 简介](/java/spark/)[Stripes 简介](/java/stripes/)
\ No newline at end of file
本教程专门针对 FreeMarker 模板引擎。 您可能也对相关教程感兴趣: [Servlet FreeMarker `JDBCTemplate`教程](/articles/servletfreemarker/)[Spring Boot Groovy CLI 教程](/springboot/groovycli/)[Jtwig 教程](/java/jtwig/)[Java 教程](/lang/java/)[游戏简介](/java/play/)[Spark 简介](/java/spark/)[Stripes 简介](/java/stripes/)
\ No newline at end of file
......@@ -13,10 +13,10 @@
* [按钮](buttons/)
* [意图](intents/)
* [布局管理](layout/)
* [微调小部件](spinner/)
* [旋钮小部件](spinner/)
* [搜索栏小部件](seekbar/)
* [ProgressBar 小部件](prgbar/)
* [ListView 小部件](listview/)
* [`ProgressBar`小部件](prgbar/)
* [`ListView`小部件](listview/)
* [选取器](pickers/)
* [菜单](menus/)
* [对话框](dialogs/)
......
......@@ -10,15 +10,15 @@
* [安装 Java](installjava/)
* [安装 NetBeans](installnetbeans6/)
* [Java 应用服务器](javaservers/)
* [树脂 CGIServlet](resincgiservlet/)
* [CGIServlet](resincgiservlet/)
* [JavaServer 页面,JSP](jsp/)
* JSP 中的[隐式对象](implicitobjects/)
* [JSP 中的隐式对象](implicitobjects/)
* [购物车骨架](cart/)
* [MySQL 数据库](mysqldatabase/)
* [Servlet](servlets/)
* [在 Servlet 中发送电子邮件](sendingemail/)
* [在 Servlet 中创建验证码](captcha/)
* [数据源& DriverManager](datasource/)
* [数据源 & `DriverManager`](datasource/)
* [处理异常](exceptions/)
* [Java Beans](javabeans/)
* [自定义标签](customjsptags/)
......
......@@ -31,7 +31,7 @@ JSoup 是用于提取和处理 HTML 数据的 Java 库。 它实现了 HTML5 规
```
## JSoup
## `JSoup`
`JSoup`类通过其静态方法为 jsoup 功能提供了核心公共访问点。 例如,`clean()`方法清理 HTML 代码,`connect()`方法创建与 URL 的连接,或者`parse()`方法解析 HTML 内容。
......@@ -80,21 +80,21 @@ Document doc = Jsoup.parse(htmlString);
```
使用 Jsoup `parse()`方法,我们解析 HTML 字符串。 该方法返回一个 HTML 文档。
使用`Jsoup``parse()`方法,我们解析 HTML 字符串。 该方法返回一个 HTML 文档。
```java
String title = doc.title();
```
文档的`title()`方法获取文档的 title 元素的字符串内容。
文档的`title()`方法获取文档的`title`元素的字符串内容。
```java
String body = doc.body().text();
```
文档的`body()`方法返回 body 元素; 其`text()`方法获取元素的文本。
文档的`body()`方法返回`body`元素; 其`text()`方法获取元素的文本。
## JSoup 解析本地 HTML 文件
......@@ -169,7 +169,7 @@ System.out.println(divTag.text());
## JSoup 读取网站的标题
在以下示例中,我们将抓取并解析网页,然后检索 title 元素的内容。
在以下示例中,我们将抓取并解析网页,然后检索`title`元素的内容。
`com/zetcode/JSoupTitleEx.java`
......@@ -377,7 +377,7 @@ String htmlString = "<html><head><title>My title</title></head>"
```
HTML 字符串包含不推荐使用的 center 元素。
HTML 字符串包含不推荐使用的`center`元素。
```java
boolean valid = Jsoup.isValid(htmlString, Whitelist.basic());
......@@ -530,7 +530,7 @@ Document doc = Jsoup
```
我们连接到 URL,设置 5 s 超时,然后发送 GET 请求。 返回 HTML 文档。
我们连接到 URL,设置 5s 超时,然后发送 GET 请求。 返回 HTML 文档。
```java
Elements links = doc.select("a[href]");
......@@ -555,7 +555,7 @@ for (Element link : links) {
```
我们寻找不具有 class =“ _ Zkb”属性并且具有 href =“ / url?q =”属性的链接。 请注意,这些是硬编码的值,将来可能会更改。
我们寻找不具有`class="_Zkb"`属性并且具有`href="/url?q="`属性的链接。 请注意,这些是硬编码的值,将来可能会更改。
```java
for (String el : result) {
......@@ -584,6 +584,6 @@ www.universetoday.com
本教程专门针对 Jsoup HTML 解析器。
您可能也对相关教程感兴趣: [Java 教程](/lang/java/)[用 Java 阅读网页](/articles/javareadwebpage/)[用 Java](/articles/javareadtext/) 阅读文本文件或 [Jtwig 教程](/java/jtwig/)
您可能也对相关教程感兴趣: [Java 教程](/lang/java/)[用 Java 阅读网页](/articles/javareadwebpage/)[用 Java 阅读文本文件](/articles/javareadtext/)[Jtwig 教程](/java/jtwig/)
列出[所有 Java 教程](/all/#java)
\ No newline at end of file
......@@ -8,7 +8,7 @@
图表是一种以简单方式显示信息的图形,通常使用直线和曲线来显示金额。 JFreeChart 是用于创建图表的流行 Java 库。 JFreeChart 允许创建各种交互式和非交互式图表。 我们可以创建折线图,条形图,面积图,散点图,饼图,甘特图和各种专用图,例如风向图或气泡图。
JFreeChart 可以广泛地定制; 它允许修改图表项目的颜色和绘制,图例,线条或标记的样式。 它会自动绘制轴刻度和图例。 图表具有内置功能,可使用鼠标放大。 现有的图表可以通过库在其数据集合上具有的听器轻松更新。 它支持多种输出格式,包括 PNG,JPEG,PDF 和 SVG。
JFreeChart 可以广泛地定制; 它允许修改图表项目的颜色和绘制,图例,线条或标记的样式。 它会自动绘制轴刻度和图例。 图表具有内置功能,可使用鼠标放大。 现有的图表可以通过库在其数据集合上具有的听器轻松更新。 它支持多种输出格式,包括 PNG,JPEG,PDF 和 SVG。
JFreeChart 由 David Gilbert 于 2000 年创立。如今,JFreeChart 是 Java 开发人员中使用最广泛的图表库。
......@@ -152,7 +152,7 @@ series.add(25, 800);
```
`XYSeries`表示形式为(x,y)的零个或多个数据项的序列。
`XYSeries`表示形式为`(x, y)`的零个或多个数据项的序列。
```java
XYSeriesCollection dataset = new XYSeriesCollection();
......@@ -1056,4 +1056,4 @@ ChartUtilities.saveChartAsPNG(new File("medals.png"), barChart, 450, 400);
条形图通过`ChartUtilities.saveChartAsPNG()`方法保存到 PNG 文件中。
本教程专门针对 JFreeChart 库。 您可能也对相关教程感兴趣: [Java Swing 教程](/tutorials/javaswingtutorial/)[Java 2D 教程](/gfx/java2d/)[Java PDFBox 教程](/java/pdfbox/)[Java 教程](/lang/java/)。 也可以在 JavaFX 中创建[图表。](/gui/javafx/charts)
\ No newline at end of file
本教程专门针对 JFreeChart 库。 您可能也对相关教程感兴趣: [Java Swing 教程](/tutorials/javaswingtutorial/)[Java 2D 教程](/gfx/java2d/)[Java PDFBox 教程](/java/pdfbox/)[Java 教程](/lang/java/)。 也可以[在 JavaFX 中创建图表](/gui/javafx/charts)
\ No newline at end of file
......@@ -218,7 +218,7 @@ Joda time 是第三方日期和时间库,用于替换过时的 JDK 日期时
```
我们需要`joda-time`依赖
我们需要`joda-time`依赖
### 使用 Joda `LocalDateTime`获取当前日期和时间
......
......@@ -89,7 +89,7 @@ Apache commons 的`FileUtils.listFiles()`允许递归和非递归列出目录内
```
对于这个例子,我们需要这种依赖
对于这个例子,我们需要这种依赖
`JavaDirectoryContentsApacheCommons.java`
......
......@@ -218,7 +218,7 @@ CharSink chs = Files.asCharSink(file, Charsets.UTF_8, FileWriteMode.APPEND);
```
我们需要这种依赖
我们需要这种依赖
`JavaAppendFileApacheCommons.java`
......
......@@ -222,7 +222,7 @@ var output = Pattern.compile("-")
```
我们需要包括 Guava 的依赖
我们需要包括 Guava 的依赖
`SplitStringGuavaEx.java`
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册