我需要迭代,并创建<span>针对每个元件component中components,其具有阵列name的'MATERIAL'
我的代码如下
<span th:each="component : ${body.components}"
th:object="${component}">
<button th:if="*{name} == 'MATERIAL'"
th:text="*{title}"></button>
</span>
Run Code Online (Sandbox Code Playgroud)
这段代码一切正常,直到它产生一组空<span>元素,如果name它不相等'MATERIAL'.我不希望这个空<span>元素被创建.
我也试过以下
<span th:each="component : ${body.components}"
th:object="${component}"
th:if="*{name} == 'MATERIAL'">
<button th:text="*{title}"></button>
</span>
Run Code Online (Sandbox Code Playgroud)
这导致空输出并且根本不打印任何内容.有人可以帮我这个.
我有来自CrudRepository的User Repository扩展,如下所示
public interface UserRepository extends CrudRepository<User, Long>, DatatablesCriteriasRepository<User>
Run Code Online (Sandbox Code Playgroud)
DatatablesCriteriasRepository 具有需要针对不同存储库单独实现的功能.
所以我创建了这样的存储库实现类.在impl包中.
public class UserRepositoryImpl implements DatatablesCriteriasRepository<User>
Run Code Online (Sandbox Code Playgroud)
请注意,这只是为了实现这些功能DatatablesCriteriasRepository.我不想覆盖CrudRepository框架中提供的默认功能.
但是,如果我做这样的事情,它将更适合代码设计,正如名称所暗示的UserRepositoryImpl实际实现UserRepository.
public class UserRepositoryImpl implements UserRepository
Run Code Online (Sandbox Code Playgroud)
但同样这将迫使我扩展UserRepository接口中的所有函数.如何通过良好的代码设计解决这个问题?
UserRepositoryImpl它实现时可以有这个名字DatatablesCriteriasRepository吗?
题
我需要根据idif ExamObjectis of对 ExamObjects 进行ExamTask排序,并根据questionNumberif it is 对其进行排序ExamQuestion。我怎样才能做到这一点?
重要的
考试将只有一组ExamTask或ExamQuestion。换句话说,一项考试不能混合使用 ExamTask 和 ExamQuestion。
背景资料
我有一个名为Exam此类的实体类可以包含一个或多个ExamObject实体。
@Entity
public class Exam {
@OneToMany(mappedBy = "exam" ...)
@OrderBy("id") //I need to order this by question number if its ExamQuestion
private Set<ExamObject> objects;
...
}
Run Code Online (Sandbox Code Playgroud)
ExamObject 可以是以下两种类型,使用 JOINED
ExamTask 延伸 ExamObject ExamQuestion它扩展ExamObject并有一个名为的列questionNumberExamObject
@Entity
@Inheritance(strategy = InheritanceType.JOINED)
public class ExamObject {
@Id …Run Code Online (Sandbox Code Playgroud) 我想查看天气validTill日期大于today使用JPQL.我知道我可以通过以下方式实现这一目标.
Query q = em.createQuery("select e from MyEntity e where e.validTill > :today ");
Run Code Online (Sandbox Code Playgroud)
并传递:today参数.但这不是我想要的.我想在Spring中使用@Query注释来做到这一点CrudRepository.
这是我的代码段 CrudRepository
@Query("SELECT e FROM MyEntity e WHERE e.validFrom < TODAY")
Iterable<MyEntity> findAllValid();
Run Code Online (Sandbox Code Playgroud)
我不知道应该把这个地方放到TODAY今天的日期.请帮我.
我在我的应用程序中编写了几个Aspects.所有其他人的工作除以下情况外.
服务接口
package com.enbiso.proj.estudo.system.service;
...
public interface MessageService {
...
Message reply(Message message);
Message send(Message message);
...
}
Run Code Online (Sandbox Code Playgroud)
服务实施
package com.enbiso.proj.estudo.system.service.impl;
....
@Service("messageService")
public class MessageServiceImpl implements MessageService {
...
@Override
public Message reply(Message message) {
...
return this.send(message);
}
@Override
public Message send(Message message) {
...
}
}
Run Code Online (Sandbox Code Playgroud)
方面
@Aspect
@Component
public class NewMessageAspect {
...
@AfterReturning(value = "execution(* com.enbiso.proj.estudo.system.service.impl.MessageServiceImpl.send(..))",
returning = "message")
public void perform(Message message){
...
}
}
Run Code Online (Sandbox Code Playgroud)
当我尝试执行该send方法时,调试点不会在方面受到影响perform.
UPDATE
我做了一些调查,发现当send从 …
背景
我有一个spring boot应用程序,该应用程序将logo.png文件添加到static资源文件的文件夹中,该文件最终内置到执行中使用的 jar 文件中。
这个 jar 应用程序需要在不同客户端的多个实例中运行。所以我所做的是创建一个外部application.properties文件来区分每个用户的设置。
http://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html
问题
但问题是,我需要更改应用程序每个实例的徽标。我无法将客户徽标嵌入到我的应用程序 jar 中。相反,我需要像我的 application.properties 一样将它保持在外部。
目前,我所做的是logo.png在jar执行的同一文件夹中检查文件,如果是,则读取文件,获取base64数据并将其显示在img标签中。
但我希望这作为静态内容以适当的方式完成。我需要将静态内容具体化。所以我可以让每个客户都有一个特定的 jar 实例,运行不同的静态资源内容
例如。我需要保留如下外部静态文件,并从我的视图中的 urlhref或srchtml 标签的属性进行访问。
概括
所需的文件夹结构
+ runtime
- myapp-0.1.0.jar
- application.properties
+ static
- logo.png
Run Code Online (Sandbox Code Playgroud)
应该可以访问
<img th:src="@{/logo.png}" />
Run Code Online (Sandbox Code Playgroud) 如何查找文本是否包含url字符串.我的意思是,如果我有
Sometexthttp://daasddas some text
Run Code Online (Sandbox Code Playgroud)
我希望将http:// daasddas作为javascript的链接进行处理或制作
我使用thymeleaf和spring,我的messages.properties文件需要具有与模板相同的名称,以便它们起作用。我试图使用webConfigurer.Java创建自定义路径,但是它不起作用。
WebConfigurer.java来源:
...
...
@EnableWebMvc
@EnableTransactionManagement
@Configuration
@ComponentScan({"en.irp.project.*"})
@PropertySource("classpath:/application.properties")
@Import({SecurityConfigurer.class})
public class WebConfigurer extends WebMvcConfigurerAdapter {
...
...
...
@Bean(name="messageSource")
public ReloadableResourceBundleMessageSource messageSource() {
ReloadableResourceBundleMessageSource resource = new ReloadableResourceBundleMessageSource();
resource.setBasename("WEB-INF/languages/messages");
resource.setDefaultEncoding("UTF-8");
return resource;
}
@Bean
public LocaleChangeInterceptor localeChangeInterceptor() {
LocaleChangeInterceptor localeChangeInterceptor = new LocaleChangeInterceptor();
localeChangeInterceptor.setParamName("language");
return localeChangeInterceptor;
}
@Bean(name = "localeResolver")
public SessionLocaleResolver localeResolver() {
SessionLocaleResolver localeResolver = new SessionLocaleResolver();
localeResolver.setDefaultLocale(new Locale("en"));
return localeResolver;
}
...
...
}
Run Code Online (Sandbox Code Playgroud) 简而言之
我正在尝试在 thymleaf 中创建一个用于分页的标签。
详细
我已经在 jsp 中有一个例子。但我被困在中间。我不知道如何在thymleaf.
我用谷歌搜索了一下,但结果非常令人困惑。
示例jsp:
<%@tag description="Extended input tag to allow for sophisticated errors" pageEncoding="UTF-8" %>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@tag import="net.megalytics.util.Href" %>
<%@attribute name="currentPage" required="true" type="java.lang.Integer" %>
<%@attribute name="totalPages" required="true" type="java.lang.Integer" %>
<%@attribute name="totalItems" required="true" type="java.lang.Long" %>
<%
if (totalPages > 1) {
String currentUrl = request.getAttribute("javax.servlet.forward.request_uri").toString();
String queryString = "";
if (request.getQueryString() != null)
queryString = request.getQueryString();
Href newUrl = new Href(currentUrl + "?" + queryString);
newUrl.addParameter("page", String.valueOf(currentPage));
String url = …Run Code Online (Sandbox Code Playgroud) java ×7
spring ×7
spring-boot ×4
thymeleaf ×4
spring-data ×3
spring-mvc ×2
hibernate ×1
javascript ×1
jpa ×1
jpql ×1
jsp ×1
spring-aop ×1