Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
2
20240528-BJava
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Patryk Czarnik
20240528-BJava
Commits
c57e7f94
Commit
c57e7f94
authored
Jun 14, 2024
by
Patryk Czarnik
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Odczyt czasu - jedna zmienna na poziomie klasy
parent
e84b94c1
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
30 additions
and
11 deletions
+30
-11
DataCzas.java
PC27-RestSerwer/src/main/java/hello/DataCzas.java
+28
-9
HelloApplication.java
PC27-RestSerwer/src/main/java/hello/HelloApplication.java
+2
-2
No files found.
PC27-RestSerwer/src/main/java/hello/DataCzas.java
View file @
c57e7f94
...
@@ -2,53 +2,72 @@ package hello;
...
@@ -2,53 +2,72 @@ package hello;
import
jakarta.ws.rs.GET
;
import
jakarta.ws.rs.GET
;
import
jakarta.ws.rs.Path
;
import
jakarta.ws.rs.Path
;
import
jakarta.ws.rs.Produces
;
import
java.time.LocalDate
;
import
java.time.LocalDate
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
java.time.LocalTime
;
import
java.time.LocalTime
;
@Path
(
"/now"
)
@Path
(
"/now"
)
@Produces
(
"text/plain;charset=UTF-8"
)
// @Singleton
public
class
DataCzas
{
public
class
DataCzas
{
// W JAX-RS domyślne zachowanie jest takie, że dla każdego requestu tworzony jest nowy obiekt klasy obsługującej zapytania.
// (polityka "per request"; można ją zmienić za pomocą adnotacji @Singleton - wtedy jeden obiekt obsłuży wszystkie zapytania)
// Daje to możliwość zapisania pewnych ulotnych informacji w polach prywatnych tej klasy - nikt nam ich nie nadpisze.
private
LocalDateTime
now
=
LocalDateTime
.
now
();
{
// ten blok wykona się podczas tworzenia każdego obiektu
System
.
out
.
println
(
"Powstał obiekt DataCzas z czasem równym "
+
now
);
}
// ta metoda obsługuje adres .../api/now
// ta metoda obsługuje adres .../api/now
@GET
@GET
public
String
odczytajDataICzas
()
{
public
LocalDateTime
odczytajDataICzas
()
{
return
LocalDateTime
.
now
().
toString
()
;
return
now
;
}
}
// ta metoda obsługuje adres .../api/now/date
// ta metoda obsługuje adres .../api/now/date
@GET
@GET
@Path
(
"/date"
)
@Path
(
"/date"
)
public
String
odczytajDate
()
{
public
LocalDate
odczytajDate
()
{
return
LocalDate
.
now
().
toString
();
return
now
.
toLocalDate
();
}
}
// ta metoda obsługuje adres .../api/now/date/year
// ta metoda obsługuje adres .../api/now/date/year
@GET
@GET
@Path
(
"/date/year"
)
@Path
(
"/date/year"
)
public
int
odczytajRok
()
{
public
int
odczytajRok
()
{
return
LocalDate
.
now
()
.
getYear
();
return
now
.
getYear
();
}
}
// ta metoda obsługuje adres .../api/now/date/month
// ta metoda obsługuje adres .../api/now/date/month
@GET
@GET
@Path
(
"/date/month"
)
@Path
(
"/date/month"
)
public
int
odczytajMiesiac
()
{
public
int
odczytajMiesiac
()
{
return
LocalDate
.
now
()
.
getMonthValue
();
return
now
.
getMonthValue
();
}
}
// ta metoda obsługuje adres .../api/now/date/day
// ta metoda obsługuje adres .../api/now/date/day
@GET
@GET
@Path
(
"/date/day"
)
@Path
(
"/date/day"
)
public
int
odczytajDzien
()
{
public
int
odczytajDzien
()
{
return
LocalDate
.
now
()
.
getDayOfMonth
();
return
now
.
getDayOfMonth
();
}
}
// ta metoda obsługuje adres .../api/now/time
// ta metoda obsługuje adres .../api/now/time
@GET
@GET
@Path
(
"/time"
)
@Path
(
"/time"
)
public
String
odczytajCzas
()
{
public
LocalTime
odczytajCzas
()
{
return
LocalTime
.
now
().
toString
();
return
now
.
toLocalTime
();
}
// ta metoda obsługuje adres .../api/now/time/second
@GET
@Path
(
"/time/second"
)
public
int
odczytajSekunde
()
{
return
now
.
getSecond
();
}
}
}
}
PC27-RestSerwer/src/main/java/hello/HelloApplication.java
View file @
c57e7f94
...
@@ -3,6 +3,8 @@ package hello;
...
@@ -3,6 +3,8 @@ package hello;
import
jakarta.ws.rs.ApplicationPath
;
import
jakarta.ws.rs.ApplicationPath
;
import
jakarta.ws.rs.core.Application
;
import
jakarta.ws.rs.core.Application
;
import
java.util.Set
;
// Ta klasa stanowi ogólną konfigurację usługi REST
// Ta klasa stanowi ogólną konfigurację usługi REST
// Musi dziedziczyć z klasy Application i posiadać adnotację @ApplicationPath
// Musi dziedziczyć z klasy Application i posiadać adnotację @ApplicationPath
// W @ApplicationPath podajemy ogólny prefiks umieszczony przed wszystkimi adresami zasobów restowych.
// W @ApplicationPath podajemy ogólny prefiks umieszczony przed wszystkimi adresami zasobów restowych.
...
@@ -11,5 +13,4 @@ import jakarta.ws.rs.core.Application;
...
@@ -11,5 +13,4 @@ import jakarta.ws.rs.core.Application;
// to zapytania mają być wysyłane pod /ADRES-APLIKCAJI-NA-SERWRERZE/api/products
// to zapytania mają być wysyłane pod /ADRES-APLIKCAJI-NA-SERWRERZE/api/products
@ApplicationPath
(
"/api"
)
@ApplicationPath
(
"/api"
)
public
class
HelloApplication
extends
Application
{
public
class
HelloApplication
extends
Application
{
}
}
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment