Sfoglia il codice sorgente

Update hserver and hserver-business version (#10060)

* Update hserver version 3.7.0 pom.xml

* Update hserver version 3.7.0 pom.xml

* 4.0.0

* 4.0.0

* 4.0.0

* 4.0.0

---------

Co-authored-by: 黑小马 <[email protected]>
黑小马 3 settimane fa
parent
commit
b1383f0289

+ 6 - 7
frameworks/Java/hserver-business/pom.xml

@@ -11,7 +11,7 @@
     <parent>
         <artifactId>hserver-parent</artifactId>
         <groupId>cn.hserver</groupId>
-        <version>3.7.0</version>
+        <version>4.0.0-beta.3</version>
     </parent>
     <properties>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
@@ -20,15 +20,14 @@
     </properties>
 
     <dependencies>
-        <!--    核心依赖-->
         <dependency>
-            <artifactId>hserver</artifactId>
+            <artifactId>hserver-web-starter</artifactId>
             <groupId>cn.hserver</groupId>
         </dependency>
-        <!--    web框架 -->
         <dependency>
-            <artifactId>hserver-plugin-web</artifactId>
-            <groupId>cn.hserver</groupId>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-api</artifactId>
+            <version>2.0.17</version>
         </dependency>
         <dependency>
             <groupId>com.zaxxer</groupId>
@@ -44,7 +43,7 @@
     <build>
         <plugins>
             <plugin>
-                <artifactId>hserver-plugin-maven</artifactId>
+                <artifactId>hserver-maven</artifactId>
                 <groupId>cn.hserver</groupId>
             </plugin>
         </plugins>

+ 3 - 5
frameworks/Java/hserver-business/src/main/java/com/test/hserver/StartApp.java

@@ -1,10 +1,8 @@
 package com.test.hserver;
 
 
-import cn.hserver.HServerApplication;
-import cn.hserver.core.ioc.annotation.HServerBoot;
-import cn.hserver.core.server.context.ConstConfig;
-
+import cn.hserver.core.boot.HServerApplication;
+import cn.hserver.core.boot.annotation.HServerBoot;
 
 /**
  * @author hxm
@@ -13,6 +11,6 @@ import cn.hserver.core.server.context.ConstConfig;
 public class StartApp {
 
     public static void main(String[] args) {
-        HServerApplication.run(StartApp.class, 8888, args);
+        HServerApplication.run(StartApp.class, args);
     }
 }

+ 16 - 18
frameworks/Java/hserver-business/src/main/java/com/test/hserver/controller/TestController.java

@@ -1,16 +1,14 @@
 package com.test.hserver.controller;
 
 import cn.hserver.core.ioc.annotation.Autowired;
-import cn.hserver.plugin.web.annotation.Controller;
-import cn.hserver.plugin.web.annotation.GET;
-import cn.hserver.plugin.web.interfaces.HttpRequest;
-import cn.hserver.plugin.web.interfaces.HttpResponse;
+import cn.hserver.mvc.annotation.Controller;
+import cn.hserver.mvc.annotation.router.GET;
+import cn.hserver.mvc.request.Request;
+import cn.hserver.mvc.response.Response;
 import com.test.hserver.bean.Fortune;
 import com.test.hserver.bean.Message;
 import com.test.hserver.bean.World;
 import com.test.hserver.util.DateUtil;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
 import javax.sql.DataSource;
 import java.sql.Connection;
@@ -34,19 +32,19 @@ public class TestController {
     private DataSource dataSource;
 
     @GET("/json")
-    public Message json(HttpResponse response) {
-        response.setHeader("Date", DateUtil.getTime());
+    public Message json(Response response) {
+        response.addHeader("Date", DateUtil.getTime());
         return new Message();
     }
 
     @GET("/plaintext")
-    public String plaintext(HttpResponse response) {
-        response.setHeader("Date", DateUtil.getTime());
+    public String plaintext(Response response) {
+        response.addHeader("Date", DateUtil.getTime());
         return HELLO;
     }
 
     @GET("/db")
-    public void db(HttpResponse response) throws SQLException {
+    public void db(Response response) throws SQLException {
         World result;
         try (Connection conn = dataSource.getConnection()) {
             try (final PreparedStatement statement = conn.prepareStatement(SELECT_WORLD)) {
@@ -57,12 +55,12 @@ public class TestController {
                 }
             }
         }
-        response.setHeader("Date", DateUtil.getTime());
+        response.addHeader("Date", DateUtil.getTime());
         response.sendJson(result);
     }
 
     @GET("/queries")
-    public void queries(HttpRequest request,HttpResponse response) throws Exception {
+    public void queries(Request request, Response response) throws Exception {
         World[] result = new World[getQueries(request.query("queries"))];
         try (Connection conn = dataSource.getConnection()) {
             for (int i = 0; i < result.length; i++) {
@@ -75,13 +73,13 @@ public class TestController {
                 }
             }
         }
-        response.setHeader("Date", DateUtil.getTime());
+        response.addHeader("Date", DateUtil.getTime());
         response.sendJson(result);
     }
 
 
     @GET("/updates")
-    public void updates(HttpRequest request,HttpResponse response) throws Exception {
+    public void updates(Request request,Response response) throws Exception {
         World[] result = new World[getQueries(request.query("queries"))];
         StringJoiner updateSql = new StringJoiner(
                 ", ",
@@ -110,12 +108,12 @@ public class TestController {
                 statement.executeUpdate();
             }
         }
-        response.setHeader("Date", DateUtil.getTime());
+        response.addHeader("Date", DateUtil.getTime());
         response.sendJson(result);
     }
 
     @GET("/fortunes")
-    public void fortunes(HttpResponse response) throws Exception {
+    public void fortunes(Response response) throws Exception {
         List<Fortune> fortunes = new ArrayList<>();
         try (Connection connection = dataSource.getConnection()) {
             try (PreparedStatement stt = connection.prepareStatement("select * from fortune")) {
@@ -128,7 +126,7 @@ public class TestController {
         }
         fortunes.add(new Fortune(0, "Additional fortune added at request time."));
         Collections.sort(fortunes);
-        response.setHeader("Date", DateUtil.getTime());
+        response.addHeader("Date", DateUtil.getTime());
         Map<String,Object> data=new HashMap<>();
         data.put("data",fortunes);
         response.sendTemplate("fortunes.ftl",data);

+ 1 - 1
frameworks/Java/hserver-business/src/main/java/com/test/hserver/db/DataSourceConfig.java

@@ -1,8 +1,8 @@
 package com.test.hserver.db;
 
+import cn.hserver.core.config.annotation.Configuration;
 import cn.hserver.core.ioc.annotation.Autowired;
 import cn.hserver.core.ioc.annotation.Bean;
-import cn.hserver.core.ioc.annotation.Configuration;
 import com.zaxxer.hikari.HikariDataSource;
 
 import javax.sql.DataSource;

+ 1 - 1
frameworks/Java/hserver-business/src/main/java/com/test/hserver/db/PostgresConfig.java

@@ -1,7 +1,7 @@
 package com.test.hserver.db;
 
 
-import cn.hserver.core.ioc.annotation.ConfigurationProperties;
+import cn.hserver.core.config.annotation.ConfigurationProperties;
 
 @ConfigurationProperties
 public class PostgresConfig {

+ 3 - 3
frameworks/Java/hserver-business/src/main/java/com/test/hserver/task/TimeAdd.java

@@ -1,10 +1,10 @@
 package com.test.hserver.task;
 
-import cn.hserver.core.ioc.annotation.Bean;
-import cn.hserver.core.ioc.annotation.Task;
+import cn.hserver.core.ioc.annotation.Component;
+import cn.hserver.core.scheduling.annotation.Task;
 import com.test.hserver.util.DateUtil;
 
-@Bean
+@Component
 public class TimeAdd {
 
     @Task(name = "时间计算", time = "1000")

+ 1 - 0
frameworks/Java/hserver-business/src/main/resources/app.properties

@@ -4,3 +4,4 @@ password= benchmarkdbpass
 maximumPoolSize= 256
 
 log=info
+netty.pool= 64

+ 7 - 7
frameworks/Java/hserver/pom.xml

@@ -11,8 +11,9 @@
     <parent>
         <artifactId>hserver-parent</artifactId>
         <groupId>cn.hserver</groupId>
-        <version>3.7.0</version>
+        <version>4.0.0-beta.3</version>
     </parent>
+
     <properties>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <version.hikaricp>3.3.1</version.hikaricp>
@@ -20,15 +21,14 @@
     </properties>
 
     <dependencies>
-        <!--    核心依赖-->
         <dependency>
-            <artifactId>hserver</artifactId>
+            <artifactId>hserver-web-starter</artifactId>
             <groupId>cn.hserver</groupId>
         </dependency>
-        <!--    web框架 -->
         <dependency>
-            <artifactId>hserver-plugin-web</artifactId>
-            <groupId>cn.hserver</groupId>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-api</artifactId>
+            <version>2.0.17</version>
         </dependency>
         <dependency>
             <groupId>com.zaxxer</groupId>
@@ -44,7 +44,7 @@
     <build>
         <plugins>
             <plugin>
-                <artifactId>hserver-plugin-maven</artifactId>
+                <artifactId>hserver-maven</artifactId>
                 <groupId>cn.hserver</groupId>
             </plugin>
         </plugins>

+ 13 - 5
frameworks/Java/hserver/src/main/java/com/test/hserver/StartApp.java

@@ -1,10 +1,10 @@
 package com.test.hserver;
 
 
-import cn.hserver.HServerApplication;
-import cn.hserver.core.ioc.annotation.HServerBoot;
-import cn.hserver.core.server.context.ConstConfig;
-
+import cn.hserver.core.boot.HServerApplication;
+import cn.hserver.core.boot.annotation.HServerBoot;
+import cn.hserver.mvc.server.WebServer;
+import com.test.hserver.controller.TestController;
 
 /**
  * @author hxm
@@ -13,6 +13,14 @@ import cn.hserver.core.server.context.ConstConfig;
 public class StartApp {
 
     public static void main(String[] args) {
-        HServerApplication.run(StartApp.class, 8888, args);
+        WebServer.router
+                .get("/json", TestController::json)
+                .get("/plaintext", TestController::plaintext)
+                .get("/db", TestController::db)
+                .get("/queries", TestController::queries)
+                .get("/updates", TestController::updates)
+                .get("/fortunes", TestController::fortunes)
+        ;
+        HServerApplication.run(StartApp.class,  args);
     }
 }

+ 35 - 46
frameworks/Java/hserver/src/main/java/com/test/hserver/controller/TestController.java

@@ -1,17 +1,12 @@
 package com.test.hserver.controller;
 
-import cn.hserver.core.ioc.annotation.Autowired;
-import cn.hserver.plugin.web.annotation.Controller;
-import cn.hserver.plugin.web.annotation.GET;
-import cn.hserver.plugin.web.interfaces.HttpRequest;
-import cn.hserver.plugin.web.interfaces.HttpResponse;
+import cn.hserver.core.context.IocApplicationContext;
+
+import cn.hserver.mvc.context.WebContext;
 import com.test.hserver.bean.Fortune;
 import com.test.hserver.bean.Message;
 import com.test.hserver.bean.World;
 import com.test.hserver.util.DateUtil;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
 import javax.sql.DataSource;
 import java.sql.Connection;
 import java.sql.PreparedStatement;
@@ -25,37 +20,34 @@ import static com.test.hserver.util.Util.randomWorld;
 /**
  * @author hxm
  */
-@Controller
 public class TestController {
     private static final String HELLO = "Hello, World!";
     private static final String SELECT_WORLD = "select * from world where id=?";
 
-    @Autowired
-    private DataSource dataSource;
-
+    private static DataSource dataSource;
 
-    @GET("/jso2n")
-    private   Message jso2n(long ud,int a,HttpResponse response) {
-        response.setHeader("Date", DateUtil.getTime());
-        return new Message();
+    public static DataSource getDataSource() {
+           if (dataSource == null) {
+               dataSource= IocApplicationContext.getBean(DataSource.class);
+           }
+            return dataSource;
     }
 
-    @GET("/json")
-    public Message json(HttpResponse response) {
-        response.setHeader("Date", DateUtil.getTime());
-        return new Message();
+
+    public static void json(WebContext webContext) {
+        webContext.response.addHeader("Date", DateUtil.getTime());
+        webContext.response.sendJson(new Message());
     }
 
-    @GET("/plaintext")
-    public String plaintext(HttpResponse response) {
-        response.setHeader("Date", DateUtil.getTime());
-        return HELLO;
+    public static void plaintext(WebContext webContext) {
+        webContext.response.addHeader("Date", DateUtil.getTime());
+        webContext.response.sendText(HELLO);
+
     }
 
-    @GET("/db")
-    public void db(HttpResponse response) throws SQLException {
+    public static void db(WebContext webContext) throws SQLException {
         World result;
-        try (Connection conn = dataSource.getConnection()) {
+        try (Connection conn = getDataSource().getConnection()) {
             try (final PreparedStatement statement = conn.prepareStatement(SELECT_WORLD)) {
                 statement.setInt(1, randomWorld());
                 try (ResultSet rs = statement.executeQuery()) {
@@ -64,14 +56,13 @@ public class TestController {
                 }
             }
         }
-        response.setHeader("Date", DateUtil.getTime());
-        response.sendJson(result);
+        webContext.response.addHeader("Date", DateUtil.getTime());
+        webContext.response.sendJson(result);
     }
 
-    @GET("/queries")
-    public void queries(HttpRequest request,HttpResponse response) throws Exception {
-        World[] result = new World[getQueries(request.query("queries"))];
-        try (Connection conn = dataSource.getConnection()) {
+    public static void queries(WebContext webContext) throws Exception {
+        World[] result = new World[getQueries(webContext.request.query("queries"))];
+        try (Connection conn = getDataSource().getConnection()) {
             for (int i = 0; i < result.length; i++) {
                 try (final PreparedStatement statement = conn.prepareStatement(SELECT_WORLD)) {
                     statement.setInt(1, randomWorld());
@@ -82,20 +73,19 @@ public class TestController {
                 }
             }
         }
-        response.setHeader("Date", DateUtil.getTime());
-        response.sendJson(result);
+        webContext.response.addHeader("Date", DateUtil.getTime());
+        webContext.response.sendJson(result);
     }
 
 
-    @GET("/updates")
-    public void updates(HttpRequest request,HttpResponse response) throws Exception {
-        World[] result = new World[getQueries(request.query("queries"))];
+    public static void updates(WebContext webContext) throws Exception {
+        World[] result = new World[getQueries(webContext.request.query("queries"))];
         StringJoiner updateSql = new StringJoiner(
                 ", ",
                 "UPDATE world SET randomNumber = temp.randomNumber FROM (VALUES ",
                 " ORDER BY 1) AS temp(id, randomNumber) WHERE temp.id = world.id");
 
-        try (Connection connection = dataSource.getConnection()) {
+        try (Connection connection = getDataSource().getConnection()) {
             try (PreparedStatement statement = connection.prepareStatement(SELECT_WORLD)) {
                 for (int i = 0; i < result.length; i++) {
                     statement.setInt(1, randomWorld());
@@ -117,14 +107,13 @@ public class TestController {
                 statement.executeUpdate();
             }
         }
-        response.setHeader("Date", DateUtil.getTime());
-        response.sendJson(result);
+        webContext.response.addHeader("Date", DateUtil.getTime());
+        webContext.response.sendJson(result);
     }
 
-    @GET("/fortunes")
-    public void fortunes(HttpResponse response) throws Exception {
+    public static void fortunes(WebContext webContext) throws Exception {
         List<Fortune> fortunes = new ArrayList<>();
-        try (Connection connection = dataSource.getConnection()) {
+        try (Connection connection = getDataSource().getConnection()) {
             try (PreparedStatement stt = connection.prepareStatement("select * from fortune")) {
                 try (ResultSet rs = stt.executeQuery()) {
                     while (rs.next()) {
@@ -135,9 +124,9 @@ public class TestController {
         }
         fortunes.add(new Fortune(0, "Additional fortune added at request time."));
         Collections.sort(fortunes);
-        response.setHeader("Date", DateUtil.getTime());
+        webContext.response.addHeader("Date", DateUtil.getTime());
         Map<String,Object> data=new HashMap<>();
         data.put("data",fortunes);
-        response.sendTemplate("fortunes.ftl",data);
+        webContext.response.sendTemplate("fortunes.ftl",data);
     }
 }

+ 1 - 1
frameworks/Java/hserver/src/main/java/com/test/hserver/db/DataSourceConfig.java

@@ -1,8 +1,8 @@
 package com.test.hserver.db;
 
+import cn.hserver.core.config.annotation.Configuration;
 import cn.hserver.core.ioc.annotation.Autowired;
 import cn.hserver.core.ioc.annotation.Bean;
-import cn.hserver.core.ioc.annotation.Configuration;
 import com.zaxxer.hikari.HikariDataSource;
 
 import javax.sql.DataSource;

+ 1 - 1
frameworks/Java/hserver/src/main/java/com/test/hserver/db/PostgresConfig.java

@@ -1,7 +1,7 @@
 package com.test.hserver.db;
 
 
-import cn.hserver.core.ioc.annotation.ConfigurationProperties;
+import cn.hserver.core.config.annotation.ConfigurationProperties;
 
 @ConfigurationProperties
 public class PostgresConfig {

+ 3 - 3
frameworks/Java/hserver/src/main/java/com/test/hserver/task/TimeAdd.java

@@ -1,10 +1,10 @@
 package com.test.hserver.task;
 
-import cn.hserver.core.ioc.annotation.Bean;
-import cn.hserver.core.ioc.annotation.Task;
+import cn.hserver.core.ioc.annotation.Component;
+import cn.hserver.core.scheduling.annotation.Task;
 import com.test.hserver.util.DateUtil;
 
-@Bean
+@Component
 public class TimeAdd {
 
     @Task(name = "时间计算", time = "1000")

+ 1 - 2
frameworks/Java/hserver/src/main/resources/app.properties

@@ -3,5 +3,4 @@ username= benchmarkdbuser
 password= benchmarkdbpass
 maximumPoolSize= 256
 
-log=info
-web.businessPool=-1
+log=info