草庐IT

Controller注解

全部标签

java - JPA+Hibernate+@Transactional注解的spring事务支持的奇怪行为

我在相对简单的用例上发现了非常奇怪的行为,可能因为对spring@Transactional性质的了解不深,我无法理解它,但这很有趣。我有一个简单的用户dao,它扩展了springJpaDaoSupport类并包含标准保存方法:@TransactionalpublicUsersave(Useruser){getJpaTemplate().persist(user);returnuser;}如果在我向同一个类添加新方法之前工作正常:UsergetSuperUser(),此方法应该返回isAdmin==true的用户,如果数据库中没有super用户,方法应该创建一个。这就是它的样子:pub

java - 我怎样才能写一个 Controller 而不把它变成上帝对象?

在我的应用程序中,我有一个由main方法启动的Controller。Controller初始化Hook、数据库连接、UI、另一个连接和其他东西。它拥有程序的大部分状态(不,它不是单例)。在另一个示例中,机器人有一个Controller来处理命令的解释和发送。两者都是相当大的文件。我已经阅读了有关上帝对象的资料,但我真的不知道有什么方法可以将其拆分。如果我将机器人中的解释器和调度器分开,它会产生一个可怕的调用链(类似于getBot().getParser().getOutput().sendMessage(recipient,message))。同样,在第一个Controller中,如果

java - JavaFX 中的 "automatic injection of location and resources properties into the controller"是什么?

在Initializable的描述中据说界面:NOTEThisinterfacehasbeensupersededbyautomaticinjectionoflocationandresourcespropertiesintothecontroller.FXMLLoaderwillnowautomaticallycallanysuitablyannotatedno-arginitialize()methoddefinedbythecontroller.Itisrecommendedthattheinjectionapproachbeusedwheneverpossible.问题是:如何

java - 为什么 checkNotNull() 没有注解 @Nonnull

我发现guava中的checkNotNull()前提条件没有用@Nonull注释标记,这很不方便。考虑以下示例:State(Setmodels,Setvariations){this.models=checkNotNull(models);this.variations=checkNotNull(variations);if(this.variations==null){thrownewIllegalArgumentException();}this.engine=createEngine();}因此IDE无法发现variations==null始终为false。是否有任何特殊原因导致

java - Spring,使用@Configuration 和@Bean 注解

我有一个代码:@ConfigurationpublicclassBeanSample{@Bean(destroyMethod="stop")publicSomeBeansomeBean()throwsException{returnnewSomeBean("somebeanname1");}classSomeBean{Stringname;publicSomeBean(Stringname){this.name=name;}publicvoidstop(){System.out.println("stop");}}publicstaticvoidmain(String[]args)th

java - hibernate validator 。如何使用@Valid 注解?

@Valid注解放在方法参数层的目的是什么?publicvoid(@ValidPersonp){...}我创建了一个测试,并向该方法传递了一个无效对象,但没有任何反应。我希望得到一个异常(exception)。 最佳答案 对象上的@Valid注释指示验证框架处理带注释的对象。当用于方法的参数时,这称为方法级别验证。请注意,方法级验证不是核心规范的一部分,实际上只有当BeanValidation集成到容器类型框架(JSF、CDI、JavaEE).当BeanValidation集成到这样的支持容器中时,会发生这样的情况,即在bean上调

java - Spring Data Mongo @Column 等效注解(@Property?)

是否有与JPA@Column注释等效的SpringDataMongo?基本上,我有一个POJO,它有一个属性,我想用不同的名称存储在Mongo中。因此,以下对象:publicclassPojo{@Property("bar")privateStringfoo="HelloWorld";}将被持久化为:{"_class":"com.example.Pojo","bar":"HelloWorld"}注意:我不想使用MappingMongoConverter明确地执行此操作 最佳答案 Spring数据referencedocumentat

java - Spring Autowiring 服务在我的 Controller 中不起作用

我在Controller中Autowiring服务时遇到了问题。我有这个错误:org.springframework.beans.factory.BeanCreationException:Errorcreatingbeanwithname'myController':Injectionofautowireddependenciesfailed;nestedexceptionisorg.springframework.beans.factory.BeanCreationException:Couldnotautowirefield:privatees.unican.meteo.serv

深入Java世界:注解的魔法与奥秘

哈喽,大家好,我是了不起。在Java编程中,注解(Annotation)是一种元程序中的元数据,它为代码提供了一种附加信息的方式。这些附加信息可以在编译时被编译器读取,或者在运行时被JVM或其他使用反射机制的代码读取。注解为框架设计、代码分析、编译检查等提供了强大的支持。注解的基础定义注解注解的定义使用@interface关键字,它看起来与接口定义相似,但不包含方法实现。例如:public@interfaceMyAnnotation{Stringvalue()default"";intnumber()default0;}在这个例子中,MyAnnotation是一个注解类型,它有两个属性:val

@InitBinder注解会用吗?该如何使用?

环境:SpringBoot2.7.161.简介@Controller 或 @ControllerAdvice 类可以使用 @InitBinder 注解标注方法来初始化 WebDataBinder 实例,WebDataBinder对象主要用来做数据绑定操作;具体使用了@InitBinder注解的方法可以做如下事情:将请求参数(即表单或查询数据)绑定到模型对象。将基于字符串的请求值(如请求参数、路径变量、头信息、cookie等)转换为控制器方法参数的目标类型。在呈现HTML表单时,将模型对象值格式化为字符串值。@InitBinder方法可以注册特定控制器的java.beans.PropertyEd