标签: pojo

JSP bean 可以进行依赖注入吗?

这可能是一个长期问题..

我正在开发一个仅基于 JSP/Javascript 的应用程序(没有 Web 框架!)

有没有办法为 JSP bean 进行依赖注入?jsp beans 我的意思是像这样定义的bean

<jsp:useBean id="cart" scope="session" class="session.Carts" />
Run Code Online (Sandbox Code Playgroud)

有没有一种方法/库/黑客来拦截bean的创建,以便当第一次引用“cart”时,会发生一些注入?

我可以在某处为 JSP bean 定义一个“监听器”吗(例如,就像您可以为 JSF bean 所做的那样)?

我可以在后端自由地做任何我想做的事情,但我无法在前端添加 Web 框架(不要问!)

java jsp dependency-injection pojo

5
推荐指数
1
解决办法
2008
查看次数

Snakeyaml 将 yaml 转换为 pojo

我想从我的 yaml 文件中加载 POJO 列表。我可以使用蛇 yaml 来做到这一点吗?

我的 yaml 文件看起来像这样——

- pty1:val1
  pty2:val2

- pty1:val1
  pty2:val2
Run Code Online (Sandbox Code Playgroud)

还有我的 pojo -

class pojo {
  String pty1;
  String pty2;
}
Run Code Online (Sandbox Code Playgroud)

Snakeyaml 文档确实说要使用 loadAs() ,但这会加载单个元素。我可以使用自动类型绑定加载此类元素的列表吗?

谢谢!

java converter pojo snakeyaml

5
推荐指数
1
解决办法
6754
查看次数

使用条件动态排除Jackson json序列化中的POJO属性

我需要在已定义 POJO 的列表中动态排除某些属性。要序列化的主要 POJO 是:

public class Foo
{
    List<Bar> bar;

    public void setBar(List<Bar> bar)
    {
        this.bar = bar;
    }

    public List<Bar> getBar()
    {
        return this.bar;
    }

    public static class Bar
    {
        private int id;
        private boolean ignoreId;
        private String name;

        public void setId(int id)
        {
            this.id = id;
        }

        public int getId()
        {
            return this.id;
        }

        public void setIgnoreId(boolean ignoreId)
        {
            this.ignoreId = ignoreId;
        }

        public boolean isIgnoreId()
        {
            return this.ignoreId;
        }

        public void setName(String name)
        {
            this.name = …
Run Code Online (Sandbox Code Playgroud)

java serialization json pojo jackson

5
推荐指数
1
解决办法
1万
查看次数

将 JSON 改造为 POJO

我是 android 新手,我是 usig retrofit

问题是我无法POJO从请求中获得我的。

我的要求是:

@FormUrlEncoded
@POST("/index.php")
void login(@Field("io") String command,
           @Field("lu") String userName,
           @Field("lp") String password,
           @Field("lm") String imei,
           @Field("l") int language,
           RestCallback<ModelLoginResponse> callback);
Run Code Online (Sandbox Code Playgroud)

服务器 JSON 响应是:

  {
    "tk": "thdoz4hwer32",
    "pn": "1",
    "lc": {
        "1": "Opel Combo",
        "3": "VW Crafter",
        "7": "Opel Vivaro"
    },
    "stg": {
        "rs": "30",
        "sml": "http://exemple.mob.ru",
        "ssl": "index.php"
    }
}

where 1,3,7 are different every time
Run Code Online (Sandbox Code Playgroud)

和我的 POJO 课程:

 @Parcel
    public class ModelLoginResponse {

    @SerializedName("pn")
    private String personalNumber;

    @SerializedName("tk")
    private …
Run Code Online (Sandbox Code Playgroud)

rest android json pojo retrofit

5
推荐指数
1
解决办法
1618
查看次数

POJO 是反面向对象 (OO) 吗?

在大多数定义中,POJO(Plain Old Java Object)是具有属性和 getter/setter 的对象。有些人将这些命名为 DTO。所以基本上它们就是我喜欢称之为“数据类”的东西。无论名称是什么,我都知道有这些对象只有 getter/setter。这些通常用于开发多层 MVC Web 应用程序 - 这些对象将通过不同的层传递。

也许我的问题有点自以为是——但这是否是纯粹的面向对象编程?我决心找出这个问题的答案,即什么是对的,什么是错的?

...因为,我从小就了解到 OOP 就是通过交互将现实生活中的场景/情况建模为对象。对象本身封装了数据和作用于这些数据的行为。- 在我看来,只有 getter/setter 的对象不符合这个定义。

此外,数据类很糟糕(代码异味)——这就是我在大学里教过的。

java oop object pojo

5
推荐指数
1
解决办法
2332
查看次数

序列化逻辑应该在实体还是其他类中

对象序列化逻辑(字段到 XML 或 JSON 名称和值的映射)应该放在哪里?在每个实体对象内部或进入一组仅与序列化有关的不同类?与此问题相关的任何其他最佳实践?

例如:

class Person {
    String name;
}
Run Code Online (Sandbox Code Playgroud)

有些人是这样处理的:

class Person {
    String name;
    public String toJson () {
      // build JSON, use 'name' field
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,如果我们还需要 toXML()、toCSV()、toXYZ() 保持该方向将创建严重污染的代码并破坏单一职责原则,即使使用单个 toJson 方法,恕我直言,该原则已经被打破。

另一种选择,这就是我通常做的:

interface Serializer {  public String toJson (); }

class PersonJsonSerializer implements Serializer {
    private Person p;
    public PersonJsonSerializer (Person p) { this.person = p; }
    public String toJson () {
      // build JSON, use p.name
    }
}
Run Code Online (Sandbox Code Playgroud)

然后工厂根据实体类型分发序列化程序:

class JsonSerializerFactory {
    public Serializer …
Run Code Online (Sandbox Code Playgroud)

java serialization json design-patterns pojo

5
推荐指数
1
解决办法
1150
查看次数

如何在 maven 的 POM 中使用 jsonschema2pojo

我有一个 JSON 文件,我想将它转换为 POJO,为此我在 maven 中使用 org.jsonschema2pojo 插件。我无法生成结果 pojo。这是 pom.xml 中的片段

<build>
                <plugins>
                    <plugin>


                        <groupId>org.jsonschema2pojo</groupId>
                        <artifactId>jsonschema2pojo-maven-plugin</artifactId>
                        <version>0.4.23</version>
                        <configuration>
                            <sourceDirectory>${basedir}/src/main/resources/schema</sourceDirectory>
                            <targetPackage>${basedir}/src/main/resources/result</targetPackage>
                        </configuration>
                        <executions>
                            <execution>
                                <goals>
                                    <goal>generate</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
Run Code Online (Sandbox Code Playgroud)

我在 maven 中使用 generate source 目标。我的期望是它应该在 ${basedir}/src/main/resources/result 位置给我 pojo 文件。但是我越来越了。请帮帮我。谢谢,拉吉特

java pojo maven-plugin

5
推荐指数
2
解决办法
1万
查看次数

我已经从 h2o 下载了一个 pojo 并编译了它,但是我该如何使用它呢?

我正在使用以下示例代码下载我从这篇文章中找到的 pojo :

import h2o
 h2o.init()
 iris_df = h2o.import_file("https://s3.amazonaws.com/h2o-public-test-data/smalldata/iris/iris.csv")
 from h2o.estimators.glm import H2OGeneralizedLinearEstimator
 predictors = iris_df.columns[0:4]
 response_col = "C5"
 train,valid,test = iris_df.split_frame([.7,.15], seed =1234)
 glm_model = H2OGeneralizedLinearEstimator(family="multinomial")
 glm_model.train(predictors, response_col, training_frame = train, validation_frame = valid)
 h2o.download_pojo(glm_model, path = '/Users/your_user_name/Desktop/', get_jar = True)
Run Code Online (Sandbox Code Playgroud)

当我打开下载的 java 文件时,我得到了一些关于如何编译它的说明。以下编译成功:

javac -cp h2o-genmodel.jar -J-Xmx2g -J-XX:MaxPermSize=128m GLM_model_python_1488677745392_2.java
Run Code Online (Sandbox Code Playgroud)

现在,我不确定如何使用它。我尝试了以下方法:

java -cp h2o-genmodel.jar javac -cp h2o-genmodel.jar -J-Xmx2g -J-XX:MaxPermSize=128m GLM_model_python_1488677745392_2.java
Run Code Online (Sandbox Code Playgroud)

以下是pojo中的代码:

/*
  Licensed under the Apache License, Version 2.0
    http://www.apache.org/licenses/LICENSE-2.0.html

  AUTOGENERATED BY H2O at 2017-03-05T01:51:46.237Z
  3.10.3.2

  Standalone …
Run Code Online (Sandbox Code Playgroud)

python java pojo h2o

5
推荐指数
2
解决办法
2823
查看次数

是否可以在 Spring Boot 中实现一个具有表示复合主键的字段而不使用 JPA 或嵌套类的 POJO?

我目前正在尝试在 Spring Boot 中为已经处于开发阶段的应用程序实现 R2DBC - 不幸的是,这意味着我们的 DDL 不灵活,因为其他微服务依赖于此,反之亦然。R2DBC 的一个重要限制是不支持嵌套类。此外,它不支持 JPA,因为这会破坏全面非阻塞的目的。因此,所有这些有用的注释也不在表中。

我正在处理的类看起来像这样:

@Data
@AllArgsConstructor
@NoArgsConstructor
@ToString

public class Stats {
   @Id
   StatsPK statsPK

   @Column(stat_name)
   String stat;

   ...

    @Data
    @AllArgsConstructor
    @NoArgsConstructor
    @Embeddable
    public static class StatsPK implements Serializable {
        @Column("store_id")
        private Integer storeId;

        @Column("empl_id")
        private String emplId;

        @Column("app_version")
        private String appVersion;
    }
}
Run Code Online (Sandbox Code Playgroud)

在研究了我的问题后,我找到了很多方法来计算复合键,包括上面示例中已经显示的内容(使用 @Embeddable 注释),使用自定义 PK 对象(类似,但会有使用为此目的设计的类的选项,例如 CompositeKeyHolder)、JPA @TableId(TableId.class) 注释,以及其他一些似乎不太有希望的注释。

所有这些选项似乎都在使用 JPA 或使用嵌套对象,这是我做不到的。我真的想不出绕过这些限制的方法。但由于我是初学者,我决定询问是否有人以前处理过这个问题。感谢任何反馈。

pojo spring-data spring-data-jpa spring-data-r2dbc r2dbc

5
推荐指数
1
解决办法
1855
查看次数

Java OpenApi 生成器使用对象作为查询参数

我有以下控制器:

public interface GetScoreController {
  @GetMapping(value = "/score", produces = MediaType.APPLICATION_JSON_VALUE)
  @Operation(parameters = {@Parameter(in = ParameterIn.QUERY, name = "request")})
  Score getScore(ScoreRequest request);
}
Run Code Online (Sandbox Code Playgroud)

我希望 OpenApiScoreRequest在生成 Swagger 文档时将所有属性显示为查询参数,因为这是请求是 POJO 时的结果:

在此处输入图片说明

我不知道实际上 OpenApi 是否允许这样做,但是如果我有太多请求参数,将它们收集到一个独特的 POJO 中会更有用。

java spring pojo swagger openapi

5
推荐指数
1
解决办法
407
查看次数